畅谈自然语言处理——初识NLP技术

news2024/11/16 18:28:24

畅谈自然语言处理——初识NLP

文章目录

  • 畅谈自然语言处理——初识NLP
    • 一、引言
    • 二、NLP技术的定义分类
    • 三、三个发展阶段
      • 1、基于规则的算法
      • 2、基于统计的NLP算法
      • 3、基于深度学习的NLP算法
    • 结语

一、引言

最近,一个名为ChatGPT的模型将计算机领域震撼,它以对话的方式进行交互,对话形式使 ChatGPT 能够回答后续问题、承认错误、挑战不正确的前提并拒绝不适当的请求。使人们感受到了人工智能越来越接近人类智能。

作为目前人工智能领域最前沿的研究成果之一,

ChatGPT的实现与自然语言处理—NLP技术息息相关。

二、NLP技术的定义分类

自然语言处理(Natural Language Processing)简称NLP,是人工智能的一个重要领域,NLP技术通过让计算机模拟人类语言的交际过程,使计算机理解和运用人类社会的各种语言,实现人机间的自然语言交流,从而代替人的部分脑力劳动,包括:查阅资料、解答问题、翻译等

我们使用自然语言时,需要经过哪些步骤呢?

很明显是先听,再理解,之后思考,最后说这四个步骤。计算机进行自然语言处理时也遵循这四个步骤。

按着四个步骤分为四种技术,分别为语音识别、自然语言理解、自然语言生成和语言合成。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tDWM4QVq-1682319045069)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230424144633914.png)]

其中自然语言理解和自然语言生成是NLP技术中最核心、最热门也是最复杂和最有趣的技术研究方向。

三、三个发展阶段

说完了NLP技术的定义与分类

接下来我们聊一聊NLP算法的三个发展阶段

在NLP发展初期,计算机的运算速度很慢,科学家们只能通过总结规律来判断自然语言的意图,用预先准备好的知识来实现自然自然语言理解。因此出现了专家系统等基于规则的NLP算法

1、基于规则的算法

在NLP发展初期,计算机的运算速度很慢,科学家们只能通过总结规律来判断自然语言的意图,用预先准备好的知识来实现自然自然语言理解。

最初的智能语音遥控系统结构长这样
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-F2otpDkq-1682319045070)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230424144706550.png)]

当用户对智能助手说出:好热啊,能帮我打开空调吗?

那么满足了起始词、命令和结束词后就会执行相应的程序来帮用户打开空调啦。

但如果句子很长的话,构建的语法树就会很大,很复杂。且用规则处理法在多义性很难处理,因为多义词严重依赖上下文语境。但科学家们很快就解决了这个难题,在1970年以后统计语言学家的出现使得NLP重获新生

2、基于统计的NLP算法

基于统计的NLP算法是一种以基于语料库的统计分析为基础的经验主义方法。曾广泛应用于翻译、语音识别、智能客服、专家系统中。

基于统计的NLP最初是为了解决语言识别问题,常见的语言识别流程很简单,从声音到句子,一般有五个步骤

1、把音波数据分成帧

2、把帧识别成状态

3、把状态组合成音素

4、把音素转换成字

5、把字组合成句子

有了音素如何拼出合理的句子呢?如“WO3ZAI4SHANG4HAI3”是表示“我在上海”呢?还是“我载尚海”呢?
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-19lz5xFL-1682319045071)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230424144803124.png)]

判断一个句子是否合理,就要通过一系列算法,例如

马尔科夫算法来判断这个句子在人类正常语言中出现的概率

设S为句子,句子是由汉字组成的,所以我们用
w 1 , w 2 , … , w n w_1,w_2,\dots,w_n w1,w2,,wn
表示有序的汉字列表。“我在上海”就可以表示为
w 1 = 我 , w 2 = 在 , w 3 = 上 , w 4 = 海 w_1=我,w_2=在,w_3=上,w_4=海 w1=,w2=,w3=,w4=
我们用P()表示概率,设“我在上海”为S,那么P(S)就是这句话在人类对话中可能出现的概率。

随后把P(S)中的每个字按照概率论公式进行展开,

(读作:“在S的条件下w1的概率”乘以“在w1的条件下w2的概率”…)
P ( S ) = P ( w 1 ∣ < S > ) ⋅ P ( w 2 ∣ w 1 ) ⋅ P ( w 3 ∣ w 1 , w 2 ) ⋅ ⋅ ⋅ ⋅ P ( w n ∣ w 1 , w 2 , … , w n − 1 ) P(S) = P(w_1|<S>)·P(w_2|w_1)·P(w_3|w_1,w_2)····P(w_n|w_1,w_2,\dots,w_{n-1}) P(S)=P(w1<S>)P(w2w1)P(w3w1,w2)⋅⋅⋅⋅P(wnw1,w2,,wn1)
S这个句子出现的概率等于每一个字出现的条件概率的乘积。

