搭建卷积神经网络时loss计算方式的选择
最近在利用卷积神经网络跑模型的时候,总会出现一些奇奇怪怪的问题,而其中出现次数最多的就是loss值计算方式选择错误问题。在tensorflow中封装的loss值的计算方式有三种:BinaryCrossentropy,SparseCategoricalCrossentropy,CategoricalCrossentropy。下面简单说一下这三种计算方式适用于什么场合?
1.BinaryCrossentropy
常用于二分类问题,当然也可以用于多分类问题,通常需要在网络的最后一层添加sigmoid进行配合使用,其期望输出值(target)需要进行one-hot编码。
2.SparseCategoricalCrossentropy
tf.keras.losses.SparseCategoricalCrossentropy(from_logits=False, reduction=losses_utils.ReductionV2.AUTO,name='sparse_categorical_crossentropy'
)
如果目标是数字编码 ,比如多分类0,1, 2, 3,损失函数用 sparse_categorical_crossentropy。
3.CategoricalCrossentropy
tf.keras.losses.CategoricalCrossentropy(from_logits=False, reduction=losses_utils.ReductionV2.AUTO,name='categorical_crossentropy'
)
如果目标是one-hot 编码,比如二分类【0,1】【1,0】,损失函数用 categorical_crossentropy。这一点与BinaryCrossentropy方法类似。
努力加油a啊
搭建卷积神经网络时loss计算方式的选择相关推荐
- 用PyTorch搭建卷积神经网络
用PyTorch搭建卷积神经网络 本篇是加拿大McGill本科,Waterloo硕士林羿实习时所作的工作.发文共享,主要是面对PyTorch的初学者. 本篇文章是一篇基础向的PyTorch教程,适合有 ...
- Python-深度学习-学习笔记(13):keras搭建卷积神经网络(对二维数据进行一维卷积)
Python-深度学习-学习笔记(13):keras搭建卷积神经网络(对二维数据进行一维卷积) 卷积神经网络进行图像分类是深度学习关于图像处理的一个应用,卷积神经网络的优点是能够直接与图像像素进行卷积 ...
- l2正则化python_TensorFlow keras卷积神经网络 添加L2正则化方式
我就废话不多说了,大家还是直接看代码吧! model = keras.models.Sequential([ #卷积层1 keras.layers.Conv2D(32,kernel_size=5,st ...
- Python图像识别实战(四):搭建卷积神经网络进行图像二分类(附源码和实现效果)
前面我介绍了可视化的一些方法以及机器学习在预测方面的应用,分为分类问题(预测值是离散型)和回归问题(预测值是连续型)(具体见之前的文章). 从本期开始,我将做一个关于图像识别的系列文章,让读者慢慢理解 ...
- (二)Tensorflow搭建卷积神经网络实现MNIST手写字体识别及预测
1 搭建卷积神经网络 1.0 网络结构 图1.0 卷积网络结构 1.2 网络分析 序号 网络层 描述 1 卷积层 一张原始图像(28, 28, 1),batch=1,经过卷积处理,得到图像特征(28, ...
- 【深度学习】Tensorflow搭建卷积神经网络实现情绪识别
[深度学习]Tensorflow搭建卷积神经网络实现情绪识别 文章目录 1 Tensorflow的基本使用方法1.1 计算图1.2 Feed1.3 Fetch1.4 其他解释 2 训练一个Tensor ...
- AI周报丨《2021年人工智能专利综合指数报告》近日发布;北大团队提出基于卷积神经网络的全光计算,超快、超低能耗
行业动态 <2021年人工智能专利综合指数报告> 近日发布 人工智能(Artificial Intelligence,简称AI),是研究人类智能活动规律,构造具有一定智能的人工系统,国际数 ...
- 从零开始用TensorFlow搭建卷积神经网络
https://www.jiqizhixin.com/articles/2017-08-29-14 机器之心GitHub项目:从零开始用TensorFlow搭建卷积神经网络 By 蒋思源2017 ...
- tensorflow训练神经网络时loss出现nan的问题
tensorflow训练神经网络时loss出现nan的问题 一般情况下原因是由于优化器上的学习比率learning_rate定义值太大,如: train_step = tf.compat.v1.tra ...
最新文章
- centos加单个ip和批量添加
- AFei Loves Magic
- SAP Spartacus全局配置里和路由Route相关的配置
- Downloading Android Source Code
- xvid 数据编码和解码
- 70%的单身女孩都是这样想的!
- win7电脑蓝屏没有修复计算机,教你win7开机蓝屏怎么修复
- ERROR: cuda_runtime_api.h: No such file or directory
- kafka介绍和集群环境搭建
- Python 西瓜书机器学习支持向量机(SVM)
- AST语法结构树初学者完整教程
- 一键解决 500、502和504 Internal Privoxy Error 问题(图文详解)
- 数据库 -- 单表的数据查询
- Myeclipse字符集设置
- 前端怎么加粗字体_价值上百万美元又备受争议的微软雅黑正常大小+小字体
- Lingo教育版免费申请流程
- phpstorm运行php项目步骤
- 只有程序员才能读懂的西游记
- cocos creator使用anysdk接入admob广告教程
- ES6_1.块级作用域绑定_临时死区TDZ
热门文章
- C#连接sqlServer数据库详解
- 微信小程序循环不同列表实现动态点击隐藏
- 结构体和类的区别-Objective-C基础
- solaris php,solaris 十系统上架构phpwind论坛环境(转)
- php返回mysql错误语句_[已解决]php查询mysql返回了错误的结果
- Visual Studio Code 中文下载
- java将图片保存进mysql_Java存储图片到Mysql
- java el表达式 导航规则_javaweb之EL表达式语言
- 防止html转义字符,如何防止我的HTML标签被转义?
- Android开发之使用Android studio进行两个项目合并的方法