DeepLearning学习笔记——构建机器学习算法

几乎所有的深度学习算法都可以被描述为一个相当简单的配方:特定的数据集、代价函数、优化过程和模型。

例如,现行回归算法有一下部分组成:X和y构成的数据集,代价函数 J(ω,b)=Ex,ypˆdatalogpmodel(y|x) J ( ω , b ) = − E x , y ∼ p ^ d a t a log ⁡ p m o d e l ( y | x ) ,模型是 pmodel(y|x)=N(y;xTw+b,1) p m o d e l ( y | x ) = N ( y ; x T w + b , 1 ) 。在大多数情况下,优化算法可以定义为求接待减函数梯度为零的正规方程。

  意识到我们可以替换独立与其他组件的大多数组件,因此我们能得到很多不同的算法。通常待见函数至少含有一项使学习过程进行统计估计的成分。最常见的待见函数是负对数似然,最小化待见函数导致的最大似然估计。

  待见函数也可能含有附加项,如正则化项。如果我们将该模型变成非线性的,那么大多数待见函数不能通过闭解优化。这就要求我们选择一个迭代数值优化过程,如梯度下降等。

  组合模型、代价和优化算法来构建学习算法的配方同事适用于监督学习和无监督学习。线性回归示例说明了如何适用于监督学习的。无监督学习时,我们需要定义一个只包含X的数据集、一个合适的无监督代价和一个模型。例如,通过指定如下算是函数可以得到PCA的第一个主向量 J(ω)=Expˆdataxr(x;ω)22 J ( ω ) = E x ∼ p ^ d a t a ‖ x − r ( x ; ω ) ‖ 2 2
模型定义为重构函数 r(x)=ωTxω r ( x ) = ω T x ω ,并且w有范数为1的限制。

  在某些情况下,由于计算原因,我们不能实际计算代价函数。在这种情况下,只要我们有近似其梯度的方法,那么我们仍然可以使用迭代数值优化近似最小化目标。

  尽管有时候不显然,但大多数学习算法都用到了上述配方。如果一个机器学习算法看上去特别独特或是手动设计的,那么通常学要使用特殊的优化方法进行求解。有些模型,如决策树或k-均值,需要特殊的优化,因此他们的代价函数有平坦的区域,使其不适合通过基于梯度的优化去最小化。在我们认识到大部分机器学习算法可以使用上述配方描述之后,我们可以将不同算法视为出于相同原因解决相关问题的一类方法,而不是一长串各个不同的算法。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值