以“我在上海”为例,我们可以列出下面的公式:
P ( S ) = P ( w 1 ∣ < S > ) ⋅ P ( w 2 ∣ w 1 ) ⋅ P ( w 3 ∣ w 1 , w 2 ) ⋅ P ( w 4 ∣ w 1 , w 2 , w 3 ) P(S) = P(w_1|<S>)·P(w_2|w_1)·P(w_3|w_1,w_2)·P(w_4|w_1,w_2,w_3) P(S)=P(w1<S>)P(w2w1)P(w3w1,w2)P(w4w1,w2,w3)

其中P(w1|<S>)是第一个字“我”出现在句首的概率。

P(w2|w1)是已知第一个字是“我”的前提下,第二个字“在”出现的概率

同理P(w3|w1,w2)是已知第一个字是“我”,且第二个字是“在”的前提下,第三个字“上”出现的概率。

为了解决计算概率时指数爆炸的难题,马尔科夫算法将

上述式子简化为二元模型
P ( S ) = P ( w 1 ∣ < S > ) ⋅ P ( w 2 ∣ w 1 ) ⋅ P ( w 3 ∣ w 2 ) ⋅ P ( w 4 ∣ w 3 ) P(S) = P(w_1|<S>)·P(w_2|w_1)·P(w_3|w_2)·P(w_4|w_3) P(S)=P(w1<S>)P(w2w1)P(w3w2)P(w4w3)
化成——》
P ( w n ∣ w n − 1 ) = P ( w n − 1 , w n ) P ( w n − 1 ) P(w_n|w_{n-1}) = \frac{P(w_{n-1},w_n)}{P(w_{n-1})} P(wnwn1)=P(wn1)P(wn1,wn)
所以只要求出
P ( w n ∣ w n − 1 , w i ) 和 P ( w n − 1 ) ,即可求出 P ( w n ∣ w n − 1 ) 了 P(w_n|w_{n-1},w_i)和P(w_{n-1}),即可求出P(w_n|w_{n-1})了 P(wnwn1,wi)P(wn1),即可求出P(wnwn1)
但这时需要借助语料库了,语料库的大小和能力成正相关(数据量和复杂度图)

假设语料库有2000亿条内容,

“我在”于语料库中出现了1000万次,那么
P ( w 1 ∣ w 2 ) = 1000 万 2000 亿 = 0.00005 P(w_1|w_2)=\frac{1000万}{2000亿}=0.00005 P(w1w2)=2000亿1000=0.00005
就是1000万除以2000亿,等于0.00005

P ( w n − 1 ) = 2 亿 2000 亿 = 0.00001 P(w_{n-1})=\frac{2亿}{2000亿}=0.00001 P(wn1)=2000亿2亿=0.00001
“我”于语料库出现了2亿次,那么P(wn-1)就是2亿除以2000亿,等于0.001

因此可以求得

‘我在’出现的条件下‘我’出现的概率为
P ( w n ∣ w n − 1 ) = P ( w n − 1 , w n ) P ( w n − 1 ) = 0.00005 0.001 = 0.05 P(w_n|w_{n-1}) = \frac{P(w_{n-1},w_n)}{P(w_{n-1})}= \frac{0.00005}{0.001}= 0.05 P(wnwn1)=P(wn1)P(wn1,wn)=0.0010.00005=0.05
以此类推,最后选取组合概率最高的词,计算概率后,“我在上海”比“我载尚海”的可能性更高。由此就可以准确地识别语音啦。

但这个算法也存在这问题,即数据稀疏问题。由于语料库不能覆盖所有词语,在计算时会出现大多数的数值缺失,数据越稀疏结果越不准确。为了解决这个问题,在2003年研究者尝试用神经网络来研究语言模型。

3、基于深度学习的NLP算法

伴随着计算处理能力的提升,深度学习有了较快的发展。

在2003年这个想法被提出后,2011年罗南·科洛伯特等人用一个简单的深度学习模型在命名实体识别(NER)、**词性标注(POS tagging)**等NLP任务中取得SOTA(技术发展最新水平)成绩(画:No.1)
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NafKyqwR-1682319045071)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230424144836440.png)]

2013年,以Word2vec为代表的词向量模型开始普及,此外基于深度学习的研究经历了CNN、RNN、Transformer等特征提取器。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-YAPPevcW-1682319045072)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230424144855437.png)]

