如何在target_column
方法中指定多个tflearn.data_utils.load_csv
。
根据Tflearn文档,load_csv将target_column
作为整数。
尝试将我的target_columns作为load_csv方法中的列表传递,并按预期获得TypeError: 'list' object cannot be interpreted as an integer
回溯。
任何解决方案。 感谢
答案 0 :(得分:0)
这不是回归的工作方式。您必须只有一列作为目标。这就是为什么tensorflow API只允许一列成为回归的目标,用整数指定。
答案 1 :(得分:0)
经过TFLearn github repo后,事实证明,我们无法直接使用load_csv
来指定多个目标。
需要通过pandas
作为数据框读取csv文件,并使用dataframe.as_matrix()
将其转换为矩阵,并指定数据和标签列。
例如,我的csv文件中有34列作为数据集,9列作为目标。
继承人我做了什么
import tflearn
from tflearn.optimizers import SGD
import pandas as pd,numpy as np
#name=input('name for run_id:')
csvfile = pd.read_csv('path/to/file.csv')
data = csvfile[['my','data','columns']]
label= csvfile[['target','columns']]
data=data.as_matrix()
label= label.as_matrix()
并且如本文https://datascience.stackexchange.com/questions/16890/neural-network-for-multiple-output-regression所述......只需提及输出层的单位数,并将激活设置为线性,即不激活和完成。
希望这对有类似情况的其他人有所帮助。