《人工智能Mix+》专栏系列文章
人类在开始掌握语言之前,就已经知道利用声音高低强弱来表达感情和自己的观点。当一个群体里有人去世时,群体的其他成员就会用低沉的呜咽声来表达对死者的哀悼和纪念。后来,人类懂得了劳动,还发明了用来统一劳动节奏的号子和相互间交流和传递信息的呼喊……
人类语言具有信息功能和社会功能。据估计,人类语言只有大约5000年的短暂历史。语言是人类变得强大的主要原因,而写作是另一件让人类变得强大的事情。语言使得知识能够在空间上传送到世界各地,并在时间上一代代传递的一种媒介。
但是,对比当今互联网的传播速度而言,人类语言显得缓慢(数据>语言)。然而,只需人类语言的少量信息,就可以表达整个视觉场景。这就是自然语言如此迷人的原因(言简意赅、信息量)。
How do we represent the meaning of a word?
在计算机科学中,理解meaning最普遍的一种方式是:
signifier (symbol) ⟺ signified (idea or thing)
= denotational semantics (指称语义)
在计算机科学中,指称语义(英语:Denotational semantics)是通过构造表达其语义的或意义的数学对象来形式化计算机系统的语义的一种方法。
计算机科学对语言研究(包括对自然语言和对人工语言)大致三个向:语法syntax、语义semantics、语用pragmatics
*语法研究语言的形态结构
*语义研究语言与其所指代对象的联系
*语用研究语言和其使用者之间的联系(从使用者角度、按使用者的需求对语料进行差异化)
KnowYourNyms 一种用于学习语义关系的web网络游戏
http://www.know-your-nyms.com
https://github.com/rossmechanic/know_your_nyms/
在为用户提供有吸引力体验的同时,应用程序可以收集大量可用于改进语义关系分类器的数据。数据还很有广度地告诉我们人们如何察觉词之间的关系,为心理学和语言学研究提供有用的见解。
一个一个问题的询问用户,用户做填空题,最后会把所用用户回答这个问题的答案统计结果呈现出来。
这个系统的架构如下所示:
WordNet, 一个包含同义词(synonym)和上位词(hypernyms,“is a”关系) 的字典。
WordNet的不足之处:
*忽略了细微差别
例如“proficient”被列为“good”的同义词。这只在某些上下文中是正确的
*难以持续更新
例如 wicked, badass, nifty, wizard, genius, ninja, bombest
*主观的,需要人类手工来创造和调整
*无法计算单词相似度
Representing words as discrete symbols
单词可以通过one-hot vectors来表示。one-hot vectors 又称独热编码、一位有效编码。其方法是使用N位状态寄存器来对N个状态进行编码,每个状态都有它独立的寄存器位,并且在任意时候,其中只有一位有效。
简单来说,只有一个1,其余均为0的稀疏向量,例如:
motel = [0 0 0 0 0 0 0 0 0 0 1 0 0 0 0]
hotel = [0 0 0 0 0 0 0 1 0 0 0 0 0 0 0]
向量维度=词汇量(如500000)
特点是所有向量是正交的,没有关于相似性的概念,并且向量维度很容易过大。
第一性原理最早来自于古希腊哲学家亚里士多德,他说:“在每个系统探索中存在第一性原理。第一性原理是基本的命题和假设,不能被省略和删除,也不能被违反。”
Distributional semantics :一个单词的意思是由经常出现在它附近的单词给出的。
构建方法:
banking这个单词的含义由窗口中的其他单词来共同表达。
我们为每个单词构建一个 密集 的向量,使其与出现在相似上下文中的单词向量相似。词向量(word vectors)有时被称为词嵌入(word embeddings)或词表示(word representations),它们是分布式表示(distributed representation)。
例如:
banking = [ 0.286 0.792 −0.177 −0.107 0.109 −0.542 0.349 0.271 ]
计算过程如下:
*我们有大量的文本 (corpus means 'body' in Latin. 复数为corpora)
*固定词汇表中的每个单词都由一个向量表示
详情可以了解论文:Word2vec (Mikolov et al. 2013)
- 掌握gensim的word2vec
指称语义:语言发展的一种方法论
Denotational Semantics: A Methodology for Language Development
https://t.zsxq.com/Y3BmEAQ
机器学习:数据预处理之独热编码(One-Hot)
https://imooc.com/article/35900
KnowYourNyms? A Game of Semantic Relationships
https://t.zsxq.com/EiMn276
Word2vec (Mikolov et al. 2013)
https://arxiv.org/pdf/1301.3781.pdf