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

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

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

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

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

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

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

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

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

相关推荐
巷9552 分钟前
OpenCV图像形态学:原理、操作与应用详解
人工智能·opencv·计算机视觉
遇到困难睡大觉哈哈4 分钟前
Git推送错误解决方案:`rejected -> master (fetch first)`
大数据·git·elasticsearch
Roam-G13 分钟前
Elasticsearch 证书问题解决
大数据·elasticsearch·jenkins
深蓝易网31 分钟前
为什么制造企业需要用MES管理系统升级改造车间
大数据·运维·人工智能·制造·devops
带娃的IT创业者34 分钟前
《Python实战进阶》No39:模型部署——TensorFlow Serving 与 ONNX
pytorch·python·tensorflow·持续部署
xiangzhihong839 分钟前
Amodal3R ,南洋理工推出的 3D 生成模型
人工智能·深度学习·计算机视觉
Bruce-li__41 分钟前
深入理解Python asyncio:从入门到实战,掌握异步编程精髓
网络·数据库·python
九月镇灵将1 小时前
6.git项目实现变更拉取与上传
git·python·scrapy·scrapyd·gitpython·gerapy
车载小杜1 小时前
基于指针的线程池
开发语言·c++
狂奔solar1 小时前
diffusion-vas 提升遮挡区域的分割精度
人工智能·深度学习