TensorFlow實戰筆記(17)---TFlearn
阿新 • • 發佈:2018-12-14
目錄:
- 分散式Estimator
- 自定義模型
- 建立自己的機器學習Estimator
- 調節RunConfig執行時的引數
- Experiment和LearnRunner
- 深度學習Estimator
- 深度神經網路
- 廣度深度模型
- 機器學習Estimator
- 線性/邏輯迴歸
- 隨機森林
- K均值聚類
- 支援向量機
- DataFrame
- 監督器Monitors
- 程式碼例子
一、分散式Estimator
Estimator包含各種機器學習和深度學習的類,使用者能直接使用這些高階類,同時可根據實際的應用需求快速建立自己的子類。
六、程式碼例子---TFlearn實現AlexNet
資料為鮮花資料集 :
17_Category_Flower 是一個不同種類鮮花的影象資料,包含 17 不同種類的鮮花,每類 80 張該類鮮花的圖片,鮮花種類是英國地區常見鮮花。
程式碼:
import tflearn from tflearn.layers.core import input_data, dropout, fully_connected from tflearn.layers.conv import conv_2d, max_pool_2d from tflearn.layers.normalization importlocal_response_normalization from tflearn.layers.estimator import regression
import tflearn.datasets.oxflower17 as oxflower17 X, Y = oxflower17.load_data(one_hot=True, resize_pics=(227, 227)) ##此句呼叫了tflearn資料夾下dataset中oxflower17.py函式,下載資料 #構建AlexNet網路 # Building 'AlexNet' network = input_data(shape=[None, 227, 227, 3]) network= conv_2d(network, 96, 11, strides=4, activation='relu') network = max_pool_2d(network, 3, strides=2) network = local_response_normalization(network) network = conv_2d(network, 256, 5, activation='relu') network = max_pool_2d(network, 3, strides=2) network = local_response_normalization(network) network = conv_2d(network, 384, 3, activation='relu') network = conv_2d(network, 384, 3, activation='relu') network = conv_2d(network, 256, 3, activation='relu') network = max_pool_2d(network, 3, strides=2) network = local_response_normalization(network) network = fully_connected(network, 4096, activation='tanh') network = dropout(network, 0.5) network = fully_connected(network, 4096, activation='tanh') network = dropout(network, 0.5) network = fully_connected(network, 17, activation='softmax') network = regression(network, optimizer='momentum', loss='categorical_crossentropy', learning_rate=0.001) # Training model = tflearn.DNN(network, checkpoint_path='model_alexnet', max_checkpoints=1, tensorboard_verbose=2) model.fit(x, y, n_epoch=1000, validation_set=0.1, shuffle=True, show_metric=True, batch_size=64, snapshot_step=200, snapshot_epoch=False, run_id='alexnet_oxflowers17')