標籤:rac 技術分享 image mit tps 驗證 eval tar 列印
在測試中分析一下ide的效果,在pycharm中測試的時候老師提示記憶體溢出,而且跑autoKeras的cnn時確實消耗很大空間。但是同樣的電腦,換了vscode進行測試的時候沒有問題。我也不知道什麼回事。推薦如果電腦運行記憶體沒有12G建議別跑了。剛好的話建議使用vscode這款ide執行效率比較高。而且毛病少。唯一的確定就是,寫代碼的效率不高。你也可以在pycharm寫代碼,放到vscode進行執行測試。
測試資料下載連結: https://pan.baidu.com/s/16a1PN3L-lYy-61Wfjvd1VQ 密碼: 3ubr
測試代碼:
# coding:utf-8import osos.environ[‘TF_CPP_MIN_LOG_LEVEL‘] = ‘2‘import numpy as npimport matplotlib.pyplot as pltfrom scipy.misc import imresizeimport cv2from autokeras.image_supervised import ImageClassifierfrom sklearn.metrics import accuracy_scorefrom keras.models import load_modelfrom keras.utils import plot_modelimport timestart = time.time()def read_img(path,class_num): imgName_list = os.listdir(path) n = len(imgName_list) # img_index,img_colummns,img_rgbSize = plt.imread(path+‘/‘+imgName_list[0]).shape img_index, img_colummns = [28,38] # 這個設定很重要。如果你的電腦很好的話可以忽略設定。要不然記憶體不足的。 print(img_index,img_colummns) data = np.zeros([n,img_index,img_colummns,1]) label = np.zeros([n,1]) class_number = 0 for i in range(n): imgPath = path+‘/‘+imgName_list[i] data[i,:,:,0] = imresize(cv2.cvtColor(plt.imread(imgPath),cv2.COLOR_BGR2GRAY),[img_index,img_colummns]) if (i)%(class_num) == 0: class_number = class_number+1 label[i,0] = class_number return data,labelx_train,y_train = read_img(‘./data/re/train‘,80)x_test,y_test = read_img(‘./data/re/test‘,20)animal = [‘bus‘, ‘dinosaur‘, ‘flower‘, ‘horse‘, ‘elephant‘] # 動物類別對應 labelValue 為 [1,2,3,4,5]# plt.imshow(x_test[0,:,:,0],cmap=‘gray‘)# plt.show()if __name__==‘__main__‘: # 模型構建 model = ImageClassifier(verbose=True) # 搜尋網路模型 model.fit(x_train,y_train,time_limit=1*60) # 驗證最優模型 model.final_fit(x_train,y_train,x_test,y_test,retrain=True) # 給出評估結果 score = model.evaluate(x_test,y_test) # 識別結果 y_predict = model.predict(x_test) # 精確度 accuracy = accuracy_score(y_test,y_predict) # 列印出score與accuracy print(‘score:‘,score,‘ accuracy:‘,accuracy) model_dir = r‘./modelStructure/imgModel.h5‘ model_img = r‘./modelStructure/imgModel_ST.png‘ # 儲存可視化模型 # model.load_searcher().load_best_model().produce_keras_model().save(model_dir) # 載入模型 # automodel = load_model(model_dir) # 輸出模型 structure 圖 # plot_model(automodel, to_file=model_img) end = time.time() print(end-start)
autoKeras Windows 的入門測試