学AI之路,从探索特征出发

  作者:高焕堂 时间:2019-10-29来源:电子产品世界

  高焕堂 (台湾VR产业联盟主席,厦门VR/AR协会荣誉会长兼顾问)

  摘 要:AI机器学习的基础活动之一就是提取特征。本文通过举例和比喻来领悟特征的含义,以及理解特征提取的方法和目的。而且,从人为的特征提取,开始思考由AI机器自动提取特征的途径,迈向深度学习之路。

  1 从认识特征出发

  1.1 以狗和兔子为例

  据说古代有一位小公主(例如大清时代的格格),常常到荒郊野外去玩,携带一只狗去出行。为什么她要携带狗呢? 因为狗儿天生就最熟悉兔子的特征,而且兔子的特征也最吸引狗儿们,所以狗儿喜欢又擅长于探索(抓)兔子了。因此,很快就能带回几只兔子。

  话说有一天,小公主(格格)也想要几只老鼠,她就携带着猫出行。因为猫儿天生就最熟悉老鼠的特征,包括老鼠的味道、长相、习性等。所以猫儿喜欢又擅长于探索(抓)老鼠。因此,也很快就带回几只老鼠。

  所以,聪明的格格会借助于熟悉兔子特征的狗儿去探索荒郊野外的兔子;也懂得借助于熟悉老鼠特征的猫儿去探索荒郊野外的老鼠。

  1.2 以公主和帅哥为例

  于此,兹拿“小公主(格格)找心仪的帅哥”来做比喻。现在,有一位小公主想要交男友、谈恋爱了。小公主出去走走,惊动帅哥们,或请人介绍一些帅哥们。

  于是,小公主就来识别一下他们的人品、财富、学问等特征(Feature)。在小公主的心中,对于人品、财富、学问等自有她的衡量权重(Weight)的。然后,小公主将其心中的评比结果告诉了妈妈。小公主也依据一样的评比模式,来评比每一位帅哥。此时,精明的妈妈可能会提出她的看法来教女儿,眼睛要雪亮一些。甚至,妈妈觉得这样似乎还不放心,就派两位丫鬟去帮忙识别一番。

  刚才的丫鬟们是经过学习,而学会帮忙去衡量帅哥们的各种特征值(如人品、财富、学问等),再告诉小公主,然后告诉了妈妈。到了今天,AI(人工智能)日益普及了,也可以通过机器学习(ML)来训练AI的丫鬟们,甚至训练AI的格格,来帮人类格格更精确地衡量帅哥们的特征值。

  2 特征范例1:玩具兔和玩具熊

  我喜欢电视剧里的格格的气质,所以就拿格格与玩具来做比喻。例如,这格格有4只玩具兔和玩具熊 [1]

  所谓特征就是某种事物的特色,让人们(或其他生物)很容易凭它区分出来。例如,兔子的特征就是:耳朵长长的、身体轻盈短小。而熊的特征则是:耳朵短短的、身体有些笨重。

  由于这位格格身边有两位丫鬟,格格就请丫鬟A去量一下这些玩具的耳朵长度,就可以得到“耳朵”特征值了。格格也请丫鬟B去量量这些玩具的体重,就可以得到“体重”特征值了(如图1)。

微信截图_20191111140417.png

  3 特征范例2:阿拉伯数字“2”和“7”

  此范例摘自《不编程,而学AI:Excel+TensorFlow》 [1] 。其中,有2个阿拉伯数字的字型,其可分解为3个笔画的组成元素:X0、X1和X3。我们可以按如图2来提取其特征值。

微信截图_20191111140444.png

  此时格格找来3位丫鬟,并交待如图3。

微信截图_20191111140510.png

  于是,得到全部字型的特征值了,如图3。

微信截图_20191111140529.png

  4 特征范例3:局部感受野

  刚才的两个范例,其感受野(Receptive field)都是整张图片。在本范例里,则把它缩小一半(如图4)。

微信截图_20191111140821.png

  此时,格格对身旁的两位丫鬟交代如图5。

微信截图_20191111140846.png

  于是,针对第1个字型,丫鬟A在上半部发现了横线笔画,所以得到特征值是1;同时也在下半部发现了横线笔画,所以得到特征值是1。丫鬟B在上半部发现了(反)斜线笔画,所以得到特征值是1。同时,也在下半部发现了斜线笔画,所以得到特征值是1。然后,把两人提取的特征值,排成一列(Flatten),如图6。

微信截图_20191111140909.png

  接下来,继续去测量第2个字型,提取了它的特征值。这时候,针对第2个字型,丫鬟A在上半部发现了横线笔画,所以得到特征值是1;但在下半部没有发现到横线笔画,所以得到特征值是0。

  丫鬟B在上半部发现了(正)斜线笔画,所以得到特征值是1。同时,也在下半部发现了斜线笔画,所以得到特征值是1。所以得到特征值是1。然后,把两人提取的特征值,排成一列(Flatten),就得到全部字型的特征值了,如图7。

微信截图_20191111140945.png

  5 特征范例4:阿拉伯数字“0”~“9”

  于此,基于刚才范例3的特征提取模式,把原来的两个字型,扩大为“0”~“3”共4个字型,如图8。

微信截图_20191111141005.png

  此时,仍然由3位丫鬟分工去提取特征,如图9。

微信截图_20191111141022.png

  于是,针对第1个字型,丫鬟A在上半部没有发现横线笔画,所以得到特征值是0;但在下半部则发现了横线笔画,所以得到特征值是1。丫鬟B在上半部没有发现正斜线笔画,所以得到特征值是0。但是在下半部发现了正斜线笔画,所以得到特征值是1。丫鬟C在上半部没有发现反斜线笔画,所以得到特征值是0。但是在下半部发现了反斜线笔画,所以得到特征值是1。然后,把3人提取的特征值,排成一列(Flatten),如图10。

微信截图_20191111141040.png

  依序下去,就可以得到全部字型的特征值了,如图11。

微信截图_20191111141059.png

  然后,继续加以扩大为“0”~“9”共10个字型,如图12。

微信截图_20191111141117.png

  此时就可以得到全部字型的特征值了,如图13。

微信截图_20191111141136.png

  6 结束语

  在以上的范例里,是由人类(3位丫鬟们)去提取玩具或字型的特征值。这些丫鬟们愈有经验、或愈训练有素时,其提取特征的准确性会愈高。如果我们也能训练AI机器来代替这些丫鬟,以便由AI机器来自动提取特征,那将是一件美好的事。这意味着,得到一个新观念:AI的丫鬟们是可以训练的,只要训练AI去认识小小的特征,则一群AI的丫鬟将可以代替人类去复杂的情境(街景照片)中寻找特征值。

  参考文献

  [1] 高焕堂.不编程,而学AI:Excel+TensorFlow.台湾:广悦文化事业有限公司,2018.

  本文来源于科技期刊《电子产品世界》2019年第11期第81页,欢迎您写论文时引用,并注明出处。

关键词: 201911 AI 机器学习 提取特征

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章


用户评论

请文明上网,做现代文明人
验证码:
查看电脑版