黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

python h5py 操作 —— 以cifar數據集為例

系統 2454 0

本文要做的是如何把cifar-10數據集創建并寫入hdf5文件中,以介紹python操作HDF類文件的常用方法

1、從官網下載數據集cifar-10:cifar官網(注意下載python版的)

下載完后要先解壓,不能直接上代碼;Linux下解壓:

            
              tar -zxvf 壓縮包名.tar.gz  # 適用于.tar.gz文件
unzip filename.zip # 適用于zip文件
            
          

解壓后看到下面情況: python h5py 操作 —— 以cifar數據集為例_第1張圖片

然后才能上以下代碼來讀取數據文件:

            
              import cPickle as pickle

def unpickle(file):
    fo = open(file, 'rb')
    dict = pickle.load(fo)
    fo.close()
    return dict['data'], dict['labels']

# 這樣就可以讀取每個batch的數據了,一個batch包含10000個樣本以及對應的標簽,從batch_1到5是5萬個訓練樣本,還有個test_batch是一萬個測試樣本以及對應標簽;
            
          

假設我對cifar處理后得到三個文件分別為‘cifar_rc_32.npy’,‘cifar_rc_64.npy’,‘cifar_rc_128.npy’三個文件,要創建或寫入‘cifar.hdf5’:

            
              import h5py
import numpy as np

rc_32 = np.load('cifar_rc_32.npy')
rc_64 = np.load('cifar_rc_64.npy')
rc_128 = np.load('cifar_rc_128.npy')

f = h5py.File('cifar.hdf5','w') # 如果沒有會創建,有的話會覆蓋式寫入
#先要創建組,我一開始因為沒有創建組group導致后來的操作會有麻煩,所以建議先創建組:
f.create_group('data')
dataset = f['group'].create_dataset('rc_32',data=rc_32)
dataset.attrs['prob_hh'] = property_value # 還可以給數據集對象添加屬性描述.

f['group'].create_dataset('rc_64',data=rc_64)
f['group'].create_dataset('rc_128',data=rc_128)
# 這樣就在group ‘data’下創建了三個數據集了。

# 寫入數據集還可以有一下操作:
# 準備待寫入數據:
data = np.arange(10000).reshape(100,100)
# 寫入數據:
f['data'] = data

label = np.arange(10000)
f['label/resnet/rc_128'] = label
# 這樣也可以創建數據集
            
          

?其實還有一種快速寫入hdf5文件的方式就是如果你創建過組可以用更方面的方式寫入數據到原來不存在的目錄:

            
              f['labels/resnet1/rc_32']  = rc_32
f['labels/resnet1/rc_64'] = rc_64
f['labels/resnet1/rc_128'] = rc_128
            
          

rc_32、rc_64、rc_128是數據。?

group下面還可以創建group,dataset,是嵌套的,創建group就像創建目錄一樣;創建dataset就像在目錄下寫入有具體名字的數據一樣。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論