【问题标题】:Vectorization of raw values to features using Tensorflow Learn (TFLearn)使用 Tensorflow Learn (TFLearn) 将原始值向量化为特征
【发布时间】:2016-07-02 23:18:26
【问题描述】:

TFLearn has a number of useful utilities 用于训练可以生成衍生特征列的线性估计器,但是我真的很想通过输入一个原始示例来验证特征向量化过程 -> 并获取特征向量。

很遗憾,我看不到使用 TFLearn 代码库的方法。

作为一个有两列的(愚蠢的)示例,“性别”(分类)和一个标签:

female,98
male,38

配合相应的脚本:

import tensorflow as tf
import pandas as pd 

df_train = pd.read_csv(
    tf.gfile.Open("wide_n_deep/data.csv"),
    names=["gender", "label"],
    skipinitialspace=True)
df_train.label = (df_train.label).astype(int)

gender = tf.contrib.layers.sparse_column_with_keys(
        column_name="gender", 
        keys=["female", "male"])

wide_columns = [gender]
model = tf.contrib.learn.LinearClassifier(
    model_dir="models", 
    feature_columns=wide_columns)

def input_fn(df):
    categorical_cols = {"gender": tf.SparseTensor(
            indices=[[i, 0] for i in range(df["gender"].size)],
            values=df["gender"].values,
            shape=[df["gender"].size, 1])}
    label = tf.constant(df["label"].values)
    return categorical_cols, label

model.fit(input_fn=lambda: input_fn(df_train), steps=100)

问题:如何从这个例子中得到特征向量?

example = {"gender" : "female", "label" : 93}  # or a DataFrame row, etc

谢谢!

【问题讨论】:

    标签: python tensorflow


    【解决方案1】:

    一些相关且有用的方法可以在它的超父类_DNNLinearCombinedBaseEstimator中找到。

    例如_get_linear_feature_columns_get_dnn_feature_columnsdnn_weights_dnn_bias_linear_bias_linear_weights_

    【讨论】:

    • 你有代码示例吗?另外我想我很惊讶答案是带有前导下划线的方法(私有)。这对特征化器来说是一个非常重要的功能!
    猜你喜欢
    • 1970-01-01
    • 2017-08-24
    • 1970-01-01
    • 1970-01-01
    • 2015-07-20
    • 1970-01-01
    • 2016-10-11
    • 1970-01-01
    • 2019-04-10
    相关资源
    最近更新 更多