首页 > 解决方案 > 创建一个 Numpy 数据集

问题描述

我对 Tensorflow 比较陌生。我有自己想要创建的数据集。它包含 60000 个用于输入的 numpy 数组 (13x44) 和 60000 个输出向量 (58x1)。可以使用该my_data()功能加载一个样本。

def build_dataset(file, param, batch_size):
# Create tf data set
  ds = tf.data.Dataset.from_tensor_slices((file, param))
  ds = ds.shuffle(N_shuffle_buffer)
  ds = ds.batch(batch_size).repeat().prefetch(N_prefetch)
  return ds

for i in range(len(mfcc_list)):
  m,p=my_data(mfcc_list[i],parameter_list[i])
  mfccs= #??????# 
  parameters= #?????#     

train_ds = build_dataset(mfccs[0:N_training_examples],
                                     parameters[0:N_training_examples], batch_size)
validation_ds = build_dataset(mfccs[N_training_examples:N_training_examples+N_validation_examples],
                                          parameters[N_training_examples:N_training_examples+N_validation_examples],
                                          batch_size)
test_ds = build_dataset(mfccs[N_training_examples+N_validation_examples:],
                                    parameters[N_training_examples+N_validation_examples:], batch_size)

我的理解是我需要创建 2 个张量,其中包含:

  1. 我所有的输入数组和
  2. 所有输出向量。

但我不确定哪个 tensorflow 函数能最有效地做到这一点。

标签: pythontensorflow

解决方案


只需创建两个列表:

mfccs = []
parameters = []
for i in range(len(mfcc_list)):
  m,p=my_data(mfcc_list[i],parameter_list[i])
  mfccs.append(m)
  parameters.append(p) 

推荐阅读