【Python机器学习】NLP理论概述

和计算机编程语言不通,自然语言并不会被翻译成一组有限的数学运算集合。用编程语言编写的计算机程序会清楚地告诉计算机做什么,而对于英语、法语等这样的自然语言,并没有所谓的编译器或者解释器将他们翻译成机器指令。

自然语言处理(NLP)是计算机科学和人工智能(AI)的一个研究领域,它关注自然语言的处理,这种处理通常包括将自然语言转换成计算机能够用于理解这个世界的数据。同时,这种对世界的理解有时被用于生成能够体现这种理解的自然语言文本(即自然语言生成)。

自然语言处理系统通常被称为"流水线",这是因为该系统往往包括多个处理环节,其中自然语言从"流水线"的一端输出,处理后的结果从另一端输出。

python从一开始就被设计成一种可读的语言,也公开了很多其内部的语言处理机制,这两个特点使Python称为学习自然语言处理的一个很自然的选择。在企业级环境下为NLP算法构建可维护的生产流水线时,Python也是一种很棒的语言。在某些可能的地方,Python是代替数字和数学符号的"通用语言"。毕竟Python可以无歧义的描述数学算法,使其尽可能地具备可读性。

自然语言并不能直接被翻译成一组精确的数学运算集合,但是它们确实包含可供提取的信息和指令。这些信息和指令可以被存储、索引、搜索或立即使用。使用方式之一可能是生成一段词语序列对某条语句进行回复。这属于"对话引擎"或者聊天机器人的功能。

从自然语言中提取有用的信息是一件比较困难的事情,这需要巨量的统计记录,但这正是机器的作用。依靠一些技术,构建一些机器学习的模型,也可以执行一些令人惊讶的精细任务,甚至在精度和速度上都超过了人类。当时由于人类有能力保留对话的上下文信息,因此仍然更善于识别连续对话中的部分信息。当然,机器也越来越善于保留上下文。

一旦从自然语言中提取出结构化的数值型数据------向量之后,就可以利用各种数学工具和机器学习工具。我们可以类似于将三维物体投影到二维计算机屏幕的线性代数方法,这些方法很早就被使用了。这些突破性的想法开启了一个"语义"分析的世界,即让计算机能够解释和存储语句的"含义",而不仅仅是对其中的词和字符计数。语义分析和统计学一起有助于解决自然语言的歧义性,这里的歧义性是指词语或短语通常具有多重含义或解释。

因此,从自然语言文本中提起信息和构建编程语言的编译器完全不同。此外,自然语言还有一个更难解决的所谓"解码"挑战。关于人类如何处理语言的思维理论后来被证实是一个强有力的假设。如果我们假设人类的语言"处理器"拥有人类一生关于世界的常识,我们就能用很少的话表达很多信息。这种信息压缩率仍非机器的能力可及。在NLP刘淑贤中也没有明确的"思维理论"可以参照。

相关推荐
点云SLAM2 小时前
二叉树算法详解和C++代码示例
数据结构·c++·算法·红黑树·二叉树算法
charley.layabox5 小时前
8月1日ChinaJoy酒会 | 游戏出海高端私享局 | 平台 × 发行 × 投资 × 研发精英畅饮畅聊
人工智能·游戏
Sylvia-girl5 小时前
Java——抽象类
java·开发语言
TDengine (老段)5 小时前
TDengine 使用最佳实践(2)
大数据·数据库·物联网·时序数据库·iot·tdengine·涛思数据
DFRobot智位机器人6 小时前
AIOT开发选型:行空板 K10 与 M10 适用场景与选型深度解析
人工智能
Deng9452013146 小时前
基于大数据的电力系统故障诊断技术研究
大数据·matplotlib·深度特征提取·随机森林分类算法·标签编码
Yana.nice7 小时前
Bash函数详解
开发语言·chrome·bash
想成为风筝8 小时前
从零开始学习深度学习—水果分类之PyQt5App
人工智能·深度学习·计算机视觉·pyqt
F_D_Z8 小时前
MMaDA:多模态大型扩散语言模型
人工智能·语言模型·自然语言处理
江沉晚呤时8 小时前
在 C# 中调用 Python 脚本:实现跨语言功能集成
python·microsoft·c#·.net·.netcore·.net core