从去年开始,学习机器学习已经半年多了,现在是时候做一个总结了。在以往的编程经验中,我们需要对输入有一个精确的、可控的、描述性的输出。例如,以1+1作为输入,结果是2的精确输出。而且不管你怎么调整参数,你都希望结果是2,你可以清楚的解释为什么结果是2,而不是3。这样的概念在传统的IT世界里是非常重要的。一切都像时钟一样准确,一切都是黑白分明的。由于这种严格的输入输出,衍生出了许多程序的自动测试工具。无论你的程序如何运行,在相同的输入条件下,它都应该得到相同的、准确的、精确的输出。但是,如果您进入机器学习的世界,一切都基于准确率。也就是说,你的模型允许不准确,1+1,结果可以是2.01,也可以是1.98。有时,如果您的模型正在朝着最好的方向发展,则可能存在过度拟合的可能性。也就是说,因为你的模型太精确了,虽然模型可以很好的匹配训练数据,但是失去了通用性,当数据发生变化的时候就会出现错误。比如男生说喜欢某个女生,女生身高178,家乡辽宁抚顺,专业是计算机。如果机器学习过拟合,它会输出这样一个模型,如果身高=178,家乡=抚顺,专业=计算机,那你就喜欢。如果用这个型号来搭配一个case,这个型号就完美了!但是,如果女孩的身高是179,这个模型会告诉你男孩不喜欢她。其实对于男生来说,178和179其实并没有太大的区别。但是因为电脑要准确的给出男生喜欢女生的模型,所以电脑做了一个过拟合的模型。当然,一般来说,电脑模型应该是有弹性的。如果身高在[175,185]之间,籍贯在东北,专业是IT相关的。虽然模型会错误的识别出一些男生不喜欢的女生,但是大部分样本还是可以预测的比较好。的。机器学习追求的不是100%正确,而是可以容忍的正确率。当然,在某些时候,需要一些风险策略。例如,当人工智能判断用户是否可以发行信用卡时,并不意味着此人有51%的可能性是可信赖的人,因此会发行该卡,但是当这个人95%是有信用的人的时候,发卡。机器给出的只是一个预估值,风险还是需要人工去控制。许多人认为机器学习是一项高科技IT技能。事实上,一个好的机器学习模型需要该领域的业务知识。而且现在有很多工具可以帮助你构建程序,而你根本不需要任何编程技能。你只需要将数据“喂”给机器,调整参数,就可以得到结果。给机器“喂”什么数据,那些数据的特征值是有用的,那些特征值是没有价值的,这是领域专家要思考的问题。男孩喜欢女孩。这时候,外貌、身材、脾气可能就是关键的特征值。如果你喜欢可口可乐或百事可乐,它基本上就变得一文不值了。如果你的数据中全是喜欢那个牌子可乐的女孩,那么在这些数据上训练的模型就没有任何意义。当然,如果你有很多特征值,还是有一些自动计算可以帮助你选择那些特征值(主因分析)。在机器学习中,有一些复杂的概念往往是从一个简单的概念延伸出来的。一些以卷积神经网络为首的神经网络的概念,都是来自于感知机这个小家伙。感知器的输出由输入和权重决定。在监督学习中,输入和输出是已知的,然后机器学习不断调整权重,使感知器的输出(模型)和实际输出(样本)尽可能一致。在这个过程中,学习的结果就是这些权重。一旦权重已知,模型就完成了。感知器最简单的应用之一是线性单元。单个感知器很弱,但是如果有数千个感知器,然后将它们逐层叠加。.这些小家伙变成了强大的神经网络贝叶斯,马尔可夫同志分享了很多关于概率的机器学习。贝叶斯贡献如下。在“老王(B)住在你家隔壁”的前提下,“你家孩子长得像隔壁老王(A)”的概率等于“你家孩子长得像老王”的前提隔壁(A)”。接下来,将“你家隔壁的老王(B)”乘以:“你的孩子长得像隔壁老王(A)”的概率(与老王是否住在隔壁无关)除以:“你隔壁住在老王的概率(B)”当然,这个正统的说法涉及到先验概率和后验概率。从最简单的伯努利分布到分布分布上的变态狄利克雷分布,很多机器学习都在追求模型最大采样的分布概率。也就是说,我们希望从概率的角度,我们做出的模型看起来和我们看到的样本最相似。(***Likelihood)例如,我们要制作一个模型,指示将硬币正面朝上的可能性有多大。如果我们的样本告诉我们10个正面中有7个正面朝上,那么我们说70%的时间硬币会正面朝上。这个模型的结论和样本之间,从概率的角度来说是最有可能的。我们制作的模型是追求和实际样品的结果。从概率上来说,是最有可能的情况。最快的梯度下降出现在几乎所有的迭代算法中。为什么梯度下降特别重要,因为大多数算法都是尽可能地减少损失函数。如何降低损失函数就是不断调整参数(权重),权重调整的方向与梯度下降的方向一致。当然,最快的梯度下降不一定收敛到全局最优点。(能否收敛到全局最优点与初始位置有关)机器学习和自然语言处理也是密不可分的。在很多自然语言处理中,都会大量使用机器学习的概念。马尔可夫链、条件随机场和狄利克雷分布是自然语言处理的基础理论。
