我是新来的,所以任何帮助都是值得的,这段代码是我的教授给我的,当我问一个例子,我希望有一个工作模型。。。
from numpy import loadtxt
import numpy as np
from sklearn import svm
from sklearn.metrics import accuracy_score, f1_score
from sklearn.feature_selection import SelectPercentile, f_classif
读取数据
data = loadtxt('running.txt')
label = loadtxt('walking.txt')
X = data
y = label
将行走状态定义为0,运行状态定义为1
print('Class labels:', np.unique(y))
随机选取50%的数据作为测试数据,其余数据作为列车数据
from sklearn.cross_validation import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.5)
使用skLearning选择50%的功能
selector = SelectPercentile(f_classif, 50)
selector.fit(X_train, y_train)
X_train_transformed = selector.transform(X_train)
X_test_transformed = selector.transform(X_test)
应用支持向量机算法
clf = svm.SVC(kernel="rbf", C=1)
clf.fit(X_train_transformed, y_train)
SVC(C=1, cache_size=200, class_weight=None, coef0=0.0, decision_function_shape=None, degree=3, gamma='auto', kernel='rbf',max_iter=-1,probability=False, random_state=None, shrinking=True,tol=0.001, verbose=False)
pred=clf.predict(X_test_transformed)
print("Accuracy is %.4f and the f1-score is %.4f " %
(accuracy_score(pred, y_test), f1_score(y_test, pred)))
回溯(最近一次调用):文件“”,第1行,在execfile exec(compile(f.read)()第89行的文件“C:\Users\praym\Anaconda3\lib\site packages\spyderlib\widgets\externalshell\sitecustomize.py”中的文件“C:\Users\praym\Anaconda3\lib\site packages\spyderlib\widgets\externalshell\sitecustomize.py”中,filename,'exec'),namespace)文件“C:/Users/praym/OneDrive/School/Information structures/Assignment4.py”,第18行,在选择器中。fit(X_train,y_train)文件“C:\Users\praym\Anaconda3\lib\site packages\sklearn\feature\u selection\univariate\u selection.py”,第322行,在fit X中,y=check_X_y(X,y,['csr','csc'])文件“C:\Users\praym\Anaconda3\lib\site packages\sklearn\utils\validation.py”,第515行,在check_X___y=column或_1d(y,warn=True)文件中“C:\Users\praym\Anaconda3\lib\site packages\sklearn\utils\validation。py“,第551行,在列_或_1d中,raise VALUERROR(“错误的输入形状{0}”)。格式(形状))VALUERROR:错误的输入形状(10,90)
我会将此作为答案提交,因为它直接解决了您真正的问题。
在一般的计算机编程术语中,您得到的错误称为堆栈跟踪。有一个关于堆栈跟踪的维基百科页面,但是我将在这里尝试用更简单的术语来解释它。
错误有一个标题“回溯”,因为这就是它正在做的事情——回溯错误。您可以在python脚本中看到,每一行都是某种API调用,无论是loadtxt
还是print
还是fit
。如果在调用loadtxt
时发生错误,则回溯会显示loadtxt
调用中的错误。该函数可能正在调用API中的其他函数,因此您会看到一个“跟踪”。当您编写更复杂的Python代码,其中包含许多函数和类时,您可能会看到调用其他函数的函数,这些函数都是由您编写的。因此
行号将带您到达代码中实际导致错误的点。通常,您只需要底部的1或2个调用来解决一般问题。如果您编写了自己的自定义API,那么整个跟踪可能会变得更有用。但是,仅文件名和行号不足以有效地调试任何程序。
有关每个异常类型及其含义的更多详细信息,请阅读关于内置异常的留档。此外,您可以从此处的教程中了解更多关于如何处理此类异常的信息。
通过重复这些步骤,您将能够有效地调试自己的程序。请注意,调试不仅仅是一种从程序中删除错误的方法。它是一种遍历代码并识别每行正在做什么并将其与它们应该做什么进行比较的能力。它是所谓计算机编程的基础。如果你做得对,你可能还有问题要问,但你的问题会提高。这时堆栈溢出就出现了(请注意,这个网站的名称本身就是堆栈跟踪概念的游戏)。
编辑:在您的堆栈跟踪中,您的错误如下:
选择器第18行的文件“C:/Users/praym/OneDrive/School/Information structures/Assignment4.py”。安装(X_系列、y_系列)。
似乎一个或两个输入变量X_train和y_train的形状不是该拟合函数可以接受的。
编辑:如果按现有方式加载文件,则无法获得正确的X_列和y_列变量。您似乎有两种类型的数据,一种用于行走,另一种用于跑步。它们都是数据。行走数据中的每个条目都应有一个标签“行走”,而跑步数据中的每个条目都应有一个标签“跑步”。
现在,这是数据挖掘的基础。您需要知道数据和标签的含义。
10倍验证精度得分:{0.7982993,0.6793838等(共10倍)}K倍平均精度得分:0.78679979 实际错误:
问题内容: 我是TensorFlow和机器学习的新手。我正在尝试将两个对象归类为杯子和Pendrive(jpeg图像)。我已经成功训练并导出了model.ckpt。现在,我正在尝试恢复保存的model.ckpt以进行预测。这是脚本: 当我运行上述脚本进行预测时,出现以下错误: 我究竟做错了什么?以及如何修复numpy数组的形状? 问题答案: 形状为。 您的输入占位符的形状为。 问题是您要为占位符提
我正在使用Keras构建一个CNN,以下Conv1D是我的第一层: 我正在培训以下功能: 其中,train\u df是一个由两列组成的pandas数据帧,其中,对于每一行,标签是一个int(0或1),有效载荷是一个用零填充/截断为1000的浮点数组。train\U df中的培训示例总数为15641。 模型编译,但在训练期间,我得到这个错误: 我看了这篇文章,试图将输入更改为1000个浮点长列表的数
我是机器学习的初学者。虽然,这个问题类似于1,2,3,但我在为我的数据选择输入形状时真的很困惑。我在时间序列数据上使用1-D CNN。数据的维度是(6400,4)。有4个特征(列),其中一个是目标变量。拆分后: 我在为CNN选择输入形状时感到困惑。这就是我所尝试的(我一直保持输入shape=c(3,1)): 这执行得很好,但我不确定它是否正确。请告诉我这是否是设置输入形状的正确方法。
我不知道如何解决这个错误,我也试着把它转换成float32 Float32 --------------------------------------------------------------------------- ValueError Traceback(最近的调用最后)在11 x=x.astype(Float32)12 print(x.dtype)--- #############
我正在尝试实现tensorflow回归模型,我的数据形状是train_X=(200,4)和train_Y=(200,)。我得到的形状错误,这是我的一段代码,请任何人都能提到我在哪里做错了。 df=pd。读取\u csv('all.csv') df=df。下降(“时间”,轴=1) 打印(df.descripe())#以了解数据集 列车Y=df[“功率”] 列车X=df。下降('功率',轴=1) 列车