首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么是可以接受不同类型输入的神经网络?

什么是可以接受不同类型输入的神经网络?
EN

Data Science用户
提问于 2019-01-19 18:55:30
回答 1查看 135关注 0票数 2

有一个科学文件,实现了一个卷积神经网络分类3种不同类型的数据,尽管如何准确,是我所不知道的。

以下是对网络体系结构的解释:

这一部分描述了我们的神经网络的结构,如图3所示。我们的网络有三种类型的输入:屏幕截图(我们使用尺寸为1280×1280的页面上的裁剪,但是该网络可以处理任意大小的页面)、TextMaps (维数为128 \times 160 \times 160的张量)和候选框(任意长度的盒坐标列表)。截图由三个卷积层处理(前两层由BVLC AlexNet的预训练权值初始化)。TextMaps被处理为一个卷积层,内核大小为1 \times 1,因此它的特征捕获了各种单词的组合。然后将这两个层连接起来,由最终的卷积层处理。

我们的网络究竟意味着什么,上面有三种输入?卷积神经网络是否有可能以不同的方式传递不同的输入?

根据我的理解,用于屏幕输入的神经网络是这样创建的:

代码语言:javascript
复制
def CNN(features, labels, mode):
  input_layer = tf.reshape(image, [-1, 1280, 1280, 1])

  # Conv+ReLU
  conv_relu_1 = tf.layers.conv2d(
      inputs=input_layer,
      filters=96,
      kernel_size=[11, 11],
      padding="same",
      activation=tf.nn.relu)

  # MaxPool
  pool1 = tf.layers.max_pooling2d(inputs=conv1, pool_size=[3, 3], strides=2)

  # Conv + ReLU
  ...

那么,假设这是第一个神经网络,那么我应该为TextMaps和级联结果创建另一个神经网络吗?还是每个魔术都发生在一个单一的神经网络中?

简单地说,我是否可以单独创建接受不同类型输入的神经网络,或者对每种输入使用不同的神经网络,然后对它们的输出进行分组?

谢谢!

EN

回答 1

Data Science用户

回答已采纳

发布于 2019-01-19 19:22:38

简单地说,我是否可以单独创建接受不同类型输入的神经网络,或者对每种输入使用不同的神经网络,然后对它们的输出进行分组?

可以,停那儿吧。检查Keras的功能API,如何定义多输入/输出网络。然后,您可以创建处理每个输入的不同模型,并使用keras.models.Model()类将它们合并到一个多输入模型中。

在下面的示例中,您可以看到main_input的处理方式与aux_input不同,并且两者随后合并在一起,通过网络的其他层传播。

票数 5
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/44246

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档