数据科学家:为什么还要学藏语?这不科学。
亲,结论别下得这么早。
这是一个杠精式的对话。
藏语应当从西藏讲起,西藏是全世界人民群众最喜欢的文化边区之一。
仓央嘉措曾说,住进布达拉宫,我是雪域最大的王。流浪在拉萨街头,我是世间最美的情郎。
郑钧曾说,在雅鲁藏布江把我的心洗清,在雪山之颠把我的魂唤醒,爬过了唐古拉山遇见了雪莲花。
西藏不仅有莽莽的雪峰,宁静的雪顶,雄浑的庙宇,瘦瘠的土地与牛羊,虔诚的朝圣者,也是人类学的宝库。
藏文有超过1300年的历史,不仅在汉藏语系诸语中,而且也在中国各族文字中,藏文的历史长度、文献丰富程度都仅次于汉文。中国的三大藏区:卫藏、康巴和安多,东接汉地九州,便分别对应了藏语中的三种方言。藏文主要分为楷体和形体两种文字,独特的书写方式和构造赋予其极致的美感。
然而,有些数据科学家会认为这些都是人文科学的内容,我们不需要。因为数据科学家,我们不一样。
我们来看看几段日常的抱怨:
考虑要不要去Fintech公司的机器学习工程师说:“我是工科生,我学不了金融那套东西。”
数据科学家:还要学藏语?这不科学。
先别着急下结论,场景和数据都来了。
中央民族大学有群懂数据的学生手写了一万多张藏文数字, 通过这些图片,我们可以做出一个能识别手写藏文数字的模型。如果没有猜错的话,这是第一个带有中华民族文化色彩的MNIST数据集。
对于很多计算机视觉方向的学习者,MNIST数据集可能是第一个认识的数据集。我们还都记得,MNIST数据集来自美国国家标准与技术研究所,由纽约大学的Yann LeCun教授主导建立自建立以来,它便被广泛应用于检验各种机器学习算法、测试各种模型。
MNIST数据集在深度学习中的地位非常的高,是很多人上手实训的第一个数据集。而这个藏文数字数据集被命名为——TibetanMNIST,含有17768张(350*350)藏文手写体数据图像,是250位志愿者经过手写的数字,这些“亲手写的数据”一共70000张数字图像构成了这个入门级的计算机视觉数据集。我们可以称之为,藏族文化第一MNIST数据集。
藏族文化第一MNIST数据集核心参与者讲述了“灵感”的来源:“在一次科研部门的会议上,我无意间看到了一位藏族伙伴的笔记本上写着一些奇特的符号,好奇心驱使我去了解这些符号的意义,我的伙伴告诉我,这些是藏文当中的数字,这对于从小使用阿拉伯数字的我十分惊讶,这些奇特的符号竟有如此特殊的含义!我当即产生了一个想法,能不能让计算机也能识别这些数字呢?这个想法得到了大家的一致认可,于是我们开始模仿MNIST来制作这些数据,由于对藏文的不熟悉,一开始的工作十分艰难,直到取得了藏学研究院同学的帮助,才使得制作工作顺利完成。经过反复地商议,我们决定将其完全开源,供所有的开发者自由使用,使其能发挥最大的价值。为了方便大家使用,我们将数据制作成了TFRecords以及npz文件格式,而且文件顺序未打乱,使其便于读取,能很好地配合现有机器学习框架使用,当然,如果作为使用者的你觉得它还可以做的更好,也可以自行DIY,我们将分割后的原始图像也上传到了科赛平台上,可以将其做成喜欢的任何数据格式,并创建各种有趣的项目。我和我的团队衷心地希望你能在使用它的过程获得乐趣。”
我们再来强调一遍:汉藏两个民族,将近15人的团队,历时时间1个月之久,超过300次的反复筛选,最终出品17768张(350*350)藏文手写体数字图像,完全开源。
好的,我们是不是已经成功了,藏族文化第一MNIST数据集诞生了。
稍等。
虽然稳坐藏族文化第一MNIST数据集的宝座,但是这个数据集在一开始设计的时候就存在对藏语文化背景和应用场景理解的先天不足。
如果能够训练出藏文数字识别的算法,是否能够设计出这样一款产品:快速识别藏族壁画、藏文雕刻、藏文天文、地理书籍中的藏文数字?而藏文数字数据集TibetanMNIST对使用场景还没有考虑的很清楚。所以目前仅可以用作学习用途。如果对数据集的用途仔细思考,未来能够从藏文数字扩展到藏文,将会对研究藏民族独特的文化景观有所用处。
我们看看技术大神怎么说?
微软亚研院“城市计算”领域负责人郑宇曾说过:需要全盘考虑的不只是数据,还有场景里的知识,只有理解了场景才能设计出合理的数据模型。你会发现在大数据时代我们真的不再缺数据了,缺的是我们的思维不够开放,思考问题A的时候不要一直看问题A的数据,其实会发现问题B和C的数据都可以拿来用,而且这个数据完全不是你领域的数据,只有你对这个问题理解深刻以后才能把别的数据背后的知识拿过来融合。
有些数据科学家说,会建模就可以,为啥做项目要学藏语啊?
老数据科学家锊着胡子说:因为需要借助场景知识才能设计合理的数据模型。
虽然不够完美,但是用于学习目的,这个数据集还是很有用武之地的。
实战篇:
以下是数据集使用示例:
那么如何识别这些数字呢?在官方项目中,我们基于Keras,尝试了两种模型来进行TibentanMNIST的图像分类。第一种是全连接神经网络,模型训练时间在2分钟以内;第二种是卷积神经网络,模型的训练时间在20分钟以内。
直接Fork在K-Lab上运行,也不用担心会等很久哦。
1.全连接神经网络
基于Keras,我们构建了一个由4个全连接隐藏层构成,包含1818个神经元节点的的BP网络。当epochs设置为30时,模型准确率达到82.06%,当epochs设置为40时,模型准确率提升到了85.83%,且loss值也从2.16降低到了1.60。
但是,全连接神经网络的能力有限,不适合做图像识别任务,无法得到很深的全连接神经网络。
我们开始进行卷积神经网络的模型训练。
2.卷积神经网络
我们构建了一个简单的卷积神经网络(CNN)模型,模型每层都应用了BatchNormalization来提高模型训练学习的效率,最后使用Adam来进行模型优化。在经过5次训练后模型损失值降低到了0.08,准确率达到了97.55%。
代码如下图所示:
想要提升准确率,还可以尝试数据增量(data augmentation),或者模型集成(ensembling)等,这些就等读者们来探索啦。
科赛项目经理戴程认为:“一群中央民族大学的小伙伴,历时一个月手写了17768个0-10的藏文手写数字。数据内容和传统的MNIST一致。每个示例都是350x350灰度图像,清晰度提升了100倍。而MNIST作为一个被“嚼烂”了的数据集,清晰度不足,年代久远。手写藏文数据集则提供给数据科学家更多的学习选择,同时它也是国产原创数据集,可以弘扬我们博大精深的民族文化,科赛想邀请大家一起让更多的学习者看到这份优质的数据集。”
最后,感谢数据集的原创生产者:袁明奇、才让先木、汤吉安等来自中央民族大学创业团队。同时也感谢科赛网提供的平台,为数据的维护和推广提供了极大的便利,能让更多人看到藏文数字和原创数据的美。(完)
亲爱的数据
出品:谭婧
美编:陈泓宇