我目前正在使用TensorFlow,但似乎无法抓住是否对我的问题有用吗?

我需要创建一个能够将输入映射到输出的神经网络。

现在的进展方式,我还没有做到这一点的一个示例,所有类型的问题TensorFlow似乎解决了分类任务,而不是这种映射问题... TensorFlow是否可以这样做? ,我是否必须使用其他神经网络框架进行操作?如果有人可以显示某些代码(不是MNIST示例)

我的任务:

我目前正在尝试建立一个接收音频文件样本的神经网络,并从样本中生成MFCC功能。可以手动计算MFCC功能,我知道我要寻找的是什么。 MFCC功能是特征向量是不同的实际值编号。当您将输出拟合到预定的“垃圾箱”时,我不能将我分类为A类或B类,也不能大大降低输出的准确性。

有帮助吗?

解决方案

从您的描述来看,您似乎正在面对 回归 问题,因为您希望输出是某些值。这与 分类 问题是输出某些类的输入的概率。

使用神经网络进行回归的关键是,输出层不应具有激活,也就是说,它应该是线性层。正如@janvandervegt指出的那样,回归问题的常见损失函数是当前输出与您计算的MFCC功能之间的均方误差(MSE)。

如果您Google“ TensorFlow回归示例”,则可以找到数十个完整的示例,例如 这个 或者 这个.

其他提示

您的建议当然是可能的,您只会有 n 输出层中的节点, n 作为MFCC功能向量的大小,您需要定义一个损失功能,以确定当前犯的错误。如果所有功能具有相似的量表和相似的重要性,则可以使用均值错误,但是您可以在这里获得创意。原则上,这与末尾具有软磁层的多类分类没有很大的不同。在这种情况下,您有 C 软磁性层和交叉渗透损失函数后的输出节点,在您的情况下 n 输出层中的节点之后,例如具有MSE损耗函数的完全连接层。为其提供了许多示例,如果数据表示很好,则应合理地完成任务。尽管我不确定如果可以计算出来,为什么要使用ML方法,但您将失去准确性,而我不确定您赢得了多少速度。

一个非常简单的示例,将张量流用于回归任务而不是分类任务是带有梯度下降的线性回归,您可以在此处看到: https://github.com/aymericdamien/tensorflow-examples/blob/master/notebooks/2_basicmodels/linear_regression.ipynb

许可以下: CC-BY-SA归因
scroll top