Tensorflow 訓(xùn)練自己的數(shù)據(jù)集將數(shù)據(jù)直接導(dǎo)入到內(nèi)存
制作自己的訓(xùn)練集
下圖是我們數(shù)據(jù)的存放格式,在data目錄下有驗(yàn)證集與測試集分別對(duì)應(yīng)iris_test, iris_train

為了向偉大的MNIST致敬,我們采用的數(shù)據(jù)名稱格式和MNIST類似

classification_index.jpg
圖像的index都是5的整數(shù)倍是因?yàn)槲覀冞x擇測試集的原則是每5個(gè)樣本,選擇一個(gè)樣本作為測試集,其余的作為訓(xùn)練集和驗(yàn)證集
生成這樣數(shù)據(jù)的過程相對(duì)簡單,如果有需要python代碼的,可以給我發(fā)郵件,或者在我的github下載
至此,我們的訓(xùn)練集,測試集,驗(yàn)證集就生成成功了,之所以我們的文件夾只有訓(xùn)練集和測試集是因?yàn)槲覀冊诤罄m(xù)的訓(xùn)練過程中,會(huì)在訓(xùn)練集中分出一部分作為驗(yàn)證集,所以兩者暫時(shí)合稱為訓(xùn)練集
將數(shù)據(jù)集寫入到Tensorflow中
1. 直接寫入到隊(duì)列中
import tensorflow as tf
import numpy as np
import os
train_dir = '/home/ruyiwei/data/iris_train/'#your data directory
def get_files(file_dir):
'''
Args:
file_dir: file directory
Returns:
list of images and labels
'''
iris = []
label_iris = []
contact = []
label_contact = []
for file in os.listdir(file_dir):
name = file.split('_')
if name[0]=="iris":
iris.append(file_dir + file)
label_iris.append(0)
else:
contact.append(file_dir + file)
label_contact.append(1)
print('There are %d iris\nThere are %d contact' %(len(iris), len(contact)))
image_list = np.hstack((iris, contact))
label_list = np.hstack((label_iris, label_contact))
temp = np.array([image_list, label_list])
temp = temp.transpose()
np.random.shuffle(temp)
image_list = list(temp[:, 0])
label_list = list(temp[:, 1])
label_list = [int(i) for i in label_list]
return image_list, label_list
為了大家更方便的理解和修改代碼,我們對(duì)代碼進(jìn)行講解如下
1-3行 : 導(dǎo)入需要的模塊
5行: 定義訓(xùn)練集合的位置,這個(gè)需要根據(jù)自己的機(jī)器進(jìn)行修改
7行: 定義函數(shù) get_files
18行: os.listdir(file_dir) 獲取指定目錄file_dir下的所有文件名詞,也就是我們的訓(xùn)練圖片名稱
18行:for file in os.listdir(file_dir): 遍歷所有的圖片
19行: name為一個(gè)數(shù)組,由于我們根據(jù)MINIST來定制的圖片名詞,所以file.split(‘_')會(huì)將圖像名稱分為兩部分,第一部分為classification,通過name[0]來獲得分類信息。
21行、24行:iris.append(file_dir + file)/contact.append(file_dir + file)將圖像的絕對(duì)路徑放入到iris/contact中
22行、25行:label_iris.append(0)/label_contact.append(1)給對(duì)應(yīng)的圖片貼標(biāo)簽
28-29行:將二分類的圖像與標(biāo)簽壓入到list中
31-33行:合并二分類圖像,然后打亂
38行:返回打亂后對(duì)應(yīng)的圖像與標(biāo)簽
在spyder下執(zhí)行如上代碼后會(huì)返回如下信息

這樣圖像和標(biāo)簽信息就被load到了內(nèi)存中,我們接下來就可以利用現(xiàn)有的模型對(duì)圖像進(jìn)行分類訓(xùn)練,模型的選擇和訓(xùn)練的過程,我們會(huì)在后面進(jìn)行講解。
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 基于Tensorflow讀取MNIST數(shù)據(jù)集時(shí)網(wǎng)絡(luò)超時(shí)的解決方式
- tensorflow實(shí)現(xiàn)殘差網(wǎng)絡(luò)方式(mnist數(shù)據(jù)集)
- 使用tensorflow實(shí)現(xiàn)VGG網(wǎng)絡(luò),訓(xùn)練mnist數(shù)據(jù)集方式
- TensorFlow2.X使用圖片制作簡單的數(shù)據(jù)集訓(xùn)練模型
- C#使用TensorFlow.NET訓(xùn)練自己的數(shù)據(jù)集的方法
- TensorFlow車牌識(shí)別完整版代碼(含車牌數(shù)據(jù)集)
- TensorFlow基于MNIST數(shù)據(jù)集實(shí)現(xiàn)車牌識(shí)別(初步演示版)
- 詳解如何從TensorFlow的mnist數(shù)據(jù)集導(dǎo)出手寫體數(shù)字圖片
- tensorflow實(shí)現(xiàn)加載mnist數(shù)據(jù)集
- 詳解tensorflow訓(xùn)練自己的數(shù)據(jù)集實(shí)現(xiàn)CNN圖像分類
- Tensorflow之構(gòu)建自己的圖片數(shù)據(jù)集TFrecords的方法
- 如何從csv文件構(gòu)建Tensorflow的數(shù)據(jù)集
相關(guān)文章
Python使用shutil模塊實(shí)現(xiàn)文件拷貝
這篇文章主要介紹了Python使用shutil模塊實(shí)現(xiàn)文件拷貝,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07
Python?Selenium無法打開Chrome瀏覽器處理自定義瀏覽器路徑的問題及解決方法
Python?Selenium控制Chrome瀏覽器的過程中,由于安裝的Chrome瀏覽器的版本找不到對(duì)應(yīng)版本的驅(qū)動(dòng)chromedriver.exe文件,下載了小幾個(gè)版本號(hào)的驅(qū)動(dòng)軟件都無法正常使用,下面通過本文介紹Python?Selenium無法打開Chrome瀏覽器處理自定義瀏覽器路徑的問題,需要的朋友可以參考下2024-08-08
Python利用Nagios增加微信報(bào)警通知的功能
Nagios是一款開源的免費(fèi)網(wǎng)絡(luò)監(jiān)視工具,能有效監(jiān)控Windows、Linux和Unix的主機(jī)狀態(tài),交換機(jī)路由器等網(wǎng)絡(luò)設(shè)置,打印機(jī)等,本文給大家介紹Python利用Nagios增加微信報(bào)警通知的功能,需要的朋友參考下2016-02-02
78行Python代碼實(shí)現(xiàn)現(xiàn)微信撤回消息功能
這篇文章主要介紹了78行Python代碼實(shí)現(xiàn)現(xiàn)微信撤回消息功能,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-07-07
python實(shí)現(xiàn)簡易計(jì)算器功能
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)簡易計(jì)算器功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02
Python基于win32ui模塊創(chuàng)建彈出式菜單示例
這篇文章主要介紹了Python基于win32ui模塊創(chuàng)建彈出式菜單,結(jié)合實(shí)例形式分析了Python使用win32ui模塊創(chuàng)建彈出式菜單的具體步驟與相關(guān)操作技巧,并附帶說明了win32ui模塊的安裝命令,需要的朋友可以參考下2018-05-05
pyqt5 使用label控件實(shí)時(shí)顯示時(shí)間的實(shí)例
今天小編就為大家分享一篇pyqt5 使用label控件實(shí)時(shí)顯示時(shí)間的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-06-06

