0.前言
学习机器学习有几年时间了,开始一直是零零碎碎断断续续学一些东西,断续琐碎;后面慢慢地把各个点串起来,形成了体系。早有打算整理出来,但是总觉得有些地方理解欠佳,不敢轻易动笔。最近把各个部分都思考了一下,感觉应该问题不大了,遂准备着手整理成一系列文章。记录自己对机器学习的一些理解,以备忘。
也希望将来有更多的人看到我的博客,一起讨论。博文里面很多东西都是自己的理解,其中错误和不足之处望批评指出。不断提高。
以下是正篇。
1.机器学习的目标
机器学习的目标是从数据中发现关系,并用形式化的方法表达这种关系。在这一目标中,有两个核心:一是数据;一是关系。
数据是因,关系是果。机器学习的过程就是从数据中发现关系的过程。
2.机器学习的分类
前面说到,机器学习的两个核心是数据和关系,机器学习是建立沟通数据和关系的过程。那么对于不同的数据,和不同的发现过程,可以有不同的分类。
一般来说,依据数据和学习过程的差异,可以把机器学习分为4类:监督学习、非监督学习、半监督学习和强化学习。
监督学习:对于监督学习,数据至少有两种类型,一是训练数据,一是预估数据。训练数据中的每一条数据应该包含两部分:特征和标识。特征是自变量,标识是因变量。监督学习的过程,就是从训练数据中,寻找因变量和自变量的最可能的关系。因为这种关系对数据是一种近似刻画,也就是说,学习发现的关系和真实的关系存在差异。学习的过程,就是比较学习得到的关系和真实的数据之间的差异,让差异最小化的过程。
非监督学习:非监督学习中,训练数据无标识。学习的过程是希望发现数据中的一种内在机构,或者说是要发现数据间的内在关系。
半监督学习:半监督学习的数据,部分有标识,部分无标识。半监督学习,首先通过对无标识数据进行建模,发现其内在结构,继而在有标识数据上进行学习,发现关系。
强化学习:强化学习数据,和监督类似,是有标识地。不同之处在于,监督学习是从数据整体出发直接发现关系;强化学习是,先从部分数据中找到关系,继而使用新的数据作为这种关系的反馈,优化这种关系。
3.机器学习的组件
机器学习应该包含三个过程:数据预处理、关系发现、效果评估。
数据预处理的工作属于特征工程。包括特征获取、特征清洗、特征降维、特征选择等。
关系发现应该包含三个部分:模型、策略和算法。模型是实际问题形式化的描述;策略是模型与实际数据的差异的刻画;算法是模型计算的方法。
效果评估是对模型的结果进行估计,用来刻画模型对真实环境的表达能力。
3.1、特征工程
参考以下文章:
特征工程简介
数据不平衡问题
数据降维和可视化
3.2、算法
3.2.1、模型
罗列了一些常见算法如下(点击可阅读相关文章):
感知机
线性模型
SVM
FM/FFM
贝叶斯模型
树模型
EM算法
概率图模型
词向量模型1: pLSA+LDA
词向量模型2: word2vec+xx2vec
3.2.2、策略
损失函数和参数估计
3.2.3、算法
算法基础:数学篇
最优化
矩阵论
信息论
算法初步: 常用优化算法
3.3、效果评估
模型评估
4.机器学习的应用
机器学习在越来越多的场景得到广泛使用。
具体到工业界,现在主流的应用场景包括作为底层基础技术的语音、图像、NLP;在应用层面上,主要是搜索、推荐和广告。
4.1、搜索和排序
参考:Rank
4.2、推荐
参考:推荐系统
4.3、广告
参考:计算广告
4.4、NLP
参考:Rank
如果发现文中有问题,敬请联系作者批评指正,真诚欢迎您的指教,谢谢!
微信: legelsr0808
邮箱: legelsr0808@163.com