什么是机器学习(Machine Learning)? |李宏毅机器学习【1】
机器学习(Machine Learning)是人工智能时代的核心技术,深度学习(Deep leaning)是机器学习中一类重要的方法。机器学习的应用非常广泛,相机美颜、个性推荐,人脸解锁、垃圾邮件过滤、阿法狗......很多智能化的应用场景背后,都离不开机器学习算法的支撑。
机器学习的概念
那么机器学习到底是什么东东呢?是造一个机器人来学习吗,非也。按照李宏毅老师的说法,机器学习相当于找一个函数(looking for a Function)。
如下图所示,你对着siri说一句话,她就能知道你说了什么;你给识图软件一张喵星人照片,它就能识别这是一只猫猫;你给阿法狗一个棋局,它就能算出下一步应该怎么下.....先不管这些事情内部是怎么实现的,从整体上来看,就是给学习器一个输入,它就可以给出唯一输出,这不就是函数吗?
更学术化的表达机器学习的概念,就是通过编写程序学习经验来提高完成任务的性能。
机器学习大致可以分为三个步骤,我们通过最简单的例子——线性回归来理解一下。
ML的一般步骤:
step1: Model(a set of functions)
第一步就是找个模型,也就是找一个函数/算法模板。线性回归的模型呢,就是一个线性的函数啦: y = wx+b (w和x为向量)
step2: Goodness of functionon(Loss function)
确定了模型的构造方法,下一步就是确定模型的具体参数。这一步通常会构建损失函数来衡量模型的好坏,线性回归用到的损失函数是均方误差,也就是经典的“最小二乘法”
step3: Pick the 'best' function
得到了损失函数,接着就是怎么求解了。也许你会直接背出公式,但对于计算机来说,采用梯度下降的方法可能更简单一些,这个后面再讲。
来看看机器学习的算法分类:
- 从问题/数据的情境划分:有监督、无监督、半监督、迁移学习、强化学习
- 从任务类型划分:回归(scalar)、分类(binary or multi)、聚类、结构化学习(翻译、语音识别)
机器学习主要包括:
- 回归算法
- 线性回归
- 逻辑回归
- 多元自适应回归(MARS)
- 本地散点平滑估计(LOESS)
- 基于实例的学习算法
- K - 邻近算法(kNN)
- 学习矢量化(LVQ)
- 自组织映射算法(SOM)
- 局部加权学习算法(LWL)
- 正则化算法
- 岭回归(Ridge Regression)
- LASSO(Least Absolute Shrinkage and Selection Operator)
- Elastic Net
- 最小角回归(LARS)
- 决策树算法
- 分类和回归树(CART)
- ID3 算法 (Iterative Dichotomiser 3)
- C4.5 和 C5.0
- CHAID(Chi-squared Automatic Interaction Detection()
- 随机森林(Random Forest)
- 多元自适应回归样条(MARS)
- 梯度推进机(Gradient Boosting Machine, GBM)
- 贝叶斯算法
- 朴素贝叶斯
- 高斯朴素贝叶斯
- 多项式朴素贝叶斯
- AODE(Averaged One-Dependence Estimators)
- 贝叶斯网络(Bayesian Belief Network)
- 基于核的算法
- 支持向量机(SVM)
- 径向基函数(Radial Basis Function ,RBF)
- 线性判别分析(Linear Discriminate Analysis ,LDA)
- 聚类算法
- K - 均值
- K - 中位数
- EM 算法
- 分层聚类
- 关联规则学习
- Apriori 算法
- Eclat 算法
- 神经网络
- 感知器
- 反向传播算法(BP)
- Hopfield 网络
- 径向基函数网络(RBFN)
- 深度学习
- 深度玻尔兹曼机(DBM)
- 卷积神经网络(CNN)
- 递归神经网络(RNN、LSTM)
- 栈式自编码算法(Stacked Auto-Encoder)
- 降维算法
- 主成分分析法(PCA)
- 主成分回归(PCR)
- 偏最小二乘回归(PLSR)
- 萨蒙映射
- 多维尺度分析法(MDS)
- 投影寻踪法(PP)
- 线性判别分析法(LDA)
- 混合判别分析法(MDA)
- 二次判别分析法(QDA)
- 灵活判别分析法(Flexible Discriminant Analysis,FDA
- 集成算法
- Boosting
- Bagging
- AdaBoost
- 堆叠泛化(混合)
- GBM 算法
- GBRT 算法
- 随机森林
- 其他算法
- 特征选择算法
- 性能评估算法
- 自然语言处理
- 计算机视觉
- 推荐系统
- 强化学习
- 迁移学习
图片来自scikit-learn
这么多算法怕不怕,哈哈~ 学海无涯,一起努力吧!