2019年至2020年,谷歌公司的BERT模型、OpenAI的GPT-3模型在很多指标上超越了人类。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kMd73gqF-1682319045072)(C:\Users\Administrator\AppData\Roaming\Typora\typora-user-images\image-20230424144916725.png)]

2023年3月14日基于GPT-4的Chat-GPT的回答准确性不仅大幅提高,还具备更高水平的识图能力,且能够生成歌词创意文本实现风格变化

深度学习经过几十年的发展,深度学习的成功秘诀有以下三点

(1)海量数据(big data)

(2)深度神经网络模型

(3)大规模并行计算

Chat-GPT离不开这三个要素,当然也离不开科研人员的辛勤付出。

结语

我还为大家准备了相关习题和资料以便课后学习,谢谢大家。

http://nlp.aitianhai.top/#/Nlp

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/455969.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux系统之部署webmin开源管理工具

Linux系统之部署webmin开源管理工具 一、webmin简介1.webmin简介2.webmin特点 二、本地环境介绍1.本次实践目的2.本地环境规划 三、检查本地环境1.检查操作系统版本2.检查系统内核版本 四、配置webmin的yum仓库1.编辑webmin.repo仓库文件2.查看yum仓库状态 五、部署webmin1.添加…

在docker安装Python环境提供给其他docker使用

1. 在宿主机新建一个目录2. 在app目录下新建一个Dockerfile文件本文永久更新地址: 1. 在宿主机新建一个目录 在宿主机上新建一个目录如app/&#xff0c;在app目录里面导入项目需要依赖的包 在项目根目录下输入命令&#xff0c;导出python项目所有的依赖包 pip freeze > r…

(二十二)查找算法-斐波那契算法

1 基本介绍 &#xff08;1&#xff09;黄金分割点是指一条线段分割为两部分&#xff0c;使其中一部分与全长之比等于另一部分与这部分之比。取其前三位数字的近似值是0.618.由于按此比例设计的造型十分美丽&#xff0c;因此称为黄金分割&#xff0c;也称为中外比。这是一个神奇…

Android Fragment懒加载机制分析与详解

一、介绍 Fragment是Android3.0以后引进&#xff0c;称为碎片。它与Activity非常相似&#xff0c;用一个Activity中描述一些行为或者一部分用户界面&#xff0c;使用多个Fragment可以在一个单独的Activity中建立多个UI面板&#xff0c;也可以在多个Activity中使用Fragment。 Fr…

Linux I/O复用函数的使用情况和select接口的介绍

I/O 复用使得程序能同时监听多个文件描述符&#xff0c;这对于提高程序的性能至关重要。通常&#xff0c; 网络程序在下列情况下需要使用 I/O 复用技术&#xff1a; 1.TCP服务器同时要处理监听套接字和连接套接字 2.服务器同时要处理TCP请求和UDP请求。 3.程序同时要处理多个套…

档案库房温湿度管理暂行规定

档案馆温湿度管理暂行规定 来源&#xff1a;本站 日期&#xff1a;2021-8-27 浏览量&#xff1a;1067 档案馆温湿度管理暂行规定 (1985年11月23日国家档案局 国档发〔1985〕42号通知印发) 档案馆是永久保管档案的基地&#xff0c;档案馆建筑是档案馆工作的基础…

用Flutter你得了解的七个问题

Flutter是Google推出的一款用于构建高性能、高保真度移动应用程序、Web和桌面应用程序的开源UI工具包。Flutter使用自己的渲染引擎绘制UI&#xff0c;为用户提供更快的性能和更好的体验。 Flutter使用Dart语言&#xff0c;具有强大的类型、效率和易学能力&#xff0c;基本上你…

前端实战(三):element-ui开关组件的二次封装

目录 二次封装 Switch 开关 原始效果 设计效果 实现步骤 在日常开发过程中&#xff0c;大多数项目主要以 vue 为主&#xff0c;并且现在很多公司仍在使用着 vue。但在使用element-ui组件时通常会遇到一些问题&#xff1a;如组件样式与设计不符合、组件不存在某个功能等等&a…

5年测试经验,自动化都不会?月薪11K都难拿....

我接触了太多测试同行&#xff0c;由于多数同行之前一直做手工测试&#xff0c;现在很迫切希望做自动化测试&#xff0c;其中不乏工作5年以上的同行。 我从事软件自动化测试已经近十年&#xff0c;接触过底层服务端、API 、Web、APP、H5 等等&#xff0c;对自动化算是比较了解…

Spring种存取Bean的5种注解

