- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
收到错误:
ValueError:标签形状不匹配。配置为 n_classes=1 的分类器。已收到 4. 建议的修复:检查估算器的 n_classes 参数和/或标签的形状。
import pandas as pd
import tensorflow as tf
import numpy as np
import os
dir_path = os.path.dirname(os.path.realpath(__file__))
csv_path = dir_path + "/good.csv"
CSV_COLUMN_NAMES = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12', '13', '14', '15', 'Quartile']
def load_data(y_name='Quartile'):
all = pd.read_csv(csv_path, names=CSV_COLUMN_NAMES, header=0)
one_hot = pd.get_dummies(all['Quartile'])
all = all.drop('Quartile', axis=1)
all = all.join(one_hot)
x = all.drop([0, 1, 2, 3], axis=1)
y = all[[0, 1, 2, 3]].copy()
size = x.shape[0]
cutoff = int(0.75*size)
train_x = x.head(cutoff)
train_y = y.head(cutoff)
test_x = x.tail(size-cutoff)
test_y = y.tail(size-cutoff)
return (train_x, train_y), (test_x, test_y)
def train_input_fn(features, labels, batch_size):
"""An input function for training"""
# Convert the inputs to a Dataset.
dataset = tf.data.Dataset.from_tensor_slices((dict(features), labels))
# Shuffle, repeat, and batch the examples.
dataset = dataset.shuffle(1000).repeat().batch(batch_size)
# Return the dataset.
return dataset
def eval_input_fn(features, labels, batch_size):
"""An input function for evaluation or prediction"""
features=dict(features)
if labels is None:
# No labels, use only features.
inputs = features
else:
inputs = (features, labels)
# Convert the inputs to a Dataset.
dataset = tf.data.Dataset.from_tensor_slices(inputs)
# Batch the examples
assert batch_size is not None, "batch_size must not be None"
dataset = dataset.batch(batch_size)
# Return the dataset.
return dataset
def main(argv):
batch_size = 50;
# Fetch the data
(train_x, train_y), (test_x, test_y) = load_data()
# Feature columns describe how to use the input.
my_feature_columns = []
for key in train_x.keys():
my_feature_columns.append(tf.feature_column.numeric_column(key=key))
classifier = tf.estimator.DNNClassifier(
feature_columns=my_feature_columns,
hidden_units=[10, 10],
n_classes=4)
# Train the Model.
classifier.train(
input_fn=lambda:train_input_fn(train_x, train_y, batch_size), steps=10)
# Evaluate the model.
eval_result = classifier.evaluate(
input_fn=lambda:eval_input_fn(test_x, test_y, batch_size))
print('\nTest set accuracy: {accuracy:0.3f}\n'.format(**eval_result))
if __name__ == '__main__':
tf.logging.set_verbosity(tf.logging.INFO)
tf.app.run(main)
我对输出使用 one-hot 编码(这是一个四分位数:通常为 1-4),因此它被转换为 4 列,名为:0 1 2 3。但是当我去运行它时,它会起作用就好像我使用了 n_classes=1
即使我没有。我对这个问题做了一些研究,所以不要这么快提出建议this article作为重复,因为那里提到的解决方案不能解决我的问题。我没有使用 mnist 数据集,而是使用自定义数据集。任何帮助将不胜感激,谢谢!
最佳答案
如果我没记错的话,tf.estimator.DNNClassifier
需要一个密集标签(例如,[2]),而不是单热标签(例如,[0, 0, 1]) 。因此,不要使用 pd.get_dummies
,并确保您的标签是一维数据。
PR中的误导性信息已更正:https://github.com/tensorflow/tensorflow/pull/18305 .
关于python - Tensorflow:估计器 n_classes 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50125058/
收到错误: ValueError:标签形状不匹配。配置为 n_classes=1 的分类器。已收到 4. 建议的修复:检查估算器的 n_classes 参数和/或标签的形状。 import panda
我正在使用 LinearSVC 将文本数据分为 3 类。输入数据是每个单词的 tfidf 分数。我有兴趣看到单词对分类的“贡献”。第一个问题是我可以使用 coef_ 吗?该文件指出: coef_ :
我正在通过此命令行在 Python 上生成数据: X, Y = sklearn.datasets.make_classification(n_classes=3 ,n_features=20, n_
我得到: RuntimeError: Assertion `cur_target >= 0 && cur_target = 0 && cur_target < n_classes' failed,我们
我正在尝试在 Pytorch 中创建一个基本的二元分类器,用于对我的玩家在 Pong 游戏中是在右侧还是左侧进行分类。输入是 1x42x42 图像,标签是我的玩家一侧(右 = 1 或左 = 2)。代码
我正在尝试使用 PyTorch 制作一个神经网络来预测学生的期末考试成绩。我是这样做的 - # Hyper Parameters input_size = 2 hidden_size = 50 num
我正在尝试 tf.contrib.learn Quickstart ,并且在使用教程中给出的代码时它可以工作。但是,如果我将训练集和测试集更改为只有 2 个分类(即只有 2 个鸢尾花品种),我会得到以
我在使用 Python 2.7 的 Tensorflow 1.3.0 中实现 DNNClassifier 时遇到错误。我从 Tensorflow tf.estimator Quickstart 教程中
我正在尝试创建一个 Python 3 程序,以使用 Tensorflow 将句子分类。但是,当我尝试运行我的代码时,我遇到了一系列非常冗长的错误。以下错误似乎是我的问题的基础: InvalidArgu
我正在尝试开始 CNN 设计,我发现了这段代码,我尝试从中推断设计(f.maps 大小、步幅......)。 据我所知,我们有:输入 --> Conv5-32 --> maxpool --> Conv
我一直在尝试将此ML线性模型实现到我的数据集中。 (https://www.tensorflow.org/tutorials/estimator/linear) 语言:Python 3.8.3 库:
我是一名优秀的程序员,十分优秀!