首页 文章

TPOTClassifier产生错误

提问于
浏览
1

我试图在Forest Cover Type Prediction上使用TPOTClassifier . 但是在初始运行之后,它产生的错误就是输出 . 如果您建议如何解决错误,将会很有帮助 . 谢谢 .

from tpot import TPOTClassifier
import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score

# loading the data
data = pd.read_csv("train.csv")
data_test = pd.read_csv("test.csv")
data.head()
data_test.head()

print data['Cover_Type'].values
data1 = data

data1= data1.rename(columns={'Cover_Type':'class'})
data1.dtypes

features =list(data1.dtypes[1:55].index)
target =list(data1.dtypes[55:56].index)
print data1.dtypes.tail()

## train test split
X_train , X_test, y_train, y_test = train_test_split(data1[features],data1[target],train_size=0.75, test_size=0.25)
X_train.head()

tpot =TPOTClassifier(generations=5, population_size=500, verbosity=2)       
tpot.fit(X_train, y_train)
print (tpot.score(X_test, y_test))
tpot.export('tpot_forest_pipeline.py')

但它产生的错误:

第1代 - 当前最佳内部CV评分:inf

第2代 - 当前最佳内部CV得分:inf

第3代 - 当前最佳内部CV评分:inf

第4代 - 当前最佳内部CV评分:inf

第5代 - 当前最佳内部CV分数:inf

()最近的ValueError Traceback(最近一次调用)

1 tpot = TPOTClassifier(代数= 5,population_size = 500,verbosity = 2)

2 tpot.fit(X_train,y_train)

3打印(tpot.score(X_test,y_test))

4 tpot.export('tpot_forest_pipeline.py'

355如果不是self._optimized_pipeline:

356引发ValueError(TPOT优化中存在错误

357过程 . 这可能是因为数据没有正确格式化,或因为数据错误:ValueError:TPOT优化过程中出现错误 . 这可能是因为数据格式不正确,或者因为提供了回归问题的数据TPOTClassifier对象 . 请确保正确地将数据传递给TPOT .

1 回答

  • 1

    问题是由data1 [features]引起的,它应该是1-D数组,但pandas数据帧是2D数组类数据结构 . 更改tpot.fit()代码如下将解决输入问题 .

    tpot.fit(pd.np.array(X_train), pd.np.array(y_train).ravel())
    

相关问题