机器学习笔记-8(应用机器学习的建议)

这里是课程第九部分的内容,上面咱学习了好几种机器学习算法,基本涵盖了当前机器学习水平的大概情况。然后,下一步是什么?

事实上,或许你现在已经理解了上面所学习的几种算法,但是却不知道如何去应用它们,OK,这里就是为了机器学习应用的情况而进行的讨论。

很多时候,当你使用一个机器学习算法用某一集合的数据训练完之后,在加入新数据进行预测时,会突然发现误差很大,这就说明H函数的泛化不行,对新数据适应力不足。然后,在这种情况下,咱该怎么办呢 ?一般来说,你可以参考下列清单:

  • 获取更多的训练集
  • 尝试特征的一个小集
  • 尝试使用更多的特征
  • 尝试加入多项式特征
  • 尝试减小λ(正则参数)
  • 尝试增大λ(正则参数)

下面咱分别分析每个条目具体的应用情况。 继续阅读“机器学习笔记-8(应用机器学习的建议)”

机器学习笔记-6(神经网络的表示)

神经网络,哟呵呵~ 一看上去就很高端大气上档次 XD

最近很火的概念“Deep Learning”(深度学习),就是缘于神经网络,在上个世界70~90年代,这个概念曾经火过一段时间,但是后面发现在处理当时的问题(当时的计算机需要处理的问题,咳咳~ 是有其时代局限性的,要求不高。现在的计算机介么强大,配合“大数据”这一流弊的概念,神经网络终于再一次展现出其强大的潜力)效果居然还不如其他的一般机器学习算法,便沉寂了下来。不过时至今日,这个概念由于神经科学研究的深入,神经网络的升级版本“深度学习”开始展现出其强大的威力。神经网络由于基于生理学上的科学研究,所以跟人工智能的联系非常密切。当年吴恩达教授在刚进入大学接触到人工智能这个观念时,甚至根本就不看好人工智能的发展,还劝学生放弃这个“不切实际的梦想”,另一方面吴恩达教授从小的梦想就是发明能像人类一样思考的机器(笑)。不过直到他接触到了霍金斯(Jeff Hawikins,有神经科学研究背景的人工智能专家)的”单一演算法”假说,他重新拾起儿时的梦想。 继续阅读“机器学习笔记-6(神经网络的表示)”

机器学习笔记-5(正则化参数)

这部分内容不算多,那就随便扯扯好了。

为虾么需要进行正则化,那是因为线性回归模型由于参数的问题,会出现underfitting(低度拟合)和overfitting(过度拟合)的情况。

Overfitting and underfitting

欠拟/合适/过拟情况(线性回归)

Underfitting and overfitting

欠拟/合适/过拟情况(逻辑回归)

Addressing overfitting

如何解决过拟情况

也就是说,在给定的参数情况下,咱们要找到适度拟合的函数方程,而不是低度拟合和过度拟合的情况。

试想一个分布上类似抛物线的数据集(特征有点多),在咱使用线性/非线性回归进行函数拟合时,很容易就会出现过度拟合的现象,因为特征众多,构造出来的多项式方程通常都会变得很复杂,而且运算量略大。实际上的情况是,咱根本就不需要这么复杂的函数图形来拟合数据分布,只要一个大致合适的方程就可以了,过度拟合无意间增加了各种复杂度。另一方面是低度拟合的情况,明明是一条类似抛物线的分布,却使用到线性函数来进行拟合。 继续阅读“机器学习笔记-5(正则化参数)”

机器学习笔记-3(多变量线性回归)

课程的第四部分已经开始讲到了Multiple variable linear regression,这里将需要用到线性代数(第三部分进行了简单概览)的基本知识,无意多说,因为用到的线性代数的知识非常基础(矩阵,向量的定义,加减乘除,逆矩阵,转置矩阵)。其实基本上理解了单变量线性回归,这部分确实没啥难度。那就随便记录一些要点好了。

在大多数机器学习的场景下,咱们通常情况下,都不会只有一个特征(Feature,其实就是数据里的自变量Xi,)。而涉及到多个特征的时候,那就该使用多变量线性回归了。 继续阅读“机器学习笔记-3(多变量线性回归)”