来自tensorflow官方文档,它说
例如:N = 2,source [0]为'hello world',source [1]为'a b c',则输出为st.indices = [0,0; 0,1; 1,0; 1,1; 1,2] st.shape = [2,3] st.values = ['hello','world','a','b','c']
如果我想要[['hello','world'],['a','b','c']这样的内容怎么办?
感谢。
答案 0 :(得分:1)
使用tf.map_fn
将您的批处理映射到函数tf.string_split
。
https://www.tensorflow.org/api_docs/python/tf/map_fn
地图功能会将您的批次沿第一个维度(您的批量大小N
拆分,如您问题中的文档所引用),然后它会将每个样本单独传递给tf.string_split
,每个将分别返回['hello', 'world']
和['a', 'b', 'c']
。然后map函数会将各个结果重新组合成一个数组,根据需要产生[['hello', 'world'], ['a', 'b', 'c']]
。