好的,我一直在用Python摆弄神经网络,已经做了一些前馈和循环神经网络。我对它们的工作原理有了一个基本的了解。
有时候我会看到一些人使用神经网络来生成文本等内容;他们声称训练了数千段文字,然后它就能写出新的段落。最近我读了一篇关于一个神经网络的文章,该网络分析了数千种字体,然后创建了自己的字体。
问题在于,我到目前为止制作的所有神经网络都需要一个包含输入和输出的数据集。而我读到的这些神经网络似乎不需要输入,它们只是观察许多实例,然后创建一个新的实例(就像它们只处理输出一样)。
我是不是错过了什么?我读到的这些神经网络是不同类型的神经网络吗?假设我有一堆旋律,格式是神经网络可以处理的(非常短的MIDI文件)。我要用什么类型的网络来训练这些旋律,并让它生成新的旋律?
回答:
你到目前为止所做的大概是所谓的分类;现在你需要关注的是预测和回归。
你仍然以相同的方式训练你的网络。训练完成后,你仍然需要输入数据,但你得到的不是一个类别(来自分类),而是对接下来可能发生的步骤的预测。例如,一系列音符。你仍然需要输入数据来进行工作。但我想这可以是随机的、半随机的,或者甚至是生成的音符。
这里有一个关于用神经网络进行预测的好旧短教程:http://www.obitko.com/tutorials/neural-network-prediction/
然后,看看你已经在使用的编程库,寻找预测或回归方法。