目录
1. 序言
电视新闻中,地铁的视频里,报道了小学生用人工智能编程来解决生活中的问题。比如,有一位小学生做的人工智能程序,能够根据用户喊出的垃圾名字实现垃圾分类。这个例子涉及语音识别,就我所知,当前的自然语言处理,已引入了深度学习技术。
深度学习,这个近几年出现的热门概念,到底是什么意思?我上网查了一下,发现不同的人有不同的解释。有些人把深度学习跟机器学习对立起来,有些人认为深度学习是机器学习的一部分。总之,深度学习属于人工智能的范畴,试图让计算机像一个学生一样不断学习,但开发者又不会事先告诉计算机所学内容的内在规律和特征,一切都要让计算机自己习得。
各种媒体展示了深度学习在很多领域的神奇应用,让深度学习这个火热的概念蒙上了一层神秘的面纱。而我想要做的,却是揭开它那神秘的面纱,看看它的本质到底是什么。于是,我想起了我对瑶文双音节词发现算法的初步探索。
2. 瑶文双音节词发现算法初探
瑶族是我国的少数民族,历史悠久,文化璀璨。瑶族内部包含多种语言,其中大部分人说的瑶话,在语言学上被称为勉语,新中国成立后创立了用拉丁字母拼写的文字。但是,关于瑶文的信息化处理技术,从未见诸报道。
为了整理瑶语勉话词汇,尝试设计算法,从瑶文文章中发现词语。目前只探索双音节词的发现算法。
例如,某篇文章包含以下语句:
Mv gunv meih yiem Zong Guoqv hac se nyiec guoqv, mbuo duqv se muoz doic.(无论你在中国还是外国,我们都是兄弟。)
采用词袋模型,提取2元组(2-gram)。计算每组的词频(在整篇文章中出现的次数)和互信息(表征组内2个音节的关联程度),作为输入参数;标记该组是不是词,作为输出参数。如下表:
2元组 | 是不是词 |
---|---|
mv gunv | 是 |
gunv meih | 否 |
meih yiem | 否 |
yiem Zong | 否 |
Zong Guoqv | 是 |
Guoqv hac | 否 |
hac se | 是 |
se nyiec | 否 |
nyiec guoqv | 是 |
mbuo duqv | 否 |
duqv se | 是 |
se muoz | 否 |
muoz doic | 是 |
全文统计,用KNN训练,结果,正确分类率并不高,提取出来的双音节词很少。
优化算法,进一步考虑互斥关系。考虑到3元组(3-gram)中,前2个音节和后2个音节不可能都是词,于是列出下表:
3元组 | 词判定 |
---|---|
mv gunv meih | 前2个音节 |
gunv meih yiem | 无 |
meih yiem Zong | 无 |
yiem Zong Guoqv | 后2个音节 |
Zong Guoqv hac | 前2个音节 |
Guoqv hac se | 后2个音节 |
hac se nyiec | 前2个音节 |
se nyiec guoqv | 后2个音节 |
mbuo duqv se | 后2个音节 |
duqv se muoz | 前2个音节 |
se muoz doic | 后2个音节 |
将前2个音节的词频、互信息和后2个音节的词频、互信息看作平面上点的坐标,连线后形成向量,作为输入参数;词判定结果作为输出参数。对全文做这样的计算和标识,导入KNN训练,结果,分类准确率达到了约70%。如果去掉大量存在的不能组成双音节词的情形,再用KNN训练,分类准确率可达到90%以上。
看起来是个较好的结果,然而,提取出来的双音节词只占文章中实际存在的双音节词总数的1/3左右,不能满足实用需求。
3. 深度学习的打开方式
没有使用瑶话自身的语法特征,只输入瑶文文本,试图让计算机通过训练模型发现其中的双音节词,也算是我对深度学习的初步尝试了。然而效果并不理想,并没有深度学习教程里的示例达到的拟合、分类、预测98%乃至99%的准确率。
深度学习那么神奇,为什么对于这种具体问题效果不好呢?肯定是我的程序有问题,或者深度学习本身就不靠谱。这样的结论,足以让一些掌握一技之长的人高兴。某公司展示深度学习机器翻译,结果被曝光后台有人工干预,于是精通外语的人抓住这个把柄,认为机器翻译是假的。有人展示了深度学习创作的乐曲,马上就有从事音乐行业的人跳出来说,机器写的曲子还没他写得好。那些掌握一技之长的人,一定要想方设法证明深度学习无论如何也无法超越他们日复一日、年复一年练就的技能,不希望智能的机器抢了他们的饭碗。具有一技之长,就不会依赖深度学习,而是利用机器为自己服务,当然,这就是另外一方面的好事了。
的确,深度学习存在它的局限性。举个更浅显的例子,人工智能绘画看起来不得了,但用户如果输入的是自己或者身边某个人的姓名,人工智能一定画不出来。
那么深度学习应该如何打开呢?我认为,在学术上和工程上有不同的做法。学术上,要针对具体问题研究算法并不断优化,把研究成果发表为优质的论文;工程上,要整合资源,重点是通过一些管理手段收集和整理数据。毕竟,深度学习由于缺乏具体事物的特征信息,往往要求GPU有很大的算力,这就需要人力、物力、财力的投入,而像我这样的粗浅尝试,当然是不行的。
通过我对瑶文的初步研究,我认为,实际上深度学习这个新兴的概念,囊括了许多基础的技术。人类文明几千年的积累,是它的基础;人们利用发展了半个多世纪的计算机,提出了深度学习的概念,高度整合了千百年来积累的数据和研究出来的算法。所以,立足传统,夯实基础,常常温故知新,这才是深度学习的正确打开方式。毕竟,这种新的东西,实质上还是基于旧事物发展起来的。这正应了古人所谓的“日下无有新事”,用瑶话说就是:
Yiem lungh ndiev maiv maaih haaix nyungc siang.
4. 简短的结论
深度学习是近几年发展出的新概念,当下非常火热。本文,结合对瑶文双音节词发现算法的初步探索,揭开深度学习的神秘面纱。当我们把不带事物特征的大数据喂给具备强大算力的计算机时,一定要用人类的意愿操纵机器。人类文明源远流长,只有立足传统,夯实基础,常常温故知新,才能驾驭深度学习。
附
已用人工方式收集整理了瑶语勉话词汇,共计2846词,可用于针对瑶文的深度学习算法研究。