当前位置: 首页 > news >正文

机器学习作业七

作业七

1. 推导逻辑回归代价函数的梯度计算公式

y^=g(z)=hθ(x)=11+e−θTx\hat y=g(z)=h_θ(x)=\frac{1}{1+e^{-θ^Tx}}y^=g(z)=hθ(x)=1+eθTx1
L(y^,y)=−ylog(y^)−(1−y)log(1−y^)L(\hat y, y)=-ylog(\hat y)-(1-y)log(1-\hat y)L(y^,y)=ylog(y^)(1y)log(1y^)
J(θ)=1m∑i=1mL(yi^,yi)J(θ)=\frac{1}{m}\sum_{i=1}^{m}L(\hat{y_i},y_i)J(θ)=m1i=1mL(yi^,yi)

梯度下降的目标是通过更新参数 θθθ 来最小化代价函数 J(θ)J(θ)J(θ),更新公式为:θj=θj−α⋅∂J(θ)∂θjθ_j=θ_j-\alpha \cdot \frac{\partial J(θ)}{\partial θ_j}θj=θjαθjJ(θ)

∂J(θ)∂θj\frac{\partial J(θ)}{\partial θ_j}θjJ(θ)
∂Li∂θj=∂Li∂yi^⋅∂yi^∂zi⋅∂zi∂θi=(−yiyi^−1−yi1−yi^)⋅(yi^⋅(1−yi^))⋅xi,j=(yi^−yi)⋅xi,j\frac{\partial L_i}{\partial θ_j}=\frac{\partial L_i}{\partial {\hat {y_i}}}\cdot \frac{\partial {\hat {y_i}}}{\partial z_i}\cdot \frac{\partial z_i}{\partial θ_i}=(-\frac{y_i}{\hat{y_i}}-\frac{1-y_i}{1-\hat{y_i}})\cdot (\hat {y_i}\cdot (1-\hat {y_i}))\cdot x_{i,j}=(\hat{y_i}-y_i)\cdot x_{i,j}θjLi=yi^Liziyi^θizi=(yi^yi1yi^1yi)(yi^(1yi^))xi,j=(yi^yi)xi,j

代入得:
θj=θj−α1m∑i=1m(yi^−yi)⋅xi,jθ_j=θ_j-\alpha \frac{1}{m}\sum_{i=1}^{m}(\hat{y_i}-y_i)\cdot x_{i,j}θj=θjαm1i=1m(yi^yi)xi,j

2. 推导Softmax回归代价函数的梯度计算公式

模型对类别 ccc 的原始得分(logit)为:zc=Wc⋅x=∑j=0nθcjxjz_c=\mathbf{W}_c\cdot x=\sum_{j=0}^{n}θ_{cj}x_jzc=Wcx=j=0nθcjxj

概率分布:yc^=Softmax(z)c=ezc∑c′=1kezc′\hat{y_c}=Softmax(z)_c=\frac{e^{z_c}}{\sum_{c'=1}^{k}e^zc'}yc^=Softmax(z)c=c=1kezcezc

交叉熵损失:L(y^,y)=−∑c=1kyclog(yc^)L(\hat y, y)=-\sum_{c=1}^{k}y_clog(\hat {y_c})L(y^,y)=c=1kyclog(yc^)
总代价函数:J(W)=1m∑i=1mL(y^,y)=−1m∑i=1m∑c=1kyiclog(yic^)J(\mathbf{W})=\frac{1}{m}\sum_{i=1}^{m}L(\hat y, y)=-\frac{1}{m}\sum_{i=1}^{m}\sum_{c=1}^{k}y_{ic}log(\hat {y_{ic}})J(W)=m1i=1mL(y^,y)=m1i=1mc=1kyiclog(yic^)

梯度推导目标:求 ∂J(W)∂θcj=1m∑i=1m∂Li∂θcj\frac{\partial J(\mathbf{W})}{\partial θ_{cj}}=\frac{1}{m}\sum_{i=1}^{m}\frac{\partial L_i}{\partial θ_{cj}}θcjJ(W)=m1i=1mθcjLi

∂Li∂θcj=−∑c′=1kyic′⋅1yic^⋅∂yic′^∂θcj\frac{\partial L_i}{\partial θ_{cj}}=-\sum_{c'=1}^{k}y_{ic'}\cdot \frac{1}{\hat{y_{ic}}}\cdot \frac{\partial \hat{y_{ic'}}}{\partial θ_{cj}}θcjLi=c=1kyicyic^1θcjyic^

∂yic′^∂θcj=\frac{\partial \hat{y_{ic'}}}{\partial θ_{cj}}=θcjyic^=

  • c′=cc'=cc=c 时:yic^(1−yic^)⋅xij\hat{y_{ic}}(1-\hat{y_{ic}})\cdot x_{ij}yic^(1yic^)xij
  • c′ !=cc'\ !=cc !=c 时:−yic′^yic^⋅xij-\hat{y_{ic'}}\hat{y_{ic}}\cdot x_{ij}yic^yic^xij

代入化简得:
∂Li∂θcj=−(yic^−yic)⋅xij\frac{\partial L_i}{\partial θ_{cj}}=-(\hat{y_{ic}}-y_{ic})\cdot x_{ij}θcjLi=(yic^yic)xij

∂J(W)∂θcj=1m∑i=1m(yic^−yic)⋅xij\frac{\partial J(\mathbf{W})}{\partial θ_{cj}}=\frac{1}{m}\sum_{i=1}^{m}(\hat{y_{ic}}-y_{ic})\cdot x_{ij}θcjJ(W)=m1i=1m(yic^yic)xij

http://www.dtcms.com/a/507619.html

相关文章:

  • openEuler安装jdk,nginx,redis
  • ffmpeg 交叉编译
  • Python编程之面向对象
  • 建设一个网站大概费用门户网站开发工具
  • OpenCV cv::Mat.type() 以及类型数据转换
  • Elasticsearch批量写入50万数据
  • 爬取GitHub开源项目信息并生成词云:从数据抓取到可视化实践
  • 做阀门的网站域名有了怎么建设网站
  • 西安交大Nat. Commun:749.276 cm²认证效率19.50%,通过IEC测试迈向产线
  • 百度站长平台登录网站图片自动轮换怎么做的
  • KuiklyUI 科普:UI 如何映射到 Android View 并完成渲染
  • 【2025-系统规划与管理师】第11章:信息系统治理
  • Python中如何实现数据库迁移
  • 第6部分:使用Netty的常见坑与注意事项
  • 广东企业品牌网站建设价格免费做网站的方法
  • 家政小程序系统开发:打造便捷高效的家政服务平台
  • CVE-2025-57833研究分析
  • 基于西门子proneta软件的网络设备台账自动管理软件
  • 深入大模型-12-Python虚拟环境的管理venv和uv和conda
  • DINOv2分类网络onnxruntime和tensorrt部署
  • 医疗网站建设网站wordpress别名时间戳
  • YOLOv3 深度解析:网络架构、核心改进与目标检测实践
  • 数据防泄露(DLP)综合指南:从基础到实践
  • 福鼎网站开发深圳市工程交易服务网
  • 电厂VR安全事故体验系统:让着火体验从 “看见” 变 “亲历”
  • 万网建设网站wordpress伪静态 page
  • 大模型训练显存优化全方案:ZeRO、Offload与重计算技术对比
  • 推客小程序系统开发:从0技术架构与实现细节深度解析
  • YOLOv4 知识点总结
  • 常用的建站工具有哪些体育台球直播