Tensorflow如何将单词(字符串)从csv文件转换为适当的向量

时间:2016-07-25 17:32:39

标签: csv machine-learning nlp tensorflow deep-learning

嗨我试图在tensorflow中制作一个小分类器。我想从csv文件中读取数据并将其用于我的训练阶段,问题是我的文件内容看起来像这样:

对象,categorie
蓝色的balon,玩具
白色塑料船,玩具
一本大书,其他的 野猫,动物
湿海豚,动物 ...

所以我想阅读句子,然后将它们转换为矢量,用于张量流模型。我所提到的所有信息都与数字数据有关,但不知道如何使用这样的数据。

来自官方网站的turorials使用数字数据,到目前为止最好的选择是使用字典,但我认为应该存在更好的选择。

另一种选择是制作我自己的方法,但可能不精确。

有人有任何想法我该怎么做? mi方法的替代方法或如何处理张量流中的单词?

对不起,如果我的英语不好。

修改

尝试将句子转换为多维数组,但结果并不好,我估计结果不佳是由于某些语句可能很短而其他语句很长,这会影响每个数组的最终可用空间,而这个空闲空间会影响结果是概率模型。有什么建议吗?

1 个答案:

答案 0 :(得分:0)

幸运的是,使用pandas模块解决方案非常简单!

首先,让我们创建一个快速.csv文件:

  

example.csv:

"object","category"
"the blue balloon","toy"
"a white plastic ship","toy"
"a big book","other"
"the wild cat","animal"
"a wet dolphin","animal"

现在我们可以编写简单的Python文件:

  

convert.py

import pandas as pd

data = pd.read_csv("example.csv")
print(data)

data = data.join(pd.get_dummies(data["category"]))
data = data.drop("category", axis=1)
print(data)

最后,我们可以运行我们的文件并查看我们的结果!

$ python convert.py

                 object category
0      the blue balloon      toy
1  a white plastic ship      toy
2            a big book    other
3          the wild cat   animal
4         a wet dolphin   animal

                 object  animal  other  toy
0      the blue balloon     0.0    0.0  1.0
1  a white plastic ship     0.0    0.0  1.0
2            a big book     0.0    1.0  0.0
3          the wild cat     1.0    0.0  0.0
4         a wet dolphin     1.0    0.0  0.0