宝贝腿开大点我添添你视频男男,中文字幕熟女人妻av一区二区三区,爱色成人网,大地资源高清播放在线观看在线电影在线观看 ,777米奇影视第四色

集團站切換校區(qū)

驗證碼已發(fā)送,請查收短信

復(fù)制成功
微信號:togogoi
添加微信好友, 詳細(xì)了解課程
已復(fù)制成功,如果自動跳轉(zhuǎn)微信失敗,請前往微信添加好友
打開微信
圖標(biāo)

業(yè)界新聞

當(dāng)前位置:首頁 > >業(yè)界新聞 > >

人工智能AI培訓(xùn)_keras快速入門

發(fā)布時間: 2019-08-25 14:02:06

  人工智能AI培訓(xùn)_keras快速入門

  1.keras概述
  Keras是一個由Python編寫的開源人工神經(jīng)網(wǎng)絡(luò)庫,可以作為Tensorflow、Microsoft-CNTK和Theano的高階應(yīng)用程序接口,進行深度學(xué)習(xí)模型的設(shè)計、調(diào)試、評估、應(yīng)用和可視化
  Keras在代碼結(jié)構(gòu)上由面向?qū)ο蠓椒ň帉?,完全模塊化并具有可擴展性,其運行機制和說明文檔有將用戶體驗和使用難度納入考慮,并試圖簡化復(fù)雜算法的實現(xiàn)難度 。Keras支持現(xiàn)代人工智能領(lǐng)域的主流算法,包括前饋結(jié)構(gòu)和遞歸結(jié)構(gòu)的神經(jīng)網(wǎng)絡(luò),也可以通過封裝參與構(gòu)建統(tǒng)計學(xué)習(xí)模型。在硬件和開發(fā)環(huán)境方面,Keras支持多操作系統(tǒng)下的多GPU并行計算,可以根據(jù)后臺設(shè)置轉(zhuǎn)化為Tensorflow、Microsoft-CNTK等系統(tǒng)下的組件。
  Keras的主要開發(fā)者是谷歌工程師Francois Chollet,此外其GitHub項目頁面包含6名主要維護者和超過800名直接貢獻者 。Keras在其正式版本公開后,除部分預(yù)編譯模型外,按MIT許可證開放源代碼。

  2.keras優(yōu)勢
  Keras 是一個用于構(gòu)建和訓(xùn)練深度學(xué)習(xí)模型的高階 API。它可用于快速設(shè)計原型、高級研究和生產(chǎn),具有以下三個主要優(yōu)勢:
  方便用戶使用
  Keras 具有針對常見用例做出優(yōu)化的簡單而一致的界面。它可針對用戶錯誤提供切實可行的清晰反饋。
  模塊化和可組合
  將可配置的構(gòu)造塊連接在一起就可以構(gòu)建 Keras 模型,并且?guī)缀醪皇芟拗啤?br>  易于擴展
  可以編寫自定義構(gòu)造塊以表達(dá)新的研究創(chuàng)意,并且可以創(chuàng)建新層、損失函數(shù)并開發(fā)先進的模型。
  3.Keras常用接口
    tf.keras:
    Datasets
    Estimator
    Layers
  ?  Losses
  ?  Metrics
  ?  Preprocessing
  ?  Optimizers
  3.1.tf.keras.datasets
  keras中內(nèi)置的數(shù)據(jù)集,例如:boston_housing, mnist, cifar10。
  3.2.tf.keras.estimator:
  一種極大地簡化機器學(xué)習(xí)編程的高階TensorFlow API,Estimator會封裝的操作有:訓(xùn)練、評估、預(yù)測、導(dǎo)出。主要功能是model_to_estimator: Estimator根據(jù)給定的Keras模型構(gòu)造一個實例:
  tf.keras.estimator.model_to_estimator()
  3.3.tf.keras.layers
  網(wǎng)絡(luò)層封裝了變量和作用其上的操作。比如(全連接層)對輸入進行一個加權(quán)求和的操作,并且可以作用一個可選擇的激活函數(shù)。連接的權(quán)重和偏置都由網(wǎng)絡(luò)層對象來管理。
  3.4.tf.keras.losses
  內(nèi)置損耗功能。包括計算標(biāo)簽與預(yù)測之間的二進制交叉熵?fù)p失、誤差平方的損失、絕對百分比誤差等等。
  3.5.tf.keras.metrics
  內(nèi)置指標(biāo)。主要包括的類有方法有:mean, Accuracy, Recall等。

  keras數(shù)據(jù)預(yù)處理工具。
  3.7.tf.keras.optimizers
  內(nèi)置優(yōu)化器類。 包含Adam, Adadelta, SGD等優(yōu)化器類。

  4.快速入門?
import tensorflow as tf
#tensorflow2.0 使用keras一般通過tensorflow.keras來使用,但是pycharm沒有提示,原因是因為實際的keras路徑放在tensorflow/python/keras,但是在程序中tensorflow有沒有python這個目錄,解決方法如下
try:
    import tensorflow.keras as keras
except:
    import tensorflow.python.keras as keras
#這樣pycharm既可以有提示,同時也不需要在程序運行的時候修改代碼了。非常完美的解決手段,當(dāng)然如果你不適用ide就不需要這些東西了。
# print(tf.__version__)
# print(keras.__version__)
import numpy as np
# 在Keras中,您可以組裝圖層來構(gòu)建模型。 模型(通常)是圖層圖。 最常見的模型類型是一堆層:tf.keras.Sequential 模型。構(gòu)建一個簡單的全連接網(wǎng)絡(luò)(即多層感知器):
#構(gòu)建好模型后,通過調(diào)用 compile 方法配置該模型的學(xué)習(xí)流程:
model = keras.Sequential()
# Dense函數(shù)參數(shù)
#     units: 正整數(shù),輸出空間維度。
#     activation: 激活函數(shù) (詳見 activations)。 若不指定,則不使用激活函數(shù) (即,「線性」激活: a(x) = x)。
#     use_bias: 布爾值,該層是否使用偏置向量。
#     kernel_initializer: kernel 權(quán)值矩陣的初始化器 (詳見 initializers)。
#     bias_initializer: 偏置向量的初始化器 (see initializers).
#     kernel_regularizer: 運用到 kernel 權(quán)值矩陣的正則化函數(shù) (詳見 regularizer)。
#     bias_regularizer: 運用到偏置向的的正則化函數(shù) (詳見 regularizer)。
#     activity_regularizer: 運用到層的輸出的正則化函數(shù) (它的 "activation")。 (詳見 regularizer)。
#     kernel_constraint: 運用到 kernel 權(quán)值矩陣的約束函數(shù) (詳見 constraints)。
#     bias_constraint: 運用到偏置向量的約束函數(shù) (詳見 constraints)。
model.add(keras.layers.Dense(32, activation='relu'))
model.add(keras.layers.Dense(32, activation='relu'))
model.add(keras.layers.Dense(10, activation='softmax'))
model.compile(optimizer=keras.optimizers.Adam(0.001),
             loss=keras.losses.categorical_crossentropy,
             metrics=[keras.metrics.categorical_accuracy])
#輸入numpy數(shù)據(jù)
# 對于小的數(shù)據(jù)集,可以直接使用 NumPy 格式的數(shù)據(jù)進行訓(xùn)練、評估模型。模型使用 fit 方法訓(xùn)練數(shù)據(jù):
# tf.keras.Model.fit 有三個重要的參數(shù):
# ?    epochs:訓(xùn)練多少輪。(小批量)
# ?    batch_size:當(dāng)傳遞NumPy數(shù)據(jù)時,模型將數(shù)據(jù)分成較小的批次,并在訓(xùn)練期間迭代這些批次。 此整數(shù)指定每個批次的大小。 請注意,如果樣本總數(shù)不能被批量大小整除,則最后一批可能會更小。
# ?    validation_data:在對模型進行原型設(shè)計時,您希望輕松監(jiān)控其在某些驗證數(shù)據(jù)上的性能。 傳遞這個參數(shù) - 輸入和標(biāo)簽的元組 - 允許模型在每個epoch的末尾以傳遞數(shù)據(jù)的推理模式顯示損失和度量。
train_x = np.random.random((1000, 72))
train_y = np.random.random((1000, 10))
val_x = np.random.random((200, 72))
val_y = np.random.random((200, 10))
model.fit(train_x, train_y, epochs=10, batch_size=100,validation_data=(val_x, val_y))
print(train_x)
print(train_y)
#tf.data輸入數(shù)據(jù)
# 使用數(shù)據(jù)集API可擴展到大型數(shù)據(jù)集或多設(shè)備培訓(xùn)。 將tf.data.Dataset實例傳遞給fit方法。使用 Datasets API 可擴展到大型數(shù)據(jù)集或多設(shè)備訓(xùn)練
dataset = tf.data.Dataset.from_tensor_slices((train_x, train_y))
dataset = dataset.batch(32)
dataset = dataset.repeat()
val_dataset = tf.data.Dataset.from_tensor_slices((val_x, val_y))
val_dataset = val_dataset.batch(32)
val_dataset = val_dataset.repeat()
model.fit(dataset, epochs=10, steps_per_epoch=30,
          validation_data=val_dataset, validation_steps=3)
#評估與預(yù)測
test_x = np.random.random((1000, 72))
test_y = np.random.random((1000, 10))
model.evaluate(test_x, test_y, batch_size=32)
test_data = tf.data.Dataset.from_tensor_slices((test_x, test_y))
test_data = test_data.batch(32).repeat()
model.evaluate(test_data, steps=30)
# predict
result = model.predict(test_x, batch_size=32)
print(result)
?

上一篇: 大數(shù)據(jù)培訓(xùn)_容量調(diào)度器的介紹

下一篇: Python培訓(xùn)_Python自動化運維之Saltstack YAML

在線咨詢 ×

您好,請問有什么可以幫您?我們將竭誠提供最優(yōu)質(zhì)服務(wù)!