浅谈keras中的keras.utils.to_categorical用法


Posted in Python onJuly 02, 2020

如下所示:

to_categorical(y, num_classes=None, dtype='float32')

将整型标签转为onehot。y为int数组,num_classes为标签类别总数,大于max(y)(标签从0开始的)。

返回:如果num_classes=None,返回len(y) * [max(y)+1](维度,m*n表示m行n列矩阵,下同),否则为len(y) * num_classes。说出来显得复杂,请看下面实例。

import keras

ohl=keras.utils.to_categorical([1,3])
# ohl=keras.utils.to_categorical([[1],[3]])
print(ohl)
"""
[[0. 1. 0. 0.]
 [0. 0. 0. 1.]]
"""
ohl=keras.utils.to_categorical([1,3],num_classes=5)
print(ohl)
"""
[[0. 1. 0. 0. 0.]
 [0. 0. 0. 1. 0.]]
"""

该部分keras源码如下:

def to_categorical(y, num_classes=None, dtype='float32'):
  """Converts a class vector (integers) to binary class matrix.

  E.g. for use with categorical_crossentropy.

  # Arguments
    y: class vector to be converted into a matrix
      (integers from 0 to num_classes).
    num_classes: total number of classes.
    dtype: The data type expected by the input, as a string
      (`float32`, `float64`, `int32`...)

  # Returns
    A binary matrix representation of the input. The classes axis
    is placed last.
  """
  y = np.array(y, dtype='int')
  input_shape = y.shape
  if input_shape and input_shape[-1] == 1 and len(input_shape) > 1:
    input_shape = tuple(input_shape[:-1])
  y = y.ravel()
  if not num_classes:
    num_classes = np.max(y) + 1
  n = y.shape[0]
  categorical = np.zeros((n, num_classes), dtype=dtype)
  categorical[np.arange(n), y] = 1
  output_shape = input_shape + (num_classes,)
  categorical = np.reshape(categorical, output_shape)
  return categorical

补充知识:keras笔记——keras.utils.to_categoracal()函数

keras.utils.to_categoracal (y, num_classes=None, dtype='float32')

将整形标签转为onehot,y为int数组,num_classes为标签类别总数,大于max (y),(标签从0开始的)。

返回:

如果num_classes=None, 返回 len(y)*[max(y)+1] (维度,m*n表示m行n列矩阵),否则为len(y)*num_classes。

以上这篇浅谈keras中的keras.utils.to_categorical用法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python连接mysql数据库的正确姿势
Feb 03 Python
Python如何抓取天猫商品详细信息及交易记录
Feb 23 Python
Python中return self的用法详解
Jul 27 Python
Python打包方法Pyinstaller的使用
Oct 09 Python
Python实现计算字符串中出现次数最多的字符示例
Jan 21 Python
Python 微信之获取好友昵称并制作wordcloud的实例
Feb 21 Python
Python 抓取微信公众号账号信息的方法
Jun 14 Python
jupyter notebook 中输出pyecharts图实例
Apr 23 Python
详解Django定时任务模块设计与实践
Jul 24 Python
Django数据库操作之save与update的使用
Apr 01 Python
python七种方法判断字符串是否包含子串
Aug 18 Python
了解一下python内建模块collections
Sep 07 Python
Python使用OpenPyXL处理Excel表格
Jul 02 #Python
解决keras GAN训练是loss不发生变化,accuracy一直为0.5的问题
Jul 02 #Python
解决keras,val_categorical_accuracy:,0.0000e+00问题
Jul 02 #Python
如何基于Python爬取隐秘的角落评论
Jul 02 #Python
keras中epoch,batch,loss,val_loss用法说明
Jul 02 #Python
Python使用tkinter实现摇骰子小游戏功能的代码
Jul 02 #Python
浅谈keras使用预训练模型vgg16分类,损失和准确度不变
Jul 02 #Python
You might like
给海燕B411配件机起死回生配上件
2021/03/02 无线电
几种显示数据的方法的比较
2006/10/09 PHP
JSON在PHP中的应用介绍
2012/09/08 PHP
执行、获取远程代码返回:file_get_contents 超时处理的问题详解
2013/06/25 PHP
php简单计算年龄的方法(周岁与虚岁)
2016/12/06 PHP
php实现分页功能的详细实例方法
2019/09/29 PHP
xml转json的js代码
2012/08/28 Javascript
纯js实现瀑布流展现照片(自动适应窗口大小)
2013/04/08 Javascript
jQuery实现弹出窗口弹出div层的实例代码
2017/01/09 Javascript
微信小程序 setData的使用方法详解
2017/04/20 Javascript
vue实现多个元素或多个组件之间动画效果
2018/09/25 Javascript
使用p5.js实现动态GIF图片临摹重现
2019/10/23 Javascript
jquery自定义组件实例详解
2020/12/31 jQuery
tornado捕获和处理404错误的方法
2014/02/26 Python
Python中的条件判断语句与循环语句用法小结
2016/03/21 Python
Python利用Django如何写restful api接口详解
2018/06/08 Python
TensorFlow 模型载入方法汇总(小结)
2018/06/19 Python
Python 列表去重去除空字符的例子
2019/07/20 Python
Keras设定GPU使用内存大小方式(Tensorflow backend)
2020/05/22 Python
Python新手学习raise用法
2020/06/03 Python
Django rest framework分页接口实现原理解析
2020/08/21 Python
Django启动时找不到mysqlclient问题解决方案
2020/11/11 Python
CSS实现定位元素居中的方法
2015/06/23 HTML / CSS
CSS3 实现的加载动画
2020/12/07 HTML / CSS
Sephora丝芙兰印尼官方网站:购买化妆品和护肤品
2018/07/02 全球购物
毕业实习个人鉴定范文
2013/12/10 职场文书
大学生职业生涯规划范文——找准自我,定位人生
2014/01/23 职场文书
服务员岗位职责
2014/01/29 职场文书
慰问敬老院活动总结
2014/04/26 职场文书
大型公益活动策划方案
2014/08/20 职场文书
购房委托书范本
2014/09/18 职场文书
企业群众路线教育实践活动心得体会
2014/11/03 职场文书
2014年六五普法工作总结
2014/11/25 职场文书
基层党建工作简报
2015/07/21 职场文书
大学学生会竞选稿
2015/11/19 职场文书
React如何创建组件
2021/06/27 Javascript