文/浪潮之巅
1、什么是机器学习
1959年,Arthur
Samuel给机器学习了一个明确概念:Field
of study that gives computers the ability to learn without being explicitly
programmed.(即机器学习研究如何让计算器不需要明确的程序也可以具备学习的能力)。
通俗来讲:机器学习是指针对某一个特定任务,计算机程序能够从数据中不断学习,越做越好。因此,机器学习有两个重要的内容:数据和模型。当我们遇到某个问题准备用机器学习的手段去解决的时候,我们需要获取相关的数据,通过分析观察数据搭建合适的算法模型,利用数据作为输入去训练优化模型,最终使得模型对于新数据具有泛化能力。
2、为什么用机器学习
1)对于现有方案需要大量手动调整或者设置规则列表超长的问题,通过机器学习可以简化代码、提高效率。
2)对于传统技术手段无法解决的复杂问题,通过机器学习可以找到一个解决方案。
3)对于环境波动,机器学习可以适应新的数据
4)从复杂问题和大量数据中找到规律和价值。
3、机器学习分类
1)按照是否需要监督进行训练可以分为:监督学习、半监督学习、无监督学习和强化学习。
a)监督学习概念:计算机程序从大量含有标签的数据中学习出规律,从而能够对一个新的输入做出合理的输出预测。重要监督式学习:K-近邻算法、线性回归、逻辑回归、支持向量机、决策树、随机森林、神经网络。
b)无监督学习:计算机程序从大量的无标签数据中去分析数据本身内在的特点和结构。重要无监督学习:聚类算法、K-平均算法、分层聚类分析、最大期望算法、可视化和降维、主成分分析、关联规则学习。
c)半监督学习:利用少量有标签数据和大量无标签数据进行训练和分类,它是监督学习和无监督学习相结合的一种学习方法。重要半监督学习:基于概率的方法、基于图的方法、直接依赖于聚类假设的方法、基于多视图的方法、在现有监督学习算法基础上作修改的方法。
d)强化学习:智能体(Agent)以"试错"的方式进行学习,通过与环境进行交互获得的奖赏指导行为,目标是使智能体获得最大的奖赏。
增强学习和监督学习的两个明显区别是:一、增强学习是试错学习(Trail-and-error),由于没有直接的指导信息,智能体要以不断与环境进行交互,通过试错的方式来获得最佳策略。二、延迟回报,增强学习的指导信息很少,而且往往是在事后(最后一个状态)才给出的,这就导致了一个问题,就是获得正回报或者负回报以后,如何将回报分配给前面的状态。
2)按照是否可以动态进行增量学习可以分为:在线学习和批量学习。
a)批量学习概念:在批量学习中必须使用所有可用的数据进行训练,离线学习完成后再将所学到的应用到生产中。
批量学习面临问题:这种学习方式每次都需要耗费大量的时间和存储资源,这是我们无法接受的。
b)在线学习概念:通过分批次给系统提供训练数据,并逐步积累学习成果的方式称为在线学习,又称增量学习。在线学习提供训练数据的方式可以是单独的或者小批量的(mini-batches)。因此,采用在线学习方式进行学习过程中,每一步学习都非常快速并且便宜,同时系统需要持续的接收数据流并且对数据流变化做出快速响应。当然,整个训练过程也通常是离线完成的,不要被字面意思曲解。
在线学习重要特征:对于在线学习系统,学习率是一个非常重要的参数。学习率是衡量机器学习系统适应变化的数据的速度。如果学习率过高,那么系统适应新数据快,与此同时会导致遗忘旧数据过快。相反,系统适应新数据过慢,产生惰性。
在线学习面临问题:如果输入数据不佳,那么系统性能会逐渐下降。为了避免这种问题,当检测到系统性能下降超过阈值时,我们需要及时中止学习。
网友评论