python机器学习基本概念快速入门

浪子不回头ぞ 提交于 2021-02-17 09:10:50

 

//2019.08.01
机器学习基础入门1-2
1、半监督学习的数据特征在于其数据集一部分带有一定的"标记"和或者"答案",而另一部分数据没有特定的标记,而更常见的半监督学习数据集产生的原因是各种原因引起的数据缺失。
2、半监督学习的数据集处理方式大多采用:先用无监督学习算法对数据进行相关的处理,再利用监督学习算法对其进行模型的训练和预测。
3、增强学习:它是指根据周围的环境进行相应的行动,然后根据采取行动的结果,学习行动的方式,其算法得到整体闭环原理图如下图所示:

图1
4、机器学习算法的其他分类方式:
(1)在线学习(online learning)和批量学习(离线学习)(batch learning)
(2)参数学习(parametric learning)与非参数学习(nonparametric learning)
5、批量学习算法的整体流程如下图所示:

图2
它的优点在于比较简单,它适应环境变化的方式是:进行定时重新批量学习,不过这种方式也有比较大的缺点就是:每次重新批量学习,其运算量巨大;另外在某些环境变化非常迅速的情况下,其实现是基本不可能的。
6、在线学习:它是指在批量学习的基础上将新的产生的数据集输入到机器学习算法的学习资料中进行实时的训练和迭代优化,从而及时地适应环境的变化,其具体原理图如下:

图3
它的优点在于能够及时地反映新的环境的变化,但是其缺点是如果新的数据带来一些不好的变化,它也会及时进入到学习算法当中,从而对于整体的训练模型产生不好的影响,解决此类问题的关键在于需要加氢对于实时数据的自我监控与预处理。
7、对于一些大批量数据,数据量巨大,完全无法批量学习的情况下,其在线学习是非常必要和正确的解决手段。
8、对于参数学习,其具体的含义在于在概率统计的各种假设前提下,将其数据输入输出之间的关系假设为一定的含参模型,利用原来的数据集对于其模型的参数进行概率的确定,一旦相应的参数确定完成之后,其输入输出的关系也随之确定,因此原来的学习数据也已然不再需要。
例如对于假设的二维数据间的线性关系,通过原有的数据集可以确定出其模型中所需要确定的参数a和b,确定完成之后原来的数据将再不需要:

图4
9、对于非参数学习,其含义在于我们不并将其进行概率意义上的多参数模型假设,但是非参数并不代表没有参数,它在整体的学习过程中也会包含一定的参数。

#机器学习的相关思考
1、大多数机器学习算法的准确度高度依赖于其基础的数据集,数据集的质量和数量很大程度上决定了其算法的最终准确度,因此也有一种说法是"数据即算法",2001年微软发表论文表面对于不同的机器学习算法,当其训练的数据集不断增多时,其算法预测的准确度也在不断地提高,并且最终都会彼此接近。因此,算法的准确度最终并不取决于算法本身,而是取决于基础训练数据集本身。


2、对于数据集的预处理主要关键在于:
(1)收集更多的数据
(2)提高数据的质量
(3)提高数据的代表性
(4)研究数据更重要的特征
3、不过对于一些问题,随着机器学习算法的发展,有些算法并不需要基础数据训练集,算法本身就可以对其进行产生训练和提高,比如AlphaGo Zero,它就是利用算法,从零开始进行训练和解决,不过它具有一定的特殊性。所以也有人说“算法即王”


4、对于机器学习算法,简单的就是好的,不过其简单的评判标准也是不确定的。另外从数学的角度来讲,任何两个机器学习算法,严格数学推导其最终的期望性能是相同的,相当于说任何算法的性能其实质是相同的,但是它也是建立在数学概率的期望上,对于特定情况下的特定问题,其实质是个性问题,所以即使不同的算法其期望性能虽然相同,但是解决不同问题的适合性却随着问题的特殊性有所不同。因此对于同一个问题,利用不同的算法进行训练、建模和测试对比是非常必要的。
5、机器学习基础入门的IDE环境搭建:
(1)Anaconda,下载网址:www.anaconda.com
(2)Pycharm,下载网址:http://www.jetbrains.com

 

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!