机器学习笔记1

1.问题模型:

1.1回归问题(Regression):

eg:房价预测,温度预测;

1.2分类(Classification):

eg:邮件分类,输入图片输出预测;

2.问题求解

2.1建立模型

一般根据domain knowledge建立模型,例如y=w*x+b,x为输入,y为输出,w和b为参数,w为weight,b为bias。domain knowledge是先验知识即部分已有的知识。

2.2定义损失函数

MAEloss/MSEloss/Cross-entropy:

Entorpy=-\sum_{i}P(i)log_2P(i)

2.3优化参数

优化的目标是找到使L最小的参数,即找到使得loss最小的参数w和b

优化方法:梯度下降(gradient descend)

先进行参数的随机初始化,求出梯度,进行参数更新。

其中\eta为learning rate,其大小控制学习速率,为一个hyperparameters(超参数是需要自己所设定的参数)

可能存在local minima问题。

 2.4 测试

对test集运用模型进行测试,观察效果。

由于根据domain knowledge得出的模型可能不准确,即存在model bias,这时需要将线性模型转变为神经网络。一个曲线可以用多个sigmoid组合而成,如图

在这里插入图片描述

sigmoid函数如下:

sigmoid函数参数:

 

最后得出的模型为:

此时引入了更多的参数,进行运算时可以进行向量化转化为矩阵运算。注意这个sigmoid的数目是可以自己定的(就是神经网络里的神经元的数目是可以自己定的),而且sigmoid越多,可以产生出的piecewise linear function就越复杂(可以产生和sigmoid一样多的线段)。

也可以用RELU函数替换sigmod函数,一个sigmod函数需要替换为两个RELU函数,且通常用RELU而不用sigmod。RELU函数如下:

 Sigmoid函数和RELU函数均为activation function

模型更新后,模型的loss为

进行优化参数时所有参数都需要更新

在这里插入图片描述

在实际运行中,不会一次运行所有数据,而会用batch:将整个数据分成很多batch,每次运行一个batch,update一次参数;将所有batch运行完一次,是为一个epoch

在这里插入图片描述

超参数(hyperparameter):模型中需要自己手动设置的参数,例如batchsize,learning rate等

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值