下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

如何深刻轻松了解机器学习

作者:课课家教育     来源: http://www.kokojia.com点击数:775发布时间: 2017-10-28 11:00:53

标签: 系统机器学习word

  欢迎各位阅读本篇,机器学习(Machine Learning,ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。本篇文章讲述了如何深刻轻松了解机器学习,课课家教育平台提醒各位:本篇文章纯干货~因此大家一定要认真阅读本篇文章哦!

如何深刻轻松了解机器学习_系统_机器学习_word_课课家教育

  机器学习的套路

  大部分机器学习算法(包括深度学习),其实是在一个理想空间里(接下来我们会以三维空间为例子)寻找一个最大/最小值。三维空间是无限大的,在某个实际场景,假设我们有了解决某个问题的数据的全集(或者说是无限的数据),基于这些数据我们得到的优化函数的所有解构成了一座山。我们并不知道这座山的最低点是哪里,所以为了找到它,我们随机定位在一个点,试图沿着比较陡峭的方向下移动,并且希望能够因此而找到最低点。现实情况是我们并不能看到这座山,因为它笼罩在一阵迷雾里,我们只能根据已有的训练数据拨开一小片云雾,看到一小片地方,然后沿着比较陡峭的地方向下移动一点点,然后新进来的数据重复这个动作。大部分机器学习算法都需要转化成我描述的这个步骤来进行。

  有了上面的解释,很多专有名词就很好解释了。比如迭代,所谓迭代就是不断移动的过程。比如收敛,为什么一般而言算法最终都会收敛,因为终究我们能够走到山里的某一个比较低的点的,之后就会在那徘徊,算法就算收敛了。

  同样,我们也会遇到很多问题,比如局部最优解问题(你跑到一个小坑里,但是步长比较小,出不来了,已经收敛了),搜索空间太大(山的面积太大),不收敛(因为地形比较复杂)。

  深度学习的容量足够大,因为它可以有几百万上千万的参数,这使得它理论上能够拟合任何形式的数据。根据我的实际经验是,它确实能很好的拟合训练数据,并且不是简单的记住他们。

  端到端

  NLP之前的文本分类工作,需要搞各种特征工程,有用没用各种神奇组合,搞个几亿维 然后喂给算法,有了深度学习,我们只要把文本丢进去就行了。虽然如此,我们只是把特征工程融合进了网络里。比如卷积会捕捉词与词的关系,还能加强或者忽略某些词的权重,这和我们手动把各种词的组合搞成新特征是一样的。

  再比如Attention机制就是人们不断的通过观察和学习,在网络中加入我们认为重要的特征:

  Attention无非是强调输入的每个词汇对输出的每个词汇影响力不一样的一个改进模型

  深度学习将特征工作变得更加套路,并且具有更一般的适用性,然而,这不是全部,他的最大意义在于:

  深度学习完成了原来由人工将特征准备好喂给算法到我们把抽取特征的方法告诉算法,算法自己完成特征的实际抽取过程的转变。

  再回过头来看比如CNN, RNN等深度网络的变体,利用这种结构,我们可以捕获一些特殊的信息,比如平移 旋转,序列概率等 ,这本质上是人类总结出了几种很不错的特征种类,深度学习利用特定的网络结构在训练的时候自动抽取出这些特征。

  可解释性

  正如Peter Norvig说的,根据认知心理学,人类解释为什么做某个决策的理由,往往是事后编撰出来的,为了试图说服自己和其他人,当时做决策的时候并不一定真的是那么想的。这也解释了为什么成功不可复制(因为我解释我为什么做的时候其实不一定是真的,只是我们以为是真的)。 虽然我们在【机器学习的套路】的段落里说了一个数学上的大框架 但是很多东西确实解释不清楚。我们只能从产出的结果再回去猜机器学习这么做的原理或者原因。比如卷积你放在不同场景 可以有无数新的发现和解释。数据即规律,机器学习数据其实就是学习规律,这种规律人不一定能想明白,解释清楚。

数据即规律,机器学习数据其实就是学习规律,这种规律人不一定能想明白,解释清楚。

  一个比较好的例子是,word embedding, 效果很好,人们从实验认知到每一个数字都应该是有语义特征的,如果这种性质强烈的话,意味着CNN是可以使用宽度短于word embedding dimension 长度的 ,而不是像很多论文那样,filter的宽度等于embedding的长度。

  和统计学的关系

  统计是我们清楚要啥,然后我们做分析。 但是深度学习确实能学出我们不知道的一些东西。这就是他们的区别。

  模拟人们的思维

  我发现,人的很多东西也是可以反向通过机器学习的理论来解释的。

  人的大脑做training的时候(比如去掌握某个新技能),也是一件很蛋疼的事,需要不断tuning(调整学习的方式,学习的来源,比如换本更好的教材)。

  同样的大脑,有的人学的好,有的学的不好,是因为“很多人已经有了相关知识,这次学习只是fine-tune”。

  对于为啥有的人智商就是高,有的人不高,只不过初始化参数有的人选择的好罢了,这个看运气。

  大部分人掌握技能掌握的都不会太好,因为欠拟合是普遍情况。看着好像学会了,但只会纸上谈兵,大体就是过拟合了,还需要更多经验和数据。

  很多人比较理性,有的人则感性,其实是正则化起的作用。

  人脑是一个非常通用的模型,而机器现阶段比人更专注,更单一(但是也有人证明了一个算法可以同时完成多个任务)。机器可以在几小时几天学会新技能,而人则可能需要好多年。人类其实在能够工作前,需要训练很多年(从0岁到3岁?),之后都是fine-tuning了。

  人学这么久的原因,说实在的,还是因为数据来的太慢,处理的太慢。人也是mini-batch输入问题,然后执行预测,根据这次的结果调整下一次行为的,以期下次能做到更好(损失函数)

  机器学习什么时候可以真的“智能和进化

  机器学习学习的过程不是一个持久持续的过程,训练完成后冻结模型,然后给预测模型使用,然后接着收集更多数据,通常我们会重新从0开始训练。人脑显然不是这样的,训练应该是online的,预测反倒是可以离线的,走snapshot就好。这个是目前机器学习算法和人比较大的差异。

  第二个就是网络的复杂度,人是一个通用的模型,可以处理很多不同类型的任务,机器通常智能做一类问题,这原因是网络结构还不够复杂,并且在一个大网络里,进化出不同的网络子区域。

  第三个是目前还没有很好的否定模型,当一个模型稳定后,之后再进行新数据进来训练时,模型应该懂得坚持自我。当我对一个事物预测的概率是99%的时候,而外部的数据告诉模型,模型是错的,模型应该简单忽略掉这条数据,或者留下疑问,暂存下这个问题,以期获得更多反例,而不是一个样本就能需要模型进行反省。

  哪天真的能够做到如上三点,我觉得就真有可能会进化了。

  机器学习:

  学习能力是智能行为的一个非常重要的特征,但至今对学习的机理尚不清楚。人们曾对机器学习给出各种定义。H.A.Simon认为,学习是系统所作的适应性变化,使得系统在下一次完成同样或类似的任务时更为有效。R.s.Michalski认为,学习是构造或修改对于所经历事物的表示。

  从事专家系统研制的人们则认为学习是知识的获取。这些观点各有侧重,第一种观点强调学习的外部行为效果,第二种则强调学习的内部过程,而第三种主要是从知识工程的实用性角度出发的。

  机器学习在人工智能的研究中具有十分重要的地位。一个不具有学习能力的智能系统难以称得上是一个真正的智能系统,但是以往的智能系统都普遍缺少学习的能力。

  例如,它们遇到错误时不能自我校正;不会通过经验改善自身的性能;不会自动获取和发现所需要的知识。它们的推理仅限于演绎而缺少归纳,因此至多只能够证明已存在事实、定理,而不能发现新的定理、定律和规则等。

  随着人工智能的深入发展,这些局限性表现得愈加突出。正是在这种情形下,机器学习逐渐成为人工智能研究的核心之一。它的应用已遍及人工智能的各个分支,如专家系统、自动推理、自然语言理解、模式识别、计算机视觉、智能机器人等领域。其中尤其典型的是专家系统中的知识获取瓶颈问题,人们一直在努力试图采用机器学习的方法加以克服。

  机器学习的研究是根据生理学、认知科学等对人类学习机理的了解,建立人类学习过程的计算模型或认识模型,发展各种学习理论和学习方法,研究通用的学习算法并进行理论上的分析,建立面向任务的具有特定应用的学习系统。这些研究目标相互影响相互促进。

这些研究目标相互影响相互促进。

  自从1980年在卡内基梅隆大学召开第一届机器学习研讨会以来,机器学习的研究工作发展很快,已成为中心课题之一。随着机器学习的蓬勃发展,人们在工作中累积了大量可供测试算法的数据集或者超大数据集,机器学习工作者在此基础上可以进行更精准的研究,例如ICCV2011年马尔奖:相对属性的数据;AOL-user-ct-collection数据集;科雷尔图片特征数据集(UCI);植被型数据集(UCI)等等。

  小结:专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。当然如果大家还想了解更多方面的详细内容的话呢,不妨关注课课家教育平台,在这个学习知识的天堂中,您肯定会有意想不到的收获的!

赞(10)
踩(0)
分享到:
华为认证网络工程师 HCIE直播课视频教程