【问题标题】:How to train neural networks with multi-channel 1D objects?如何用多通道一维对象训练神经网络?
【发布时间】:2017-07-28 22:52:01
【问题描述】:

目的是实现一个具有多个通道(即输入层)的一维对象(例如时间序列)的神经网络架构。这个想法是在组合任何通道的特征图以输出概率预测之前,在任何通道中应用独立的操作。

可能的解决方案是使用Lasagne。 Lasagne 是 Theano 的轻量级包装器。如果需要 Theano 的灵活性但又不想总是从头开始编写神经网络层,通常建议使用它。

Lasagne 是否提供工具来在 python 中为一维对象实现多通道神经网络?是否可以使用lasagne.layers 实现多个输入层,还是应该使用 theano 创建一个自定义层?

【问题讨论】:

    标签: python neural-network lasagne


    【解决方案1】:

    2D 卷积

    时间序列的多通道实际上只是一个二维数据矩阵,你可以把它想象成一张图片。您可以为此应用标准卷积层。

    如果您想“在组合任何通道的特征图之前在任何通道中应用独立操作”,那么这可以通过将第一层中的卷积大小配置为窄(宽度 1)来完成渠道维度,时间维度宽;然后在下面的层中组合通道。

    【讨论】:

    • 这很有帮助,谢谢。但是,此过程假定输入层具有相同的大小。你能扩展这种情况的答案吗?
    • @MLguy 是的,多个通道通常假定它们具有相同的大小 - 如果它们不是 不同,那么您只需强制它们具有相同的大小进行一些预处理 - 填充,用合理的值填充间隙,拉伸值,例如一个频道是每日频道,另一个频道是每周频道,然后您将每周数字复制或插入每日值。但这通常是在 NN 系统之外完成的。
    猜你喜欢
    • 2014-06-23
    • 2011-04-07
    • 1970-01-01
    • 2012-04-02
    • 2018-08-19
    • 2010-11-20
    • 2019-09-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多