【Python机器学习】NLP概述——词序和语法

词的顺序很重要,那些在词序列(如句子)中控制词序的规则被称为语言的语法(也被称为文法)。这是之前的词袋或词向量例子中所丢弃的信息。在大多数简短的短语甚至许多完整的句子中,上述词向量近似方法都可以奏效。如果只是想对一个短句的一般意义和情感进行编码的话,那么词序并不十分重要。看一下一个短句的所有词序结果:

python 复制代码
from itertools import permutations

#原句:Good morning Tom
print(list(" ".join(combo) for combo in permutations("Good morning Tim!".split(),3)))

可以看到,3个单词就可以组成6种不同顺序的句子。

现在,如果试图孤立的解释这些字符串中的每一个,那么可能会得出轮,即这些字符串可能都有相似的意图或含义。

我们再用一个更长、更复杂的短语来尝试一下,这是一条逻辑语句,其中词的顺序非常重要:

python 复制代码
s="""
Find textbooks with titles containing 'NLP',
or 'natural' and 'language', or
'computational' and 'linguistics'.
"""
print(len(s.split()))
print(np.arange(1,12+1).prod())

可以看到,当有14个单词,不同的排列方式会有479001600种。很明显,词序所包含的逻辑对任何希望正确回复的机器来说都很重要。尽管普通的问候语通常不会因为词袋处理而造成混淆,但如果把更复杂的语句放入词袋,就会丢失大部分意思。就像自然语言查询一样,词袋并不是处理数据库查询的最佳方式。

无论语句是用形式化的编程语言(比如SQL)编写的,还是用非形式化的自然语言(如英文)编写的,当语句要表达事物之间的逻辑关系时,词序和语法都非常重要。这就是计算机语言依赖严格的语法和句法规则分析器的原因。幸运的是,自然语言句法树分析器取得了一些最新进展,使得从自然语言中提取出语法和逻辑关系变得可能,并且可以达到显著的准确率(90%以上)。

就像上面有关的问候语的case一样,即使一条语句的逻辑解释并不依赖词序,有时关注词序也可以得到一些十分微妙的相关意义的暗示,这些意义可以辅助更深层次的回复。

相关推荐
码上解惑4 小时前
从模型接入到应用运行:智能体开发平台的整体架构设计
人工智能·agent·智能体·spring ai
湘美书院--湘美谈教育4 小时前
湘美谈教育湘美书院大湘西文学系列:AI时代的武侠小说怎么写
大数据·人工智能·深度学习·机器学习·生活
Geoking.4 小时前
JSON vs JSONL:从数据格式到 AI Agent 的工程实践
人工智能·深度学习·json
饼干哥哥4 小时前
腾讯会议出AI同传了?这下跨境人开会不用担心哑巴英语了
人工智能·性能优化·腾讯
亲爱的译官.4 小时前
实测|告别手持翻译设备,AR眼镜能否解决跨语言沟通痛点?
人工智能·ar·亲爱的翻译官·翻译设备
Nturmoils5 小时前
把工具变成可发现能力:鸿蒙端动态能力注册表实践
人工智能
ZGIS智博创享5 小时前
矿产数智化专题连载③ | 深挖AI智能找矿内核:以传统成矿理论为根基,算法赋能隐伏矿体突破
人工智能·知识图谱·ai算法·ai找矿·地质找矿逻辑
xd1855785555 小时前
[特殊字符] 宠物美容指南 —— 鸿蒙AI智能助手开发全流程解析
人工智能·华为·harmonyos·鸿蒙·宠物
名不经传的养虾人5 小时前
从0到1:企业级AI项目迭代日记 Vol.71|系统显示正常,但实际上什么都没发生
数据库·人工智能·ai编程·ai工作流·企业ai
Urbano5 小时前
卫衣全工序自动化智造科普:替代工位、设备选型与产能升级方案
大数据·人工智能·自动化