2.6 监督参数学习
简化描述:使用旋钮进行试错学习
监督参数学习机是一台具有固定数量的旋钮(参数)的机器,通过转动旋钮进行学习。机器根据旋钮的角度对输入数据进行处理,并转换为预测结果。
这种机器学习是通过拨动旋钮到不同的刻度来完成的。如果想预测一只股票下月上涨超过15%的概率。那么这个模型就首先需要一些已知数据(比如发布业绩公告的内容中的特征词,或者公司发布定向增发的公告,重大事项等)基于这些数据挖掘做出预测(比如上涨概率57%)。接下来,模型将观察公司股票是否是真的上涨了。当知道真的上涨了之后,机器学习算法会更新这些按钮,以便下次看到同样或者类似的输入数据时,做出更准确的预测。
如果定向增发是一个很好的预测依据,也许它会调高“定向增发”对应的旋钮。相反,如果发布的是公司的规章制度之类的公告,而它们对于预测结果几乎没有影响,模型就可能会调低“规章制度”之类的公告对应的旋钮。这就是参数模型的学习方法。
注意,在给定的任何时间,我们都可以从旋钮位置中得知模型所学到的全部内容。你也可以将这种类型的学习模型看作是一种搜索算法。你正在通过不断调整旋钮设置,观察结果并再次尝试来“搜索”适当的旋钮配置。
试错这一概念并不是正式定义,但它是参数模型的一个常见属性。当存在固定数量的旋钮需要被转动时,我们需要花费一定程度的搜索工作来找到最优的配置。这与通常的基于计数的非参数学习形成了鲜明的对比:当它发现需要计数的新内容时,会或多或少地添加新按钮。下面,我们把监督参数学习分解为三个步骤。
步骤 1:预测
这里要说明一下什么叫预测,我们的预测不是靠水晶球或者扔铜板来做的。在机器学习领域,所有的预测都是基于微调参数的函数式。事实上,函数就是从自变量到因变量的映射关系的名称。
假如我们将输入数据集记为,把输出数据集记为,那么预测就是一个作用在上的一个函数式,它将在固定数量参数 的情形下将映射为.
比如现在要出售一套房子,现在有整个城市的房子的面积,朝向,位置,厕所个数,客厅个数,装修程度,建设年代等信息,现在要根据这些信息来给当前的房子定一个合理的售价。
在这个问题里,就有7个特征信息,我们用 来标记它们。
特征 | 面积 | 朝向 | 位置 | 年代 | 装修 | 厕所个数 | 客厅个数 |
---|---|---|---|---|---|---|---|
标记 |
那么所谓的预测,实际上就是猜一个函数,比如我们用线性函数来猜测
其中, 就是参数, 这些参数张开一个线性空间。目前为止,我们没有对于参数有任何的约束,所以现在的预测就是随机扔一个骰子,我们可以拍脑袋来选择任意的一组参数来做预测。
步骤 2:与真值进行比较
很显然,上面的预测方法是十分可笑的。我们需要引入一个条件约束来使得预测变得准确。因此我们需要调整预测参数,使得预测值与的 差异最小。 就是相应于 的指导结果,它就是这个学习过程中的 “监督者”。 实际上,英文的监督学习是 Supervised Learning, 意思是 老师指导下的学习。 从这个角度看, 相当于习题, 相当于答案,有了习题和答案,监督学习就相当于找到解题方法一步步求解。
为了使得预测值和真值的差异最小,我们需要定义差异函数,在监督学习中,一般把差异函数叫做是代价函数(Cost Function)。实际上,严格意义上来说,它是一个泛函而非函数,因为它是函数的函数。所以严格地说,它应该叫做差异泛函。泛函一般用方括号来包含住函数型的参量。
用数学的表达式来表达上面的意思就是:
上式中的ArgMin代表的是寻找最优的,以使得差异函数极小化。
步骤 3:学习模式
目前为止,我们有了预测的方案(函数式和差异泛函。
那么怎样去学习呢?
很简单,就如同旋转旋钮一样,一个个参数试过去。预测偏离远了(即差异泛函的值较大),就调整参数的值,使得差异函数变小。最终可以得到一个比较理想的 使得差异泛函是极小的。
网友评论