基本指標類

tflearn.metrics.Metric (name=None)

指標類是 TFLearn 模型類使用的。它可以使用預期參數進行初始化,而模型類會利用提供的網路輸出和目標建立指標。

屬性

  • 指標: Tensor。指標張量。

方法

build (predictions, targets, inputs)

建立指標方法,對所有指標使用常見引數。

引數
  • 預測: Tensor。進行預測的網路。
  • 目標: Tensor。目標 (標籤)。
  • 輸入: Tensor。輸入資料。

get_tensor (self)

取得指標張量。

傳回

指標 Tensor


準確率

tflearn.metrics.Accuracy (name=None)

計算模型準確率。目標預測假設為對數機率。

如果預測張量為 1D (例如形狀為 [?], 或 [?, 1]), 則標籤假設為二元 (轉換為 float32),並根據等於二元結果之平均數目計算準確率,對數機率預測結果閾值為 > 0。

否則,準確率是根據類別結果計算,並假設輸入 (模型預測和標籤) 經過 one-hot 編碼。tf.argmax 用於取得類別預測,以進行相等性比較。

範例

# To be used with TFLearn estimators
acc = Accuracy()
regression = regression(net, metric=acc)

引數

  • 名稱: 要顯示的名字。

前 K

tflearn.metrics.Top_k (k=1, name=None)

計算前 k 平均準確率 (目標是否在上一個 'K' 預測中)。

範例

# To be used with TFLearn estimators
top5 = Top_k(k=5)
regression = regression(net, metric=top5)

引數

  • k: int。用於計算精確度的頂端元素數目。
  • 名稱: 要顯示的名字。

標準誤差

tflearn.metrics.R2 (name=None)

計算決定係數。可協助評估線性迴歸。

範例

# To be used with TFLearn estimators
r2 = R2()
regression = regression(net, metric=r2)

引數

  • 名稱: 要顯示的名字。

加權標準誤差

tflearn.metrics.WeightedR2 (name=None)

計算決定係數。可協助評估線性迴歸。

範例

# To be used with TFLearn estimators
weighted_r2 = WeightedR2()
regression = regression(net, metric=weighted_r2)

引數

  • 名稱: 要顯示的名字。

accuracy_op

tflearn.metrics.accuracy_op (預測值, 目標值)

是一個操作,用於在預測值為 one-hot 編碼和目標值均為 one-hot 編碼時,計算平均準確率。

範例

input_data = placeholder(shape=[None, 784])
y_pred = my_network(input_data) # Apply some ops
y_true = placeholder(shape=[None, 10]) # Labels
acc_op = accuracy_op(y_pred, y_true)

# Calculate accuracy by feeding data X and labels Y
accuracy = sess.run(acc_op, feed_dict={input_data: X, y_true: Y})

引數

  • 預測值張量
  • 目標值張量

傳回

浮点数。平均準確率。


binary_accuracy_op

tflearn.metrics.binary_accuracy_op (預測值, 目標值)

是一個操作,用於在預測值為對數值,並且目標值為二進位編碼(表示為 int32)時,計算平均準確率。

範例

input_data = placeholder(shape=[None, 784])
y_pred = my_network(input_data) # Apply some ops
y_true = placeholder(shape=[None, 10]) # Labels
acc_op = binary_accuracy_op(y_pred, y_true)

# Calculate accuracy by feeding data X and labels Y
binary_accuracy = sess.run(acc_op, feed_dict={input_data: X, y_true: Y})

引數

  • 預測值float 類型的 張量
  • 目標值float 類型的 張量

傳回

浮点数。平均準確率。


top_k_op

tflearn.metrics.top_k_op (預測值, 目標值, k=1)

是一個操作,用於計算前 k 的平均準確率。

範例

input_data = placeholder(shape=[None, 784])
y_pred = my_network(input_data) # Apply some ops
y_true = placeholder(shape=[None, 10]) # Labels
top3_op = top_k_op(y_pred, y_true, 3)

# Calculate Top-3 accuracy by feeding data X and labels Y
top3_accuracy = sess.run(top3_op, feed_dict={input_data: X, y_true: Y})

引數

  • 預測值張量
  • 目標值張量
  • k: int。用於計算精確度的頂端元素數目。

傳回

浮点数。前 k 的平均準確率。


r2_op

tflearn.metrics.r2_op (預測值, 目標值)

是一個操作,用於計算標準誤。

範例

input_data = placeholder(shape=[None, 784])
y_pred = my_network(input_data) # Apply some ops
y_true = placeholder(shape=[None, 10]) # Labels
stderr_op = r2_op(y_pred, y_true)

# Calculate standard error by feeding data X and labels Y
std_error = sess.run(stderr_op, feed_dict={input_data: X, y_true: Y})

引數

  • 預測值張量
  • 目標值張量

傳回

浮点数。標準誤。


weighted_r2_op

tflearn.metrics.weighted_r2_op (預測值, 目標值, 輸入)

是一個操作,用於計算標準誤。

範例

input_data = placeholder(shape=[None, 784])
y_pred = my_network(input_data) # Apply some ops
y_true = placeholder(shape=[None, 10]) # Labels
stderr_op = weighted_r2_op(y_pred, y_true, input_data)

# Calculate standard error by feeding data X and labels Y
std_error = sess.run(stderr_op, feed_dict={input_data: X, y_true: Y})

引數

  • 預測值張量
  • 目標值張量
  • 輸入張量

傳回

浮点数。標準誤。