微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

从TFRecord数据集中提取多个功能

如何解决从TFRecord数据集中提取多个功能

我得到了一个TFRecordDataset,其中包含4个麦克风和一个标签的录音。现在,我想解析此数据集,以便为所有麦克风获得4个不同的集合,但具有相同的Label。我该怎么做?

这是我的代码,我可以在其中提取Mikrophone作为功能

feature_map = {
    'spectrum_matrix1'       : tf.io.VarLenFeature(dtype=tf.float32),'spectrum_matrix2'       : tf.io.VarLenFeature(dtype=tf.float32),'spectrum_matrix3'       : tf.io.VarLenFeature(dtype=tf.float32),'spectrum_matrix4'       : tf.io.VarLenFeature(dtype=tf.float32),'spectrum_matrix_shape' : tf.io.FixedLenFeature([2],tf.int64),'RPM_Label'             : tf.io.VarLenFeature(dtype=tf.float32)}

def _parse_function(serialized):
    # Parse the input tf.Example proto using the dictionary above.
    parsed = tf.io.parse_single_example(serialized,feature_map)
    timesteps = parsed['spectrum_matrix_shape'][1]
    AmountFreq = parsed['spectrum_matrix_shape'][0]
    feature1 = tf.reshape(tf.sparse.to_dense(parsed['spectrum_matrix1']),(1,timesteps,AmountFreq))
    feature2 = tf.reshape(tf.sparse.to_dense(parsed['spectrum_matrix2']),AmountFreq))
    feature3 = tf.reshape(tf.sparse.to_dense(parsed['spectrum_matrix3']),AmountFreq))
    feature4 = tf.reshape(tf.sparse.to_dense(parsed['spectrum_matrix4']),AmountFreq))
    label = tf.reshape(tf.sparse.to_dense(parsed['RPM_Label']),1))
    return feature1,label

Train_data = tf.data.TFRecordDataset([Training_Files]).map(_parse_function)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。