1

我目前正在尝试实现一个神经网络,它将根据给定的训练生成音乐。我正在使用 Flux 包在 Julia 中编写,但是我发现文档有点难以掌握(我理解 nn 背后的逻辑,但是,我仍然对不同函数的作用感到困惑)。

我首先设置了一些训练数据以输入模型:

# trainingData = an 2D array of note pitches and rhythms.
# sortedData = the same as traingData but with duplicates removed.
# The function iterates through the training data and pushes an index value (its position in 
# the sortedData array) to a new array, labels.

function labelData(trainingData, sortedData)
  labels = []
  # For each note, create a numerical label based on index of the note in the sorted data.
  for note in trainingData
    push!(labels, findfirst(isequal(note), sortedData))
  end
  return labels
end

想法是将标签索引 1 处的值输入模型,并告诉它预期输出是索引 2 处的值。然后给它索引 2,并说预期输出是索引 3,依此类推。然后,这些值充当地图,我们可以使用它来获得原始音高和节奏。

我是否正确地说该模型将能够根据预测生成一些音乐?

有人能给我一个关于如何创建模型来实现这一目标的先机吗?

干杯

4

0 回答 0