Introduction反向传播是神经网络训练过程中非常重要的步骤。目前许多深度学习框架以(例如Tensorflow)已在定义的computational graph中自行帮开发者完成了反向传播算法的计算。但是作为深度学习领域的研究人员,还是应该了解该算法的本质。本文就对该算法进行深入讲解(素材来自Stanford CS231n Spring,2017):一个简单的computational graph $f(x, y, z)=(x + y)z$ (e.g. $x = -2$, $y = ...
[ML] Ensemble Learning
IntroductionEnsemble Learning是ML中一个非常热门的领域,也是很多比赛Top方案的必选。本文对常见的Ensemble Learning做一个简要介绍。 根据Base Learner的生成方式,目前的Ensemble Learning方法大致可以分为两大类:即base learner之间存在强依赖关系、必须串行生成的序列化方法,以及base learner间不存在强依赖关系、可同时生成的并行化方法;前者的代表是Boosting,后者的代表是Bagging和Rand...
[ML] Loss Function in ML
IntroductionLoss Function是ML/DL领域一个非常关键的因素,很多时候,我们如果能确定一个问题的Loss Function,那么这个问题就几乎已经被解决。常见的Loss可以归为以下几种: Classification: Log Loss; Focal Loss; KL Divergence; Exponential Loss; Hinge Loss Regression: MSE; MAE; Huber Loss; Log Cosh Loss; Quantile ...
[ML] Decision Tree
Introduction决策树也是机器学习中一种非常经典的分类和回归算法,在工业界有着非常广泛的应用,并且有着非常好的可解释性。 决策树学习决策树学习的Loss Function通常是正则化的极大似然函数,决策树学习的策略是以Loss Function最小化为目标函数的最小化。 决策树的生成对应于模型的局部选择,决策树的剪枝对应模型的全局选择。决策树的生成只考虑局部最优,决策树的剪枝则考虑全局最优。 特征选择 Entropy是表示随机变量不确定性的度量,设$X$是一个取有限个值的离散随机变...
[ML] Logistic Regression and Maximum Entropy Model
IntroductionLogistic Regression是机器学习中一种非常经典且应用非常广泛的分类算法。Logistic Regression属于对数线性模型的一种。 Logistic Regression Logistic Distribution: 设$X$是连续随机变量,$X$服从Logistic Distribution指的是$X$具有下列分布函数和密度函数:$F(x)=P(X\leq x)=\frac{1}{1+e^{-(x-\mu)/\gamma}}$ $f(x)=\f...
[DL] Optimization Algorithm in Deep Learning
介绍与很多传统机器学习算法相比,由于深度神经网络的本身特性(例如非凸、高度非线性等),使得整个目标函数的优化极为困难。因此优化算法是深度学习领域一个非常非常重要的组成部分。私以为,Deep Learning主要有3大组件:1) 网络结构,2) Loss Function, 3) 优化算法。虽然目前Paper中大多数都是设计Networks Architecture + Loss Function,然后SGD/Adam Optimizer一波带走,但笔者还是觉得有必要把这些优化算法来一个自己...
[ML] Naive Bayes
Introduction Naive Bayes 是基于Bayes Theorem与 特征条件独立 假设的分类算法。对于给定的数据集,首先基于特征条件独立假设 学习输入/输出的联合概率分布;然后基于此模型,对给定的输入$x$,利用Bayes Theorem求出后验概率最大的输出$y$。 Naive Bayes通过训练数据集学习联合概率分布$P(X,Y)$。Naive Bayes对条件概率分布做了条件独立性假设:$$P(X=x|Y=c_k)=P(X^{(1)}=x^{(1)},\cdots...
[ML] Linear Model
Statistical Methods 参数方法,例如Linear Model。参数方法容易拟合,且可解释性强,但也存在问题。以Linear Model为例,若真实存在的模型本身就不是Linear,那就会有问题。 非参数方法:不需要显式指定$f$的形式,例如KNN。非参数方法的优点在于:因没有显示指定$f$,故Non-Parameter Methods可以拟合比Parameter Methods更广的函数。 Linear Model Standard error can be used ...