首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我训练模特的时候做错了什么?

我训练模特的时候做错了什么?
EN

Stack Overflow用户
提问于 2022-01-06 07:58:48
回答 1查看 47关注 0票数 0

我解决了以下问题:

我们收集了更多关于猫和狗的数据,并且已经准备好训练我们的机器人来分类了!下载培训数据集https://stepik.org/media/attachments/course/4852/dogs_n_cats.csv并在其上培训决策树。然后,从赋值中下载数据集,并预测哪些观测属于谁。在数据集中输入狗的数量。在赋值中允许某些错误。

我训练了模特:

代码语言:javascript
复制
import sklearn
import pandas as pd
import numpy as nm
import matplotlib.pyplot as plt
import seaborn as sns
from sklearn import tree
from sklearn.model_selection import train_test_split, cross_val_score

df = pd.read_csv('dogs_n_cats.csv')

X = df.drop(['Вид', 'Шерстист'], axis=1)
y = df['Вид']

X_train, X_test, y_train, y_test = train_test_split(X, y, train_size=0.67, random_state=42)

clf = tree.DecisionTreeClassifier(criterion='entropy', max_depth=4)
clf.fit(X_train, y_train)

之后,我从任务https://stepik.org/api/attempts/540562013/file下载了数据集,并开始确定数据集中的狗数:

代码语言:javascript
复制
df2 = pd.read_json('we.txt')

X2 = df.drop(['Вид', 'Шерстист'], axis=1)
y2 = df['Вид']
X_train2, X_test2, y_train2, y_test2 = train_test_split(X, y, train_size=0.67, random_state=42)

df2_predict = clf.predict(X2)
l = list(df2_predict)
l.count('собачка')

任务中的狗数量应该是49条,但是在执行l.count (“狗”)之后,我得到了500条。我训练模特的时候做错了什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-01-06 11:42:22

这似乎是个错误。在您的代码段中,您使用第一个dataframe来创建X2

我无法访问第二个文件,但是更改这一行应该可以做到这一点:

代码语言:javascript
复制
X2 = df.drop(['Вид', 'Шерстист'], axis=1)
-->
X2 = df2.drop(['Вид', 'Шерстист'], axis=1)

此外,您已经获得了一个培训集和测试集,因此不需要调用train_test_split

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70604052

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档