摘要:
线性模型通过特征间的现行组合来表达“结果-特征集合”之间的对应关系。由于线性模型的表达能力有限,在实践中,只能通过增加“特征计算”的复杂度来优化模型。比如,在广告CTR预估应用中,除了“标题长度、描述长度、位次、广告id,cookie“等这样的简单原始特征,还有大量的组合特征(比如”位次-cooki... 阅读全文
摘要:
在机器学习领域中,经常会听到“shuffling"这个术语。那么,shuffling到底是什么意思呢。通常,shuffling指的是在SGD怎样依赖训练数据输入顺序的算法中,将训练数据随机打乱,达到让SGD这样的算法得到与Batch算法类似结果的方法。如上图所示,如果训练数据按1,2,3,...,1... 阅读全文
摘要:
机器学习中梯度下降(Gradient Descent, GD)算法只需要计算损失函数的一阶导数,计算代价小,非常适合训练数据非常大的应用。梯度下降法的物理意义很好理解,就是沿着当前点的梯度方向进行线搜索,找到下一个迭代点。但是,为什么有会派生出 batch、mini-batch、online这些GD... 阅读全文
摘要:
数据、特征和数值优化算法是机器学习的核心,而牛顿法及其改良(拟牛顿法)是机器最常用的一类数字优化算法,今天就从牛顿法开始,介绍几个拟牛顿法算法。本博文只介绍算法的思想,具体的数学推导过程不做介绍。1. 牛顿法牛顿法的核心思想是”利用函数在当前点的一阶导数,以及二阶导数,寻找搜寻方向“(回想一下更简单... 阅读全文
摘要:
机器学习中很多数值优化算法都会用到线搜索(line search)。线搜索的目的是在搜索方向上找到是目标函数\(f(x)\)最小的点。然而,精确找到最小点比较耗时,由于搜索方向本来就是近似,所以用较小的代价找到最小点的近似就可以了。Backtracking Line Search(BLS)就是这么一... 阅读全文
摘要:
机器学习中,很多问题都可以归结为寻找 f(x)=0 的点(例如,凸优化问题,寻找导数为0的点)。很多时候f(x)=0的解析解很难计算,下面,我们就总结一下该问题的数值计算方法。1. Newton's Method(牛顿法)牛顿法是利用函数在当前点的切线作为函数的近似,寻找当前点切线=0的点,作为下一... 阅读全文
摘要:
正则化(Regularization)是机器学习中抑制过拟合问题的常用算法,常用的正则化方法是在损失函数(Cost Function)中添加一个系数的\(l1 - norm\)或\(l2 - norm\)项,用来抑制过大的模型参数,从而缓解过拟合现象。\(l1 - norm\)的正则项还具有特征选择... 阅读全文
摘要:
梯度下降法和牛顿法是最常见的两个模型训练算法了,现在对这两个算法做一个比较:梯度下降法牛顿法迭代公式\[{w^{(k + 1)}} = {w^{(k)}} - \alpha \nabla J({w^{(k)}})\]\[{w^{(k + 1)}} = {w^{(k)}} - {H^{ - 1}}({... 阅读全文
摘要:
逻辑回归模型预估的是样本属于某个分类的概率,其损失函数(Cost Function)可以像线型回归那样,以均方差来表示;也可以用对数、概率等方法。损失函数本质上是衡量”模型预估值“到“实际值”的距离,选取好的“距离”单位,可以让模型更加准确。1. 均方差距离\[{J_{sqrt}}\left( w ... 阅读全文
摘要:
逻辑回归(Logistic Regression,LR)应该是互联网行业使用最广的分类模型了。CTR预估、反作弊、推荐系统等等领域都在大量使用LR模型。近几年,DNN有逐渐取代LR的趋势,但LR仍然有着理论完备、训练速度快、物理意义清晰等优势。对于业务发展初期,LR仍然是首选。最后,LR模型本身并不... 阅读全文