存取Bean的五种注解 存储Bean对象两种方式1.添加一行bean2.使用注解的方式(5大注解)Controller(控制器存储)Service(服务存储)Repository(仓库存储)Component(组件存储)Configuration(配置存储)方法注解 Bean 获取Bean对象(三种)1.属性注入2.setter注入3.构造方法注入三种注入的…

自动驾驶TPM技术杂谈 ———— CCRT验收标准(测试项目)

文章目录 试验项目行车辅助跟车能力测试方法前车静止识别与响应前车低速识别与响应前车减速识别与响应前车切入识别与响应前车切出识别与响应跟随前车启停 单车道组合控制能力测试方法车道居中保持交通拥堵辅助高速驾驶辅助 换道辅助能力测试方法无干扰车换道有干扰车换道 泊车…

《面试1v1》java泛型

我是 javapub&#xff0c;一名 Markdown 程序员从&#x1f468;‍&#x1f4bb;&#xff0c;八股文种子选手。 面试官&#xff1a;小伙子,说实话,泛型这个机制一开始我也是一头雾水,搞不太明白它到底要解决什么问题。你能不能不那么书呆子,给我普普通通地讲一讲泛型? 候选人…

真正的进步,是创业者和员工的共同进步

再伟大的事业&#xff0c;也是由人一点一滴创造出来的。 人&#xff0c;是企业中最基础的存在&#xff0c;下层基础决定上层建筑&#xff0c;管理公司企业&#xff0c;也是人与人之间的交流问题。 创业十余年&#xff0c;与市场打交道&#xff0c;也与人打交道。 对外&#x…

ArduPilot Kakute F7 AIO DIYF450 之GPS配置

ArduPilot Kakute F7 AIO DIYF450 之GPS配置 1. 源由2. 步骤2.1 模块预测试2.2 物理连接2.3 UART配置2.4 Compass使能2.5 GPS使能2.6 校准Compass 3. GPS & Compass配置效果3.1 Mission Planner界面3.2 QGroundControl界面3.3 ArduPilot配置修改 4. 参考资料 1. 源由 之前…

选址-路径问题(Location-Routing Problem, LRP)

今天为大家介绍的是选址-路径问题(Location-Routing Problem, LRP)&#xff0c;首先上目录 目录 问题简介 基础模型、扩展问题及应用 算法 参考文献 1 问题简介 为了更好地了解这个问题&#xff0c;我们不妨当一波老板。 想象一下我们是经营一家口罩生产企业的老板&am…

RocketMQ基本概念

RocketMQ 一 引言 Message Queue&#xff08;消息 队列&#xff09;&#xff0c;从字⾯上理解&#xff1a;⾸先它是⼀个队列。先进先出的数据结构——队列。消息队列就是所谓的存放消息的队列。 消息队列解决的不是存放消息的队列的⽬的&#xff0c;解决的是通信问题&#x…

C语言实现顺序表--数据结构

魔王的介绍&#xff1a;&#x1f636;‍&#x1f32b;️一名双非本科大一小白。魔王的目标&#xff1a;&#x1f92f;努力赶上周围卷王的脚步。魔王的主页&#xff1a;&#x1f525;&#x1f525;&#x1f525;大魔王.&#x1f525;&#x1f525;&#x1f525; ❤️‍&#x1…

项目管理中引入PMO的应用研究——以H研究所为例

摘 要 本文从项目管理办公室&#xff08;PMO&#xff09;的基本内涵出发&#xff0c;探讨了PMO在以“项目”为主要工作组织方式的H研究所应用过程中发挥的作用、具有的优势、取得的成效与存在的不足&#xff0c;从而实现为企业培养专业的项目经理团队&#xff0c;为业务部门定…

Ubuntu20.04安装CUDA和CUDNN

CUDA是GPU深度学习的运行库&#xff0c;那么cuDNN就是训练加速工具&#xff0c;两者要相互配合使用&#xff0c;所以一般机器学习需要训练引擎(tensorflow-gpu) CUDA cuDNN使用。想不安装cuDNN是不可以的&#xff0c;而且cuDNN版本要和CUDA版本相互搭配。 1、前置工作 查看…

最新动态 | 大势智慧参加广东省应急测绘保障与安全生产演练

4月20日&#xff0c;2023年度广东省应急测绘保障与安全生产演练在台山市赤溪镇鱼塘湾举行。本次演练由广东自然资源厅主办&#xff0c;广东省国土资源测绘院、江门市自然资源局和台山市人民政府承办。在省市各指导单位与参演单位的多方协同与指挥下&#xff0c;应急测绘保障与安…