嗨我试图在tensorflow中制作一个小分类器。我想从csv文件中读取数据并将其用于我的训练阶段,问题是我的文件内容看起来像这样:
对象,categorie
蓝色的balon,玩具
白色塑料船,玩具
一本大书,其他的
野猫,动物
湿海豚,动物
...
所以我想阅读句子,然后将它们转换为矢量,用于张量流模型。我所提到的所有信息都与数字数据有关,但不知道如何使用这样的数据。
来自官方网站的turorials使用数字数据,到目前为止最好的选择是使用字典,但我认为应该存在更好的选择。
另一种选择是制作我自己的方法,但可能不精确。
有人有任何想法我该怎么做? mi方法的替代方法或如何处理张量流中的单词?
对不起,如果我的英语不好。
修改
尝试将句子转换为多维数组,但结果并不好,我估计结果不佳是由于某些语句可能很短而其他语句很长,这会影响每个数组的最终可用空间,而这个空闲空间会影响结果是概率模型。有什么建议吗?
答案 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