H5文件简介和使用

H5文件简介和使用H5文件是层次数据格式第5代的版本(HierarchicalDataFormat,HDF5),它是用于存储科学数据的一种文件格式和库文件。接触到这个文件格式也是因为上Coursera深度学习课程的时候,作业用到了。它是由美国超级计算与应用中心研发的文件格式,用以存储和组织大规模数据。目前由非营利组织HDF小组提供支持。目前,很多商业和非商业组织都支持这种文件格式,如Java,MATLAB,P…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

H5文件是层次数据格式第5代的版本(Hierarchical Data Format,HDF5),它是用于存储科学数据的一种文件格式和库文件。接触到这个文件格式也是因为上Coursera深度学习课程的时候,作业用到了。它是由美国超级计算与应用中心研发的文件格式,用以存储和组织大规模数据。目前由非营利组织HDF小组提供支持。

目前,很多商业和非商业组织都支持这种文件格式,如Java,MATLAB,Python,R等。

官网网站:https://www.hdfgroup.org/

H5文件在内存占用、压缩、访问速度方面都有非常优秀的特性,在工业领域和科学领域都有很多运用。

H5将文件结构简化成两个主要的对象类型:
1、数据集,就是同一类型数据的多维数组。
2、组,是一种容器结构,可以包含数据集和其他组。

这导致了H5文件是一种真正的层次结构、文件系统式的数据类型。实际上,HDF5文件内部的资源是通过类似POSIX的语法进行访问的(/path/to/resource)。元数据是由用户定义的,以命名属性的形式附加到组和数据集中。更复杂的存储形式如图像和表格可以使用数据集、组和属性来构建。

除了文件格式的先进性,HDF5还包括了一个提升的类型系统,和数据空间对象,用以表示数据区域的选择。API也是关于数据集、组、属性、类型等的面向对象的形式。

由于使用B-tree来索引表格对象,H5非常适合时间序列的数据,如股票价格序列、网络监测序列数据和3D气象数据(中国国家卫星气象中心发布了一个文件HDF5.0使用简介应该也是用了这个数据格式)。

H5本身用C程序提供库函数来提供外部访问的接口。在Python中,主要使用h5py模块来操作相关格式。其读取的函数如下:

def load_data():
    train_dataset = h5py.File('datasets/train_catvnoncat.h5', "r")
    train_set_x_orig = np.array(train_dataset["train_set_x"][:]) # your train set features
    train_set_y_orig = np.array(train_dataset["train_set_y"][:]) # your train set labels

    test_dataset = h5py.File('datasets/test_catvnoncat.h5', "r")
    test_set_x_orig = np.array(test_dataset["test_set_x"][:]) # your test set features
    test_set_y_orig = np.array(test_dataset["test_set_y"][:]) # your test set labels

    classes = np.array(test_dataset["list_classes"][:]) # the list of classes
    
    train_set_y_orig = train_set_y_orig.reshape((1, train_set_y_orig.shape[0]))
    test_set_y_orig = test_set_y_orig.reshape((1, test_set_y_orig.shape[0]))
    
    return train_set_x_orig, train_set_y_orig, test_set_x_orig, test_set_y_orig, classes

train_dataset, train_set_x_orig, train_set_y_orig, test_set_x_orig, test_set_y_orig, classes = load_dataset()
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/195605.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • OAuth2.0 原理流程及其单点登录和权限控制

    点击上方“全栈程序员社区”,星标公众号 重磅干货,第一时间送达 作者:王克锋 kefeng.wang/2018/04/06/oauth2-sso 单点登录是多域名企业站点流行的登录…

    2021年6月28日
    93
  • pc端媒体查询常见的尺寸_头条视频规定多少尺寸

    pc端媒体查询常见的尺寸_头条视频规定多少尺寸PC端按屏幕宽度大小排序

    2025年6月5日
    3
  • 字符串-字典树_求一个字符串的所有子串

    字符串-字典树_求一个字符串的所有子串HDU-1251统计难题POJ-3603PhoneListAcWing-143最大异或对HDU-5536ChipFactory字典树,顾名思义是以树结构来模拟字典。回想我们查字典的过程,比如查找”man”,先翻到字典m部分,再翻第二个字母a和第三个字母n,一共查找3次。查找次数最多是等于个单词的长度。插入查找单词的时间复杂度时O(m)O(m),此外有公共前缀的单词只需存一次公共前缀,节省了空间。

    2025年9月24日
    5
  • 《我在风衣里藏了把刀》—— 转

    《我在风衣里藏了把刀》—— 转那天,我在风衣里藏了把刀,因为我要杀掉一个仇人。我非常恨她,但又不敢骂她,所以我只好选择谋杀。她的个子不高,却是武校的高才生,我估计空手打不过她,所以得藏把刀。她很漂亮,但从来都不看我一眼,所以

    2022年7月2日
    21
  • sop流程图模板_SOP模板-标准操作流程编写程序.doc「建议收藏」

    sop流程图模板_SOP模板-标准操作流程编写程序.doc「建议收藏」SOP模板-标准操作流程编写程序PAGE第PAGE7页共NUMPAGES7页标准操作流程编写程序编制部门:商务部文件审核:文件批准:批准日期:2005.05.25修改记录修改时间修改摘要批准人修改申请单号2005-5-25修改部门编码1目的指导文件编写者能够高效的编写出符合文件编写标准程序的文件来。范围此文件适合所有编写标准操作流程的文件编写人员。3职责3.1…

    2022年5月26日
    71
  • pycharm激活码2022【2021.10最新】

    (pycharm激活码2022)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月29日
    77

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号