上回我们说到,目前,基于达到学习目的的方式的不同,可将机器学习算法分为:监督学习、无监督学习、强化学习。而承载这些算法的载体,是人工神经网络。
我们所要实现的“AlphaCoin”,是这样的:
今天我们来介绍下应用最广泛的机器学习算法,监督学习。
监督学习,是学习将输入映射到基于示例输入-输出对的输出的函数的机器学习任务。它从训练数据中学习或创建函数,并据此推测新的实例。这些训练数据是由一系列训练实例组成的。在监督学习中,每个实例包含输入物件(通常是向量)及其相对应的预期输出值。函数的输出可以是一个连续的值,或是预测一个分类标签。
监督学习算法在分析训练数据后创建函数,该函数可以用于映射更多的实例。最佳方案将允许算法精确地测算未见示例的类标签。这需要算法以合理的方式从训练数据推广到未见的情况。
如下图所示是一个监督学习的例子:
在本例中,所要实现的是图像识别。训练数据为一系列带标记的图片,由这些有标记的数据训练出函数模型。之后向该函数输入未出现在训练数据中、但与训练数据相似的图片,则可输出图片所代表的含义。
解决监督学习的问题,有如下几个步骤:首先确定训练实例的类型,其次收集训练集,接着确定学习函数的输入特征表示,随后确定学习函数的结构及相应的学习算法,然后完成设计,最后评估学习函数的准确性。
一开始,用户需要决定将何种类型的数据作为训练集。例如,在笔迹识别的例子中,训练集究竟是用单个手写字符,还是整个手写单词,亦或是整行手写文字。
训练集应是该函数实际应用中的典型代表。因此,可由人类专家或机器测量中得到一系列输入物件及对应输出。
学习函数的准确性很大程度上取决于输入物件的表示方式。通常,输入物件被转换成一个特征向量,包含了所描述的对象的很多特征。由于维度灾难的存在,这些特征的数量不能太大,但需要包含足够的信息以精确预测输出。
学习函数的结构与算法有多种多样。例如,工程师们可以选择BP算法、支持向量机、决策树等。
在收集的训练集上运行学习算法。有些监督学习算法要求用户确定某些控制参数。可以通过优化训练集的子集上的性能或是通过交叉验证来调整这些参数。
在参数调整及学习之后,函数的性能需要在与训练集相独立的测试集中进行测量。有多种监督学习算法可供选择,每种算法都兼具了优点与缺点。没有一种算法能在所有监督学习问题中都表现完美。
好的,监督学习就给大家介绍到这里,咱们下节见。
早赞声明:为方便早赞、避免乱赞,“BH好文好报群”为点赞者、写作者牵线搭桥,实行“先审后赞、定时发表”的规则,也让作品脱颖而出、速登热门!加群微信:we01230123(天平)。
网友评论