由字符集的转换想到的问题
今天用java做字符集的转换时,突然对人工智能有一些感悟,先记录下来。本人是一个地地道道的软件工程师,不是做人工智能的工程人员,观点未必正确,如有错误,请各位看客不用理睬。
假设有A和B两个字符集,并且A和B互相不兼容,那么当我在A字符集下输入了一个字符X,现在要转换为B字符集下的Y,唯一的办法就是定义A字符集下的X跟B字符集下的Y的对应关系。
现在思考以下几个问题:
1.图片识别
想象一个场景,有一张图片(图片中只有中国汉字),现在需要将这张图片中的文字提取出来(现在很多社交软件都提供了这个功能,如微信和QQ等)。大体上来说,只要我们保存了某个文字的图片和这个文字的对应关系,那下次遇到这个文字的图片就可以使用这个对应关系,将图片转换为文字了。当然现实的情况不知道比这个复杂多少倍,特别是一个文字可以对应特别特别多的图片。但总体来说,我们无非是要找到一种数学模型,可以将多个输入聚合为单个的输出而已。
2.人脸识别
想象一个场景,火车站进站时的电子安检。当我们站在电子安检仪器前时,安检仪扫描我们的面部,并且读取我们放在安检仪上的身份证的电子卡中的信息。如果安检系统中保存了我的人脸对应的身份证号,那这里就可以进行对比了,并且可以知道是不是本人在使用身份证。也就是说安检系统中必须保存有我的人脸信息对应的身份证号,如果没有这样的对应关系,那就无法对比。现在的问题是,如何找到这个对应关系,特别是人脸的数据太过庞大。
3.语音识别
想象一个场景,我们手机上有一个App,该App的功能是录制我们的语音,然后将该语音转化为文字,显示到屏幕上。需要什么样的方法我们的语音才能转化为文字呢?假设全中国14亿人每个人都说"中国"两个字,然后有一个库保存了我们14亿个人的"中国"的语音,那下次某个人说了"中国"两个字的语音,现在只要将这两个字的语音对比,就会得到语音对应的汉字为"中国"。当然这只是其中的一种处理方式,这种处理方式可不可行那就是另一个问题了。这里至少可以说明,我们要找的是一种能将多个输入聚合为一个输出函数(或者说是数学模型)。
总结:
现在看来人工智能在处理以上三个问题时,主要的任务在于能否找到一个函数(数学模型),该函数(数学模型)的主要作用就是将输入的信息对应到某个输出。
版权声明:本文为youjile原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。