基本指标类

tflearn.metrics.Metric (name=None)

指标类旨在供 TFLearn 模型类使用。它可以先使用所需的参数进行初始化,然后模型类将使用给定的网络输出和目标构建它。

属性

  • tensor: Tensor。指标张量。

方法

build (predictions, targets, inputs)

构建指标方法,所有指标都具有共同的参数。

参数
  • prediction: Tensor。执行预测的网络。
  • targets: Tensor。目标(标签)。
  • inputs: Tensor。输入数据。

get_tensor (self)

获取指标张量。

返回

指标 Tensor


准确率

tflearn.metrics.Accuracy (name=None)

计算模型准确率。目标预测假定为 logits。

如果预测张量是一维的(即形状为 [?] 或 [?, 1]),则假定标签是二进制的(转换为 float32),并且根据相等的二进制结果的平均数量计算准确率,对 logits > 0 的预测进行阈值处理。

否则,将根据分类结果计算准确率,并假定输入(模型预测和标签)都是独热编码的。使用 tf.argmax 获得分类预测,以便进行相等比较。

示例

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

参数

  • name: 要显示的名称。

Top-k

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

计算 Top-k 平均准确率(目标是否在前“K”个预测中)。

示例

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

参数

  • k: int。要查看的前 k 个元素的数量,用于计算精度。
  • name: 要显示的名称。

标准误差

tflearn.metrics.R2 (name=None)

计算决定系数。用于评估线性回归。

示例

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

参数

  • name: 要显示的名称。

加权标准误差

tflearn.metrics.WeightedR2 (name=None)

计算决定系数。用于评估线性回归。

示例

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

参数

  • name: 要显示的名称。

accuracy_op

tflearn.metrics.accuracy_op (predictions, targets)

一个计算平均准确率的操作,假设预测和目标都是独热编码的。

示例

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})

参数

  • predictions: Tensor
  • targets: Tensor

返回

Float。平均准确率。


binary_accuracy_op

tflearn.metrics.binary_accuracy_op (predictions, targets)

一个计算平均准确率的操作,假设预测是 logits,目标是二进制编码的(并表示为 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})

参数

  • predictions: float 类型的 Tensor
  • targets: float 类型的 Tensor

返回

Float。平均准确率。


top_k_op

tflearn.metrics.top_k_op (predictions, targets, k=1)

一个计算 top-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})

参数

  • predictions: Tensor
  • targets: Tensor
  • k: int。要查看的前 k 个元素的数量,用于计算精度。

返回

Float。top-k 平均准确率。


r2_op

tflearn.metrics.r2_op (predictions, targets)

一个计算标准误差的操作。

示例

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})

参数

  • predictions: Tensor
  • targets: Tensor

返回

Float。标准误差。


weighted_r2_op

tflearn.metrics.weighted_r2_op (predictions, targets, inputs)

一个计算标准误差的操作。

示例

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})

参数

  • predictions: Tensor
  • targets: Tensor
  • inputs: Tensor

返回

Float。标准误差。