我发现这是将numpy数组转换为tfrecord文件
https://gist.github.com/swyoon/8185b3dcf08ec728fb22b99016dd533f
我尝试使用它转换我的numpy数据。标签是整数数组,数据是整数列表数组(对于每个标签,随机选择4个整数,将相应的嵌入取平均值,然后在输入中使用)。
但是我得到这个错误
ValueError: The input should be numpy ndarray. Instaed got object
我的数组是列表数组的原因是因为我正在进行word2vec风格的嵌入训练,其中整数是嵌入索引,并从每个列表中选择4个索引的随机样本,并对它们的嵌入进行平均。
这是我的熊猫格式的数据
EmbedID MappedC
0 0 [10158697, 5255434, 9860860, 3677049, 3451292,...
1 1 [5985929, 7356938, 5232932, 4623077, 10461651,...
2 2 [10847593, 8665775, 341568, 4164850, 6509965, ...
3 3 [9105020, 1896456, 2757197, 5911741, 8123078, ...
4 4 [11406300, 9947761, 2539951, 1928472, 1286647,...
5 5 [3535672, 9474011, 4708696, 9700618, 4762633]
6 6 [1352149, 6408648, 3218823, 977256, 2488662, 6...
忽略第一列,那只是熊猫索引。第二列用作标签,第三列中的4个随机数用作输入数据。
tfrecords可能有这种数据吗?还是另一个数据类型是理想的? Numpy似乎无法解决问题,因为在尝试加载numpy文件时,我的环境(Google Colaboratory)崩溃导致文件大小变大。