Exercise 4: Logistic Regression and Newton’s Method

回顾一下线性回归
hθ(x)=θTx

Logistic Regression
hθ(x)=11+e−θTx=p{y=1|x;θ}

cost(hθ(x),y)的选择
cost(hθ(x),y)=−loghθ(x) (y=1)
选择对数似然损失函数作为逻辑回归的Cost Function 原因是这个cost函数是凸函数,具有碗状的形状,而凸函数具有良好的性质:对
于凸函数来说局部最小值点即为全局最小值点,因此只要能求得这类函数的一个最小值点,该点一定为全局最小值点。
当hθ(x)=1的时候cost =0 反之cost=+∞
同理,cost(hθ(x),y)=−log(1−hθ(x)) (y=0)
当hθ(x)=0的时候cost =0 反之cost=+∞

in summarize

cost(hθ(x),y)=−y loghθ(x)−(1−y)log(1−hθ(x)) (y=1 or 0)
J(θ)=1mcost(hθ(x(i)),y(i))
J(θ)=−1m∑i=1m[y loghθ(x)+(1−y)log(1−hθ(x))]

牛顿迭代法

xn+1=xn−f′(xn)f′′(xn)

decision boundary

hθ(x)=1−g(θTx)=0.5
θ0+θ1x1+θ2x2=0
x2=−1θ2(θ0+θ1x1)
plot_y=−1θ2(θ0+θ1X)

预测不被admitted的概率

prob=1−g(θTx)
for i=1:MAX_ITR
z=x*theta;
h=g(z);
deltaJ= (1/m).* x' * (h - y);
Hessian=(1/m).*x'* diag(h) * diag(1-h) * x;
J(i)= (1/m) * sum (-y.*log(h) - (1-y).*log(1-h) );
theta = theta - Hessian \ deltaJ;
end

关键的地方是 Hessian矩阵的求法:
Ng的课程讲到

H=1m∑i=1m[h(x(i))R(1−h(x(i)))R∗(x(i))∗(x(i))T]

后面的则是

R(n+1)×1∗R1×(n+1)

h(x(i))是向量,因此在矩阵运算的时候,将向量表示成对角矩阵。

diag(h)∗diag(1−h)

本文完

最新文章

  1. ThinkPHP3.2.3整合smarty模板(一)
  2. 详细解说Java Spring的JavaConfig注解 【抄】
  3. Vue.js线程机制问题还是数据双向绑定有延迟的问题
  4. mysql定时任务简单例子
  5. 业务系统的JVM启动参数推荐
  6. 第一次,触碰Web App项目,栽过的那些坑。
  7. 基于GPL329xx linux平台电容屏gsl1680的驱动调试分析
  8. Mac OS X 系统目录结构
  9. 【nodemailer】 之邮件附件
  10. PC-如何提高计算机的启动和关机的速度?
  11. 转:shell 经典, shell 十三问
  12. C# 创建验证码图片
  13. Linux Root密码忘记怎么办?用Vultr vps教程演示重置root密码
  14. C语言程序设计第三次作业——选择结构(一)
  15. 2018春招实习笔试面试总结(PHP)
  16. 微信内分享第三方H5链接无法使用内置浏览器打开的解决方案
  17. 虚拟机部署hadoop集群准备工作之多虚拟机设置网络信息
  18. Web API中使用CORS解决跨域
  19. Android View体系(三)属性动画
  20. ASP.Net MVC(4) 之js css引用与压缩

热门文章

  1. Ubuntu18.04 显卡驱动+Cuda安装踩坑记录 以及Ubuntu虚拟内存的添加
  2. jupyter编辑快捷键
  3. ORM增删改查
  4. 【集群监控】JMX exporter+Prometheus+Grafana监控Hadoop集群
  5. ELK 学习笔记之 elasticsearch 版本控制
  6. 新手学分布式-动态修改Nginx配置的一些想法
  7. rest_framework视图
  8. 编程杂谈——std::vector与List<T>的性能比较
  9. 将自定义功能添加到Spring Data Repository
  10. Spring源码分析(一)预备篇=》基本知识储备