高焕堂
0前言
人类学习任何知识的过程中,多多少少都会依赖天生的记忆(memorization)能力。也就是俗称的背诵能力。机器学习(ML)也是一样,首先具有背诵的能力,进而举一反三,对一些新事物进行预测和推论。这种举一反三的能力,在AI中称为泛化(generalization)能力。于是,本期先来看一下机器学习中的记忆(背诵)技能;下一期(《电子产品世界》2022年第1期)继续说明泛化机能。
1复习:五行的相生与相克关系
回忆一下,上一期(《电子产品世界》2021年11期)曾经介绍了五行之间有“相生”关系,也有“相克”关系。
于是,在机器学习模型中,五行中的各元素有如下对应关系:
金---->[10000]木---->[01000]
水---->[00100]火---->[00010]
土---->[00001]
由于每一个编码中都含有1个1,其他都为0,所以称为one-hot-encoding编码;简称OHE编码。
2范例:把五行的相生关系记忆(背)起来
由于刚才提到的OHE编码中各有5个值,例如:金([10000])与水([00100])之间具有相生关系。于是,各准备5个神经元来表示它们,如图3、图4。
然后建立两组神经元之间的连结(connection),并且赋予1个权重(值),如图4所示。这样就准备好了1个简单的神经网络(neural network)结构,就能让它来学习并记忆(背)五行元素之间的相生或相克关系。
接下来,就展开机器学习,来记住金([10000])与水([00100])之间的相生关系。于是权重(值)就会发生变化,如图5所示。
图5中的线条宽度表示权重(值)的大小。这样就记住了金与水之间的相生关系了。那么,这个神经网络继续学习更多相生关系,例如学习并记住水与木之间的相关系,如图6所示。
继续努力学习,这个神经网络就记住了5个元素之间的所有“相生”关系了,如图7、图8所示。
于是,图7中的神经网络就记住了图8中的五行相生关系了。
3范例:背诵之后,随时可以“想起来”
一旦记住了五行元素之间的相生关系,就能随时运用这项记忆了,只要提到金,就立刻联想到:金生水,如图9所示。
再如,只要提到土,就立刻联想到:土生金,如图10所示。
以上说明了机器学习如何展现其记忆的技能。就如同人的背诵能力一般,可以记住许多事物的关系。通过回忆,我们常常看到或听到:“太极生两仪,两仪生四象,四象生八卦。”这里的“生”是这些词汇的主要关系。同样,机器学习也能迅速记住它们之间的关系。
4实践AI的学习和记忆:使用TensorFlow建模框架
现在,将五行的相生关系的数据放在Excel画面上,如图11所示。
其中的输入值(X[])与对应的目标值(T[])之间是相生关系。这个X[]和T[]就是AI模型的学习数据,又称为训练数据(training data)。接着,请按下“学习”按钮,就开始学习了,很快学习完毕,且记住了这些元素之间的相生关系。前面已经说明,AI模型使用权重(weight)来表达这些关系。从画面上,可以看到模型训练之后的权重,如图12所示。
这里的权重(值)等于图7中连线的粗细程度,也就是代表神经元之间的连结强度。这样,AI模型就记住了五行元素之间的相生关系。接下来,将这个Excel画面上的相生关系改为相克关系,并按下“学习”按钮,开始学习。学习完毕输出权重,如图13所示。
同样的学习和记忆方法,它通过两组权重数据就能记住两种不同的关系。以此类推,AI模型可以和人们一样学习和记忆各式各样的事物、概念,以及它们之间的关联性。也可以继续学习更多的知识和智能,形成1个知识体系,例如俗称的知识图谱等。
一旦记住了五行元素之间的相生关系,就能随时运用这项记忆,只要提到金,就立刻联想到:金生水;也会联想到:金克木,如图14所示。
当按下“回答”按钮时,AI模型就依据其记忆(通过权重)得出其连结强度,如图14,如果问它:金的相生与相克的元素为何?它就会取出记忆中的权重计算得出:相生[0.1,0.1,0.4,0.1,0.1],其最接近于[0,0,1,0,0],意味着:金生水。而且还计算出:相克[0.1,0.4,0.1,0.1,0.1],其最接近于[0,1,0,0,0],意味着:金克木。同样,在图14中,AI模型也回答了:火生土和火克金。
5结束语
学习和记憶是AI机器学习的基础技能。当它搭配分类(classification)技能,就可以对未曾见过的事物进行归类而举一反三,对新事物进行预测。这就是俗称泛化的能力。下一期(注:《电子产品世界》2022年第1期),将会继续说明。