为Torch创建hdf5训练文件
Torch 是用C/CUDA作为底层实现,用LuaJIT作为接口的机器学习算法框架。
HDF5是用于海量复杂数据集管理的技术,能够支持多种平台与多种语言接口(C,C++,Python等)。
Torch的tutorial只提供了处理images和random tensors的方法,并没有对其他格式提供示例。本文使用将对如何创建HDF5数据集以及如何在Torch中使用HDF5文件格式做一个梳理。
一.安装 hdf5
1. torch 平台上安装
git clone https://github.com/anibali/torch-hdf5.git
cd torch-hdf5
git checkout hdf5-1.10
luarocks make hdf5-0-0.rockspec
2.python安装
sudo pip install h5py
二. 使用Python创建HDF文件
1.创建HDF5对象
import h5py
import os
f=h5py.File('train.h5','w') #以'w'模式创建一个名为'train.h5'的HDF5对象
f.create_dataset('data',(100,3,32,32),dtype='f8') #有100个样本,每个样本有三个通道
f.create_dataset('label',(100,1),dtype='i') #创建存放label的dataset,尺寸是100*1
2.写入数据
写入数据其实很简单,只需要对dataset中的每个对象赋值即可。我们使用numpy随机生成的数据为例进行赋值。
import numpy as np
for i in range(100):temp=np.random.random((3,32,32))f['data'][i]=temp #写入dataf['label'][i]=i%4 #写入label
f.close()
以上,即可生成一个用于训练的train.hdf5文件。
三. 在torch中使用HDF5文件
在torch中读取HDF5文件需要用到torch-hdf5。
require 'hdf5';
myFile=hdf5.open('path_to_hdf5_file','r') --读入HDF5文件
trainset={data=myFile:read('data'):all(),label=myFile:read('label'):all():byte()}
trainset是与官方tutorial读取’cifar10-train.t7’ 后同样的对象。
trainset --输入trainset并执行后可以看到trainset的信息如下----------------执行输出的信息-------------------------------------------------
{
data : DoubleTensor - size: 100×3×32×32
label : ByteTensor -size: 100×1
}
参考:http://withwsf.github.io/2015/12/23/torch-hdf5/
https://blog.csdn.net/u013548568/article/details/79732856
为Torch创建hdf5训练文件相关推荐
- 基于python为Torch创建hdf5训练文件
我们知道Torch框架需要符合其自身规格的输入数据的格式,在图像识别中用到的是以.t7扩展名的文件类型,本来我一直也想找如何将.T7文件转换的方法,查了很多资料,有通过mat转.t7的方法,但是无意间 ...
- torch 使用hdf5训练
Torch 是用C/CUDA作为底层实现,用LuaJIT作为接口的机器学习算法框架. HDF5是用于海量复杂数据集管理的技术,能够支持多种平台与多种语言接口(C,C++,Python等). Torch ...
- 【训练过程】1) Create Training File(创建训练文件)
1) Create Training File(创建训练文件) Put the folders of VOC dataset(clean images是原始的干净图像(VOC)), collected ...
- ENVI_IDL: 创建HDF5文件并写入数据(以将Geotiff文件写入HDF文件为例) + 详细解析
目录 1. 学习内容 2. 知识储备 3. 编程 1. 学习内容 文如标题:就是自己创建HDF文件并将数据写入其中 ------------------------------------------ ...
- DL之CNN:基于CRNN_OCR算法(keras,CNN+RNN)利用数据集(torch,mdb格式)训练来实现新图片上不定长度字符串进行识别—训练过程
DL之CNN:基于CRNN_OCR算法(keras,CNN+RNN)利用数据集(torch,mdb格式)训练来实现新图片上不定长度字符串进行识别-训练过程 目录 输出结果 设计思路 核心代码 输出结果 ...
- 深度学习训练文件批量制作——arcgis pro软件(傻瓜式操作)
想要批量制作深度学习训练文件(特别是遥感文件)在网上找了很久的代码或者方法,发现不怎么适用,或者是说太过复杂了(电脑环境.包的版本等一系列问题,博主的环境可以用,到我电脑上我就一堆版本问题,又不好去改 ...
- Halcon学习笔记(八)——OCR初步创建并训练OCR分类器
第一讲 OCR:(Optical Character Recognition,光学字符识别)是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,通过检测暗.亮的模式确定其形状,然后用字符识别方法将 ...
- java 默认数据库创建路径_无法创建数据库路径文件:/ user / hive /仓库错误
我有一个3个节点的群集,并且在运行某些HVE查询时遇到以下错误 FAILED:元数据错误:MetaException(消息:无法创建数据库路径文件:/user/hive/warehouse/db_du ...
- android 创建隐藏文件夹吗,Android创建隐藏文件可能文件夹
Android创建隐藏文件或者文件夹 android创建隐藏文件或者文件夹,其实只要在文件名或者文件夹名字前加一个点号即可. 隐藏文件(夹)可直接进行读写. 如果需要去除隐藏,那就是重命名,去除点即可 ...
最新文章
- Cloudify — 部署 OpenStack 基础设施
- bat 复制文件夹_怎么生成电脑上文件夹的目录结构
- ResorceGovernor--基础和Demo
- React开发(177):opentab没有menu会报错
- 【蓝桥杯官网试题 - 算法提高 】P0404(模拟)
- 网络压缩《network pruning 浅析》
- 双光子荧光成像_有机双光子荧光染料在生物成像中的应用取得新进展
- Android将应用调试log信息保存在SD卡
- 网页设计中时尚​​的下拉菜单案例
- 杀毒jwgkvsq.vmx
- 《Clean Code》 代码简洁之道
- DS1302 原理及操作方法
- 《Google软件测试之道》读书笔记---第一章
- 在马克思手稿中有一道趣味的数学问题:一共有30个人,可能包括男人,女人和小孩。他们在一家饭馆吃饭共花了50先令,其中每个男人花3先令,每个女人花2先令,每个小孩花1先令。请问男人、女人和小孩各几人?
- 解决Android studio 模拟器闪烁黑屏问题
- 发展心理学类毕业论文文献包含哪些?
- 利用Java SE基本知识是开发【学生信息管理系统】中
- Linux 运维安全策略(一)
- win10内置Ubuntu安装图形界面
- 一道简单的Python面试题,却涵盖诸多考点,快来试试吧!
热门文章
- RSA的运用和前后端签名的一些看法
- 【golang】Go语言学习-time包
- python自动标注autocad坐标_Python+matplotlib数据可视化鼠标悬停自动标注功能实现
- steam教育课程是什么总结
- 后疫情时代2020年后游戏引擎技术会如何发展?
- BERT embedding 降维--BERT whitening
- oracle、sqlserver、mysql常用函数对比[to_char、to_number、to_date]
- windows11 安装Kibana
- 国家计算机二级office要准备多久,全国计算机二级考试office一周复习计划
- Java map去空值