機器學習基本過程(之一)

2021-09-22 01:37:35 字數 1679 閱讀 9556

基本過程

定義模型

訓練模型 **

採用tensorflow不同介面的實現方法

使用keras

使用 estimator 構建模型 

tensorflow低階api 

1.繼承 tf.keras.model,定義網路每一層。

import tensorflow as tf

class mymodel(tf.keras.model):

def __init__(self):

super(mymodel, self).__init__()

self.dense1 = tf.keras.layers.dense(4, activation=tf.nn.relu)

self.dense2 = tf.keras.layers.dense(5, activation=tf.nn.softmax)

self.dropout = tf.keras.layers.dropout(0.5)

def call(self, inputs, training=false):

x = self.dense1(inputs)

if training:

x = self.dropout(x, training=training)

return self.dense2(x)

model = mymodel()

2.定義tf.keras.models.sequential的物件。(適合於序列網路),模型是層的簡單堆疊,無法表示任意模型。

# optionally, the first layer can receive an `input_shape` argument:

model = sequential()

model.add(dense(32, input_shape=(500,)))

# afterwards, we do automatic shape inference:

model.add(dense(32))

網路的每一層可以用tf.keras.layers.layer包中定義的層。模型從輸入層開始,逐個新增每一層。

模型還需要再進行幾項設定才可以開始訓練。這些設定會新增到模型的編譯步驟:

model.compile(optimizer=tf.train.adamoptimizer(),

loss='sparse_categorical_crossentropy',

metrics=['accuracy'])

訓練神經網路模型需要執行以下步驟:

將訓練資料饋送到模型中,在本示例中為train_imagestrain_labels陣列。

模型學習將影象與標籤相關聯。

我們要求模型對測試集進行**,在本示例中為test_images陣列。我們會驗證**結果是否與test_labels陣列中的標籤一致。 

model.fit(train_images, train_labels, epochs=5, validation_data=vd)
predictions = model.predict(test_images)

機器學習之一基本術語

1 一組記錄的集合成為資料集。2 關於乙個事件或物件的描述,稱為乙個 例項 或 樣本 也稱 特徵向量 比如對於乙隻貓的描述。3 反映事件或物件在某方面的表現或性質的事項例如貓的 毛色 瞳色 稱為屬性或特徵。4 屬性上取值例如 布偶貓 暹羅貓 摺耳貓 描述屬性的取值稱為屬性值。5 屬性上張成的空間稱為...

機器學習之一

一 機器學習是什麼 機器學習不是基於程式設計形成的邏輯推理,而是通過歸納思想得出的相關性結論,與人類通過經驗思考歸納一致。有句話說得很好,歷史往往不一樣,但歷史總是驚人的相似 我們通過對歷史的學習,從歷史中歸納出人生與社會的規律,從而指導我們的下一步工作,這是具有莫大價值的。當代一些人忽視了歷史的本...

機器學習基礎之一 基本概念

一 機器學習方法分類 監督學習 訓練樣本帶標記 分類 回歸 無監督學習 訓練樣本無標記 聚類 異常檢測 半監督學習 訓練樣本帶少量標記 強化學習 通過狀態空間大量試錯學習得最佳決策 決策 深度學習 以上ml方法和深度神經網路的結合 分類 聚類 決策 二 機器學習流程 1.實際問題抽象為數學問題 理解...