python编写softmax函数、交叉熵函数实例


Posted in Python onJune 11, 2020

python编写softmax函数、交叉熵函数实例

python代码如下:

import numpy as np
 
# Write a function that takes as input a list of numbers, and returns
# the list of values given by the softmax function.
def softmax(L):
 pass
 expL = np.exp(L)
 sumExpL = sum(expL)
 result = []
 for i in expL:
  result.append(i*1.0/sumExpL)
 return result

python编写交叉熵公式:

import numpy as np
 
def cross_entropy(Y, P):
 Y = np.float_(Y)
 P = np.float_(P)
 return -np.sum(Y * np.log(P) + (1 - Y) * np.log(1 - P))

补充知识:分类时,为什么不使用均方误差而是使用交叉熵作为损失函数

MSE(均方误差)对于每一个输出的结果都非常看重,而交叉熵只对正确分类的结果看重。

例如:在一个三分类模型中,模型的输出结果为(a,b,c),而真实的输出结果为(1,0,0),那么MSE与cross-entropy相对应的损失函数的值如下:

MSE:

python编写softmax函数、交叉熵函数实例

cross-entropy:

python编写softmax函数、交叉熵函数实例

从上述的公式可以看出,交叉熵的损失函数只和分类正确的预测结果有关系,而MSE的损失函数还和错误的分类有关系,该分类函数除了让正确的分类尽量变大,还会让错误的分类变得平均,但实际在分类问题中这个调整是没有必要的。

但是对于回归问题来说,这样的考虑就显得很重要了。所以,回归问题熵使用交叉上并不合适。

以上这篇python编写softmax函数、交叉熵函数实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用Protocol Buffers的C语言拓展提速Python程序的示例
Apr 16 Python
python安装教程 Pycharm安装详细教程
May 02 Python
python实现对excel进行数据剔除操作实例
Dec 07 Python
Python+matplotlib实现计算两个信号的交叉谱密度实例
Jan 08 Python
解决python os.mkdir创建目录失败的问题
Oct 16 Python
Python3爬虫学习之将爬取的信息保存到本地的方法详解
Dec 12 Python
Python+OpenCV采集本地摄像头的视频
Apr 25 Python
Python 实现数据结构中的的栈队列
May 16 Python
python字典改变value值方法总结
Jun 21 Python
Python2与Python3的区别点整理
Dec 12 Python
Pytorch保存模型用于测试和用于继续训练的区别详解
Jan 10 Python
Python用access判断文件是否被占用的实例方法
Dec 17 Python
python能开发游戏吗
Jun 11 #Python
使用sklearn对多分类的每个类别进行指标评价操作
Jun 11 #Python
python属于解释语言吗
Jun 11 #Python
numpy的Fancy Indexing和array比较详解
Jun 11 #Python
python如何更新包
Jun 11 #Python
浅谈keras中自定义二分类任务评价指标metrics的方法以及代码
Jun 11 #Python
Keras中的多分类损失函数用法categorical_crossentropy
Jun 11 #Python
You might like
长波知识介绍
2021/03/01 无线电
php定时计划任务与fsockopen持续进程实例
2014/05/23 PHP
PHP简单获取及判断提交来源的方法
2016/04/22 PHP
利用PHP自动生成印有用户信息的名片
2016/08/01 PHP
ajax调用返回php接口返回json数据的方法(必看篇)
2017/05/05 PHP
laravel5表单唯一验证的实例代码
2019/09/30 PHP
再次更新!MSClass (Class Of Marquee Scroll通用不间断滚动JS封装类 Ver 1.6)
2007/02/05 Javascript
用JAVASCRIPT如何给<textarea></textarea>赋值
2007/04/20 Javascript
JS网络游戏-(模拟城市webgame)提供的一些例子下载
2007/10/14 Javascript
js 设置选中行的样式的实现代码
2010/05/24 Javascript
JavaScript中最简洁的编码html字符串的方法
2014/10/11 Javascript
js实现非常简单的焦点图切换特效实例
2015/05/07 Javascript
Javascript进制转换实例分析
2015/05/14 Javascript
灵活的理解JavaScript中的this指向
2016/02/25 Javascript
js实现5秒倒计时重新发送短信功能
2017/02/05 Javascript
基于vue2.0动态组件及render详解
2018/03/17 Javascript
vue-cli axios请求方式及跨域处理问题
2018/03/28 Javascript
详解vue添加删除元素的方法
2018/06/30 Javascript
详解element-ui中el-select的默认选择项问题
2019/08/02 Javascript
Vue 实现v-for循环的时候更改 class的样式名称
2020/07/17 Javascript
[01:43]倾听DOTA2英雄之声 魅惑魔女国服配音鉴赏
2013/06/06 DOTA
python下如何让web元素的生成更简单的分析
2008/07/17 Python
python获得文件创建时间和修改时间的方法
2015/06/30 Python
Python实现的简单dns查询功能示例
2017/05/24 Python
代码详解django中数据库设置
2019/01/28 Python
windows下numpy下载与安装图文教程
2019/04/02 Python
pybind11和numpy进行交互的方法
2019/07/04 Python
python智联招聘爬虫并导入到excel代码实例
2019/09/09 Python
Python实现TCP通信的示例代码
2019/09/09 Python
事业单位公务员的职业生涯规划
2014/01/15 职场文书
第二课堂活动总结
2014/05/07 职场文书
幼儿教师自我剖析材料
2014/09/29 职场文书
高校群众路线教育实践活动剖析材料
2014/10/10 职场文书
领导班子整改措施
2014/10/24 职场文书
教师岗位说明书
2015/09/30 职场文书
基于Python编写一个监控CPU的应用系统
2022/06/25 Python