IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    [原]机器学习-监督学习-cost function

    cgl1079743846发表于 2016-07-30 00:15:47
    love 0

    1.引言

    当我们的训练集如下图1所示,可以假设hypothesis函数如图2

    θ0和θ1我们称为hθ(x)函数的2个参数,h是x的函数,所以有时候也记着h(x)

    对于这个已有的hypothesis,我们需要什么方法来评估这个假设函数的好坏呢?

    因此我们定义了一个叫"代价函数"cost function 来评估当前hθ(x)函数

    2. 代价函数

    cost function也叫作loss function,就是对hθ(x)函数进行评估的一个函数。

    通常来说,模型越准确,越接近真实,其cost function的值就越小。

    cost function 通常用大写字母J表示,由于cost function的大小和hθ(x)的参数取值相关,不难想象,J是θ的函数,用Jθ表示。

    线性回归中的cost function,通常用最小"平方差"来表示,也称为square loss,

    有2个参数θ0和θ1的时候,可以定义cost function函数如下所以

    这里x和y的右上角标i,表示training set中第i个数据的特征向量和实际值,加括号表示是第i个,而不是i次幂

    由cost function定义可以知道,当hθ(x)对training set测试结果完全正确的时候,const function的值是0

    因此我们的目标,就是尽量优化hθ(x),不断更改参数θ0 ~ θn 的值,使得Jθ的值最小,即上图中的Goal

    3. 举例

    为了简化模型,我们假设hθ(x)只有2个参数θ0和θ1,同时假设θ0 = 0

    因此hθ(x) = θ1X

    我们根据θ1的值等于 -1,0,1,2 可以画出cost function J(θ)的函数图像如下所示

    不难发现,当θ1 =1 的时候training set能够和hθ(x) 完美拟合成一条直线,此时J(θ)值最小为0

    类似的,当θ0不等于0的时候,此时hθ(x)有2个不为0的参数θ0和θ1,J(θ)的图像可能如下图所示



沪ICP备19023445号-2号
友情链接