利用Python进行应用文本分析:从基础到实践
1. 自然语言处理的现状与挑战
在当今数字化时代,数字助理、机器翻译、问答系统等自然语言处理应用日益普及。这些应用不仅能传递信息,还能在一定程度上理解信息,极大地促进了人类的交互。然而,尽管普通美国高中生能掌握约60,000个单词和数千个语法概念,但仅靠这些规则和定义进行文本分析是远远不够的。例如,Siri和Alexa并不能完美理解我们的话语,谷歌搜索也不能仅返回少量精准结果。
自然语言与形式语言不同,它由使用来定义,需要进行反向工程才能进行计算。其具有以下特点:
- 社区和区域约束 :语言的含义通常受社区和区域的限制,人们在相似的生活经历中更容易达成意义的共识。
- 通用和冗余性 :自然语言是通用的,同一个词可用于不同的语境。为了涵盖各种表达,语言具有冗余性,这导致每个符号默认具有歧义性。
1.1 语言数据:标记和单词
文本分析的基本单位是标记(token),它是代表文本的编码字节串;而单词(word)是具有意义的符号,将文本或语音结构映射到声音和视觉组件。例如,标记 “crab” 代表名词的第一个定义,即一种可食用的、生活在海洋附近且有钳子的甲壳类动物。
自然语言是动态的,会随着人类经验的变化而迅速演变。新符号、结构、定义、上下文和用法的加入都会改变语言的含义。例如,“battery” 一词在电子时代的含义发生了转变,它现在主要指将化学能转化为电能的储存器。因此,识别和理解单词的含义需要比简单查字典更多的计算。
1.2 计算挑战
自然语言的冗余性和
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



