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 相关文章推荐
跟老齐学Python之Import 模块
Oct 13 Python
Python爬虫包 BeautifulSoup  递归抓取实例详解
Jan 28 Python
基于Python_脚本CGI、特点、应用、开发环境(详解)
May 23 Python
利用python打印出菱形、三角形以及矩形的方法实例
Aug 08 Python
Python实现针对含中文字符串的截取功能示例
Sep 22 Python
python寻找list中最大值、最小值并返回其所在位置的方法
Jun 27 Python
Python3 mmap内存映射文件示例解析
Mar 23 Python
Django crontab定时任务模块操作方法解析
Sep 10 Python
Python实现Kerberos用户的增删改查操作
Dec 14 Python
Python爬虫后获取重定向url的两种方法
Jan 19 Python
Python基于Tkinter开发一个爬取B站直播弹幕的工具
May 06 Python
Django使用channels + websocket打造在线聊天室
May 20 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
饭制《星际争霸》Mod:优化游戏机制 增加新单位
2017/07/02 星际争霸
CodeIgniter配置之routes.php用法实例分析
2016/01/19 PHP
php结合redis高并发下发帖、发微博的实现方法
2016/12/15 PHP
Laravel中任务调度console使用方法小结
2017/05/07 PHP
PHP使用curl_multi实现并发请求的方法示例
2018/04/29 PHP
laravel 5.3 单用户登录简单实现方法
2019/10/14 PHP
TP5框架实现自定义分页样式的方法示例
2020/04/05 PHP
javascript下function声明一些小结
2007/12/28 Javascript
Javascript 读书笔记索引贴
2010/01/11 Javascript
js对象之JS入门之Array对象操作小结
2011/01/09 Javascript
取得窗口大小 兼容所有浏览器的js代码
2011/08/09 Javascript
页面加载完成后再执行JS的jquery写法以及区别说明
2014/02/22 Javascript
JavaScript基于setTimeout实现计数的方法
2015/05/08 Javascript
js密码强度校验
2015/11/10 Javascript
js读取并解析JSON类型数据的方法
2015/11/14 Javascript
jQuery中Datatables增加跳转到指定页功能
2017/02/08 Javascript
angularjs $http实现form表单提交示例
2017/06/09 Javascript
vue2手机APP项目添加开屏广告或者闪屏广告
2017/11/28 Javascript
Node.js动手撸一个静态资源服务器的方法
2019/03/09 Javascript
微信小程序服务器日期格式化问题
2020/01/07 Javascript
JS中作用域以及变量范围分析
2020/07/18 Javascript
vue 保留两位小数 不能直接用toFixed(2) 的解决
2020/08/07 Javascript
python之模拟鼠标键盘动作具体实现
2013/12/30 Python
Django 添加静态文件的两种实现方法(必看篇)
2017/07/14 Python
分数霸榜! python助你微信跳一跳拿高分
2018/01/08 Python
python 8种必备的gui库
2020/08/27 Python
详解Django关于StreamingHttpResponse与FileResponse文件下载的最优方法
2021/01/07 Python
继承时候类的执行顺序问题,一般都是选择题,问你将会打印出什么?
2015/11/18 面试题
临床医学应届生求职信
2013/11/06 职场文书
优秀毕业生事迹材料
2014/02/12 职场文书
世界气象日活动总结
2015/02/27 职场文书
2015年社区环境卫生工作总结
2015/04/21 职场文书
中秋节感想
2015/08/10 职场文书
php字符串倒叙
2021/04/01 PHP
如何用PHP实现多线程编程
2021/05/26 PHP
java中用float时,数字后面加f,这样是为什么你知道吗
2021/09/04 Java/Android