Files
912-notes/ml_scipts.md

2.6 KiB
Raw Blame History

Handscripts when studing Machine Learning

什么是机器学习?

注意三个点即E, T, P。

监督学习与无监督学习之间的区别?

监督学习是指对于输入的数据,它所对应的输出是已知的。监督学习可以分为两类,即回归问题与分类问题,它们的区别在于输出是否是连续的。具体的例子有房价预测问题(回归问题),判断肿瘤是否是良性(分类问题)。

无监督学习的输入数据之间没有任何区别,每个输入数据都是等价的,并没有事先表明它的状态或者分类信息(比如房价或者恶性肿瘤),而是由机器来分辨不同数据的属性。典型的例子有聚类问题clustering以及鸡尾酒宴算法。

关于深度学习算法的一些思考。

人工神经元算法的设计乃是线性内核非线性激活的叠加。根据线性内核的不同,可以分为DNNCNNRNN,它们分别适用于不同的场景。但是这种建模方法显然是不准确的,片面的,因为实际中的神经元对于各种场合的问题都可以很好的适用。这样,应该存在一种更好的方式来模拟神经元。

人工神经网络的精髓都在于对大脑中的神经元进行模拟。但是我在想神经元并非一定是解决问题的最高效的方法虽然神经元经过了几十亿年的进化与自然选择但它未必是解决现实问题的最优解可能只是一个局部最优而已alphaGo的例子就说明了这一点——人类数千年形成的围棋算法实际上只是局部最优解。

另一方面,让计算机模拟人脑也未必就是最好的方法。因此我在想,有没有可能跳出现有神经元的桎梏,开创出一个更优化的算法,这样说不定还可以反过来对人类的神经元进行改造。

梯度下降法存在的问题。

首先是学习率(learning rate)的选择。如果$\alpha$太小,则需要多次迭代才能找到局部最优解,需要较长的学习时间;而如果$\alpha$太大,则可能直越过最低点,导致无法收敛,甚至发散。

此外显而易见的是梯度下降法只能找到局部最优解而非全局最优解。实际上梯度下降法找到的解取决于初始位置的选择。然而对于线性回归linear regression)问题,则不存在这个问题,因为线性回归问题的代价函数是一个凸函数(convex function),即它只有一个极值点,该极值点就是它的全局最优解,因此使用梯度下降算法总是可以得到唯一的最优解。