Python Tensorflow:为DNN分类器的嵌入式feaure列创建循环
我正在努力适应tensorflow中的DNN分类器。我在TensorFlow中嵌入了多个feature列,我正在尝试创建循环,以避免手动键入来创建feature列,但它不起作用。下面是我尝试过的代码,但在尝试作为功能列进行匹配时返回了一个错误Python Tensorflow:为DNN分类器的嵌入式feaure列创建循环,python,tensorflow,Python,Tensorflow,我正在努力适应tensorflow中的DNN分类器。我在TensorFlow中嵌入了多个feature列,我正在尝试创建循环,以避免手动键入来创建feature列,但它不起作用。下面是我尝试过的代码,但在尝试作为功能列进行匹配时返回了一个错误 for col in df_col: if df[col].dtypes == 'object': feat_cols.append( tf.feature_column.embedding_column(
for col in df_col:
if df[col].dtypes == 'object':
feat_cols.append(
tf.feature_column.embedding_column(
tf.feature_column.categorical_column_with_hash_bucket(
col,
hash_bucket_size=len(df[col].unique())
),
dimension=len(df[col].unique()))
)
else:
feat_cols.append(tf.feature_column.numeric_column(col))
tensorflow上的DNN分类器只需要很少的不同方法。检查下面的代码;这是不言自明的
from pandas.api.types import is_string_dtype
from pandas.api.types import is_numeric_dtype
my_columns = []
for col in df.columns:
if is_string_dtype(diabetes[col]): #is_string_dtype is pandas function
ccol=tf.feature_column.categorical_column_with_hash_bucket(col,
hash_bucket_size= len(df[col].unique()))
my_columns.append(tf.feature_column.embedding_column(ccol, dimension=len(df[col].unique())))
elif is_numeric_dtype(df[col]): #is_numeric_dtype is pandas function
my_columns.append(tf.feature_column.numeric_column(col))