自動機器學習之Auto Keras入門

2021-09-27 12:38:43 字數 1475 閱讀 3990

對於訓練深度學習,設計神經網路結構是其中技術含高最高的任務,優秀的網路架構往往依賴建構模型的經驗,專業領域知識,以及大量的算力試錯。實際應用中往往基於類似功能的神經網路微調生成新的網路結構。

auto-keras是乙個離線使用的開源庫,用於構建神經網路結構和搜尋超引數,支援rnn,cnn神經網路,它使用了高效神經網路搜尋enas,利用遷移學習的原理將在前面任務中學到的權值應用於後期的模型中,效率相對較高。除了支援keras,它還提供tensorflow他pytorch的版本。

1. 安裝conda create --name automl python=3.6

conda activate autokeras

# yum install graphviz  (root使用者搞一下)

$ pip install pydot

$ pip install autokeras

$ pip install keras

2. 舉例

from keras.datasets import mnist

from autokeras import imageclassifier

from autokeras.constant import constant

import autokeras

from keras.utils import plot_model

if __name__ == '__main__':

(x_train, y_train), (x_test, y_test) = mnist.load_data()

x_train = x_train.reshape(x_train.shape + (1,))

x_test = x_test.reshape(x_test.shape + (1,))

clf = imageclassifier(verbose=true, augment=false)

clf.fit(x_train, y_train, time_limit=10 * 60)

clf.final_fit(x_train, y_train, x_test, y_test, retrain=true)

y = clf.evaluate(x_test, y_test)

print(y * 100)

clf.export_keras_model('model.h5')

plot_model(clf, to_file='model.png')

# 返回值: 99.21

上述程式在我的機器上執行後訓練出了17層網路,其中包括dropout層,池化層,卷積層,全連線層等,程式以方式將描述資訊儲存在model.png中,下面擷取了中的部分層作為示例,如下圖所示:

參考:官網

自動機器學習簡述(AutoML)

一 為什麼需要自動機器學習 二 超引數優化 hyper parameter optimization 三 元學習 meta learning 四 神經網路架構搜尋 neural architecture search 五 自動化特徵工程 六 其它自動機器學習工具集 對於機器學習的新使用者而言,使用機...

自動機器學習(AutoML)最新綜述

機器學習的應用需要大量的人工干預,這些人工干預表現在 特徵提取 模型選擇 引數調節等機器學習的各個方面。automl 試圖將這些與特徵 模型 優化 評價有關的重要步驟進行自動化地學習,使得機器學習模型無需人工干預即可被應用。作者從機器學習和自動化兩個角度給出了定義 1.從機器學習角度講,automl...

字尾自動機學習

今天終於把這週的坑填了,同樣看了很多部落格,這裡就不詳細總結了,就簡單整理一下了。應用 1 存在性查詢 給定文字t,詢問格式如下 給定字串p,問p是否是t的子串。直接按著路徑走,看是否存在即可 2 不同的子串個數 對於每乙個節點即為 len i len fa i 加和即可 3 不同子串的總長 這裡我...