神经网络的代价函数解释
机器学习神经网络代价函数解释
首先回忆一下逻辑回归的代价函数
J(θ)=−1m∑i=1m[y(i)loghθ(xi)+(1−y(i))log(1−hθ(x(i)))]+λ2m∑j=1mθj2J\left(\theta\right)=-\frac{1}{m}\sum_{i=1}^{m}\left[y^{\left(i\right)}\log{h_\theta\left(x^i\right)}+\left(1-y^{\left(i\right)}\right)\log{\left(1-h_\theta\left(x^{\left(i\right)}\right)\right)}\right]+\frac{\lambda}{2m}\sum_{j=1}^{m}\theta_j^2 J(θ)=−m1i=1∑m[y(i)loghθ(xi)+(1−y(i))log(1−hθ(x(i)))]+2mλj=1∑mθj2
根据之前的6-4小节(小节为吴恩达ML课程的章节号),定义的逻辑回归代价函数为:
J(θ)=1m∑i=1mCost(hθ(x(i)),y(i))J\left(\theta\right)=\frac{1}{m}\sum_{i=1}^{m}Cost\left(h_\theta\left(x^{\left(i\right)}\right),y^{\left(i\right)}\right) J(θ)=m1i=1∑mCost(hθ(x(i)),y(i))
其中:
Cost(hθ(x),y)=−log(hθ(x))ify=1−log(1−hθ(x))ify=0Cost\left(h_\theta\left(x\right),y\right)={-\log{\left(h_\theta\left(x\right)\right)}\ \ \ \ \ \ \ \ \ \ \ if\ y=1\atop-\log{\left(1-h_\theta\left(x\right)\right)}\ \ \ if\ y=0} Cost(hθ(x),y)=−log(1−hθ(x)) if y=0−log(hθ(x)) if y=1
将Cost函数简化为:
Cost(hθ(x),y)=−y×log(hθ(x))−(1−y)×log(1−hθ(x))Cost\left(h_\theta\left(x\right),y\right)=-y\times\log{\left(h_\theta\left(x\right)\right)}-\left(1-y\right)\times\log{\left(1-h_\theta\left(x\right)\right)} Cost(hθ(x),y)=−y×log(hθ(x))−(1−y)×log(1−hθ(x))
然后根据7-2小节,还需要将代价函数正则化。
正则获得主要方法是在代价函数之后加上,一个修正项,使θ减小。
最终就得到了逻辑回归的代价函数。
再来看神经网络的代价函数:
J(Θ)=−1m∑i=1m{∑k=1K[yk(i)log(hΘ(x(i)))k+(1−yk(i))log(1−hΘ(x(i)))k]}+λ2m∑l=1L∑i=1sl∑j=1sl+1(Θji(l))2J\left(\Theta\right)=-\frac{1}{m}\sum_{i=1}^{m}\left\{\sum_{k=1}^{K}\left[y_k^{\left(i\right)}\log{\left(h_\Theta\left(x^{\left(i\right)}\right)\right)_k}+\left(1-y_k^{\left(i\right)}\right)\log{\left(1-h_\Theta\left(x^{\left(i\right)}\right)\right)_k}\right]\right\}+\frac{\lambda}{2m}\sum_{l=1}^{L}\sum_{i=1}^{s_l}\sum_{j=1}^{s_l+1}\left(\Theta_{ji}^{\left(l\right)}\right)^2 J(Θ)=−m1i=1∑m{k=1∑K[yk(i)log(hΘ(x(i)))k+(1−yk(i))log(1−hΘ(x(i)))k]}+2mλl=1∑Li=1∑slj=1∑sl+1(Θji(l))2
换了大括号和中括号大家是不是一目了然。
大括号中就是一项代价函数,只不过这一项是由K阶向量组成,因此需要将K阶向量的每一阶的代价相加这样就得到一项。
后面的正则化项大家可以看看8-4小节中公式的表达:
g([θ10(1)θ11(1)θ12(1)θ20(1)θ21(1)θ22(1)θ30(1)θ31(1)θ32(1)θ13(1)θ23(1)θ33(1)]×[x0x1x2x3])g\left(\left[\begin{matrix}\theta_{10}^{\left(1\right)}&\theta_{11}^{\left(1\right)}&\theta_{12}^{\left(1\right)}\\\theta_{20}^{\left(1\right)}&\theta_{21}^{\left(1\right)}&\theta_{22}^{\left(1\right)}\\\theta_{30}^{\left(1\right)}&\theta_{31}^{\left(1\right)}&\theta_{32}^{\left(1\right)}\\\end{matrix}\ \ \ \ \begin{matrix}\theta_{13}^{\left(1\right)}\\\theta_{23}^{\left(1\right)}\\\theta_{33}^{\left(1\right)}\\\end{matrix}\right]\times\left[\begin{matrix}x_0\\x_1\\x_2\\x_3\\\end{matrix}\right]\right) g⎝⎜⎜⎛⎣⎢⎡θ10(1)θ20(1)θ30(1)θ11(1)θ21(1)θ31(1)θ12(1)θ22(1)θ32(1) θ13(1)θ23(1)θ33(1)⎦⎥⎤×⎣⎢⎢⎡x0x1x2x3⎦⎥⎥⎤⎠⎟⎟⎞
代价函数中的正则项:其中第一个求和符号中得字母’L’代表第几层的θ参数,第二个求和符号中得字母’i’代表第几列,第二个求和符号中得字母’j’代表第几行。公式中只不过是将字母"j"改为从1计数罢了。
神经网络的代价函数解释相关推荐
- 神经网络相关名词解释
神经网络相关名词解释 这篇文章的目的是把之前概念理解的名词用公式记忆一下. 1. 正则化 1.0 过拟合 这是正则化主要解决的问题. 过拟合现象主要体现在accuracy rate和cost两方面: ...
- 机器学习:神经网络的代价函数及反向传播算法
在<机器学习:神经网络的模型构建>中,我记录了神经网络的一些基础知识,包括神经网络的逻辑单元.模型表示.前向传播等等.这篇笔记中,我会整理神经网络的代价函数以及反向传播算法- 那么如何在给 ...
- 收藏 | 深度学习中神经网络的可视化解释!
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自:计算机视觉联盟 第一个卷积神经网络是Alexander ...
- Nat.Commun.|使用基于注意力机制的多标签神经网络预测并解释12种RNA修饰
今天介绍来自西交利物浦大学和福建医科大学的Zitao Song, Daiyun Huang等人六月份发表在Nature Communication的文章"Attention-based mu ...
- 表征学习、图神经网络、可解释的 AI,ML 机器人七大研究进展一览
2020-01-21 05:41:47 作者 | Gregory J Stein编译 | 翻译官balala 编辑 | 丛末 随着每一年的结束,麻省理工学院电气工程与计算机科学系博士 Gregory ...
- 论文浅尝 - SWJ | 基于知识图谱和注意力图卷积神经网络的可解释零样本学习
论文题目:Explainable Zero-shot Learning via Attentive Graph Convolutional Network and Knowledge Graphs 本 ...
- 【深度学习系列】——神经网络的可视化解释
这是深度学习系列的第三篇文章,欢迎关注原创公众号 [计算机视觉联盟],第一时间阅读我的原创!回复 [西瓜书手推笔记] 还可获取我的机器学习纯手推笔记! 深度学习系列 [深度学习系列]--深度学习简介 ...
- 吴恩达机器学习笔记(七)神经网络:代价函数
Neural Networks:Learning Cost function 逻辑回归代价函数: J(θ)=−1m∑i=1m(y(i)log(hθ(x(i)))+(1−y(i))log(1−hθ( ...
- 第五章(1.1)深度学习——神经网络相关名词解释
一.前言 很多人认为深度学习很枯燥,大部分情况是因为对深度学习的学术词语,特别是专有名词很困惑,即便对相关从业者,亦很难深入浅出地解释这些词语的含义. 人工智能,深度学习,机器学习-无论你在做什么,如 ...
最新文章
- spring-ioc-xml
- chrome浏览器插件开发经验(一)
- 【SpringBoot零基础案例06】【IEDA 2021.1】多环境下.properties配置文件的使用
- background image
- 前端学习(2712):重读vue电商网站32之让菜单栏展开与折叠
- CRM【第三篇】: crm业务
- Java垃圾回收器的工作原理
- flash(as3.0)在线聊天室
- c语言printf源码浮点数,printf以%d输出浮点数
- js排序算法详解-冒泡排序
- Python+selenium+eclipse执行web自动化(四)控件处理
- linux更新软件时,白天速度远超晚上
- button按钮的四种监听及实例
- 基于Delphi7的木马程序的查杀设计与实现
- Stata:面板数据模型的完整步骤(NPL与企业绿色创新)
- Cheat Engine逆向修改植物大战僵尸(外挂)
- 我在国图读完的第一本书——《少有人走的路》
- java多态性表现在哪两个方面_Java的多态性主要表现在______、______和______三个方面。...
- Caffe中的solver文件参数
- IMU及磁力计AHRS系统控制(一):传感器物理实现原理
热门文章
- 用java制作扑克牌_Java模拟扑克牌洗牌实现生成52张扑克的方法示例
- kali linux 软件管理_白帽子***与网络安全工程师教你:Kali Linux和Windows软件管理的异同【二】...
- mysql 中enum用法
- 行内块元素加了文字会被挤下来的原因及解决方法。
- springboot之监听器
- DTOJ 1587:Hamsters(hamsters)
- 企业名片怎么做成二维码?如何在线生成二维码图片?
- UID、EUID、GID和EGID
- 八.常用查询及关系的实现(二) 2021-03-08
- Idea配置JRebel插件的详细配置及图解