Skip to main content

So I was studying MobileNetV2 architecture and came across this table, from the original paper, that represents its architecture.

Table 2: MobileNetV2 : Each line describes a sequence
of 1 or more identical (modulo stride) layers, repeated n times. All layers in the same sequence have the same number c of output channels. The first layer of each sequence has a stride s and all others use stride 1. All spatial convolutions use 3 × 3 kernels. The expansion factor t is always applied to the input size as described in Table 1.

Table Description: "Table 2: MobileNetV2 : Each line describes a sequence of 1 or more identical (modulo stride) layers, repeated n times. All layers in the same sequence have the same number c of output channels. The first layer of each sequence has a stride s and all others use stride 1. All spatial convolutions use 3 × 3 kernels. The expansion factor t is always applied to the input size as described in Table 1."

Table 2: MobileNetV2 : Each line describes a sequence of 1 or more identical (modulo stride) layers, repeated n times. All layers in the same sequence have the same number c of output channels. The first layer of each sequence has a stride s and all others use stride 1. All spatial convolutions use 3 × 3 kernels. The expansion factor t is always applied to the input size as described in Table 1. Table Description: "Table 2: MobileNetV2 : Each line describes a sequence of 1 or more identical (modulo stride) layers, repeated n times. All layers in the same sequence have the same number c of output channels. The first layer of each sequence has a stride s and all others use stride 1. All spatial convolutions use 3 × 3 kernels. The expansion factor t is always applied to the input size as described in Table 1."

However I don't really understand why the last pointwise convolution (conv2d 1x1) is applied after the average pooling. Shouldn't Shouldn't the output from the avgpool go to a dense layer so that it can then perform its predictions? 

What is the point of performing convolution, more precisely pointwise conv. after pooling? Also, why is k not a fixed number of kernels/filters, like the other layers?

Thanks in advance!

So I was studying MobileNetV2 architecture and came across this table, from the original paper, that represents its architecture.

Table 2: MobileNetV2 : Each line describes a sequence
of 1 or more identical (modulo stride) layers, repeated n times. All layers in the same sequence have the same number c of output channels. The first layer of each sequence has a stride s and all others use stride 1. All spatial convolutions use 3 × 3 kernels. The expansion factor t is always applied to the input size as described in Table 1.

Table Description: "Table 2: MobileNetV2 : Each line describes a sequence of 1 or more identical (modulo stride) layers, repeated n times. All layers in the same sequence have the same number c of output channels. The first layer of each sequence has a stride s and all others use stride 1. All spatial convolutions use 3 × 3 kernels. The expansion factor t is always applied to the input size as described in Table 1."

However I don't really understand why the last pointwise convolution (conv2d 1x1) is applied after the average pooling. Shouldn't the output from the avgpool go to a dense layer so that it can then perform its predictions? What is the point of performing convolution, more precisely pointwise conv. after pooling? Also, why is k not a fixed number of kernels/filters, like the other layers?

Thanks in advance!

So I was studying MobileNetV2 architecture and came across this table from the original paper that represents its architecture:

Table 2: MobileNetV2 : Each line describes a sequence of 1 or more identical (modulo stride) layers, repeated n times. All layers in the same sequence have the same number c of output channels. The first layer of each sequence has a stride s and all others use stride 1. All spatial convolutions use 3 × 3 kernels. The expansion factor t is always applied to the input size as described in Table 1. Table Description: "Table 2: MobileNetV2 : Each line describes a sequence of 1 or more identical (modulo stride) layers, repeated n times. All layers in the same sequence have the same number c of output channels. The first layer of each sequence has a stride s and all others use stride 1. All spatial convolutions use 3 × 3 kernels. The expansion factor t is always applied to the input size as described in Table 1."

However I don't really understand why the last pointwise convolution (conv2d 1x1) is applied after the average pooling. Shouldn't the output from the avgpool go to a dense layer so that it can then perform its predictions? 

What is the point of performing convolution, more precisely pointwise conv. after pooling? Also, why is k not a fixed number of kernels/filters, like the other layers?

Thanks in advance!

Changed the image to fit the rules
Source Link

So I was studying MobileNetV2 architecture and came across this table, from the original paper, that represents its architecture.

Table 2: MobileNetV2 : Each line describes a sequence
of 1 or more identical (modulo stride) layers, repeated n times. All layers in the same sequence have the same number c of output channels. The first layer of each sequence has a stride s and all others use stride 1. All spatial convolutions use 3 × 3 kernels. The expansion factor t is always applied to the input size as described in Table 1.

Table Description: "Table 2: MobileNetV2 : Each line describes a sequence of 1 or more identical (modulo stride) layers, repeated n times. All layers in the same sequence have the same number c of output channels. The first layer of each sequence has a stride s and all others use stride 1. All spatial convolutions use 3 × 3 kernels. The expansion factor t is always applied to the input size as described in Table 1."

However I don't really understand why the last pointwise convolution (conv2d 1x1) is applied after the average pooling. Shouldn't the output from the avgpool go to a dense layer so that it can then perform its predictions? What is the point of performing convolution, more precisely pointwise conv. after pooling? Also, why is k not a fixed number of kernels/filters, like the other layers?

Thanks in advance!

So I was studying MobileNetV2 architecture and came across this table, from the original paper, that represents its architecture.

Table 2: MobileNetV2 : Each line describes a sequence
of 1 or more identical (modulo stride) layers, repeated n times. All layers in the same sequence have the same number c of output channels. The first layer of each sequence has a stride s and all others use stride 1. All spatial convolutions use 3 × 3 kernels. The expansion factor t is always applied to the input size as described in Table 1.

However I don't really understand why the last pointwise convolution (conv2d 1x1) is applied after the average pooling. Shouldn't the output from the avgpool go to a dense layer so that it can then perform its predictions? What is the point of performing convolution, more precisely pointwise conv. after pooling? Also, why is k not a fixed number of kernels/filters, like the other layers?

Thanks in advance!

So I was studying MobileNetV2 architecture and came across this table, from the original paper, that represents its architecture.

Table 2: MobileNetV2 : Each line describes a sequence
of 1 or more identical (modulo stride) layers, repeated n times. All layers in the same sequence have the same number c of output channels. The first layer of each sequence has a stride s and all others use stride 1. All spatial convolutions use 3 × 3 kernels. The expansion factor t is always applied to the input size as described in Table 1.

Table Description: "Table 2: MobileNetV2 : Each line describes a sequence of 1 or more identical (modulo stride) layers, repeated n times. All layers in the same sequence have the same number c of output channels. The first layer of each sequence has a stride s and all others use stride 1. All spatial convolutions use 3 × 3 kernels. The expansion factor t is always applied to the input size as described in Table 1."

However I don't really understand why the last pointwise convolution (conv2d 1x1) is applied after the average pooling. Shouldn't the output from the avgpool go to a dense layer so that it can then perform its predictions? What is the point of performing convolution, more precisely pointwise conv. after pooling? Also, why is k not a fixed number of kernels/filters, like the other layers?

Thanks in advance!

deleted 49 characters in body
Source Link

So I was studying MobileNetV2 architecture and came across this table, from the original paper, that represents its architecture.

enter image description hereTable 2: MobileNetV2 : Each line describes a sequence
of 1 or more identical (modulo stride) layers, repeated n times. All layers in the same sequence have the same number c of output channels. The first layer of each sequence has a stride s and all others use stride 1. All spatial convolutions use 3 × 3 kernels. The expansion factor t is always applied to the input size as described in Table 1.

Table description: Table 2: MobileNetV2 : Each line describes a sequence of 1 or more identical (modulo stride) layers, repeated n times. All layers in the same sequence have the same number c of output channels. The first layer of each sequence has a stride s and all others use stride 1. All spatial convolutions use 3 × 3 kernels. The expansion factor t is always applied to the input size as described in Table 1.

However I don't really understand why the last pointwise convolution (conv2d 1x1) is applied after the average pooling. Shouldn't the output from the avgpool go to a dense layer so that it can then perform its predictions? What is the point of performing convolution, more precisely pointwise conv. after pooling? Also, why is k not a fixed number of kernels/filters, like the other layers?

Thanks in advance!

So I was studying MobileNetV2 architecture and came across this table, from the original paper, that represents its architecture.

enter image description here

Table description: Table 2: MobileNetV2 : Each line describes a sequence of 1 or more identical (modulo stride) layers, repeated n times. All layers in the same sequence have the same number c of output channels. The first layer of each sequence has a stride s and all others use stride 1. All spatial convolutions use 3 × 3 kernels. The expansion factor t is always applied to the input size as described in Table 1.

However I don't really understand why the last pointwise convolution (conv2d 1x1) is applied after the average pooling. Shouldn't the output from the avgpool go to a dense layer so that it can then perform its predictions? What is the point of performing convolution, more precisely pointwise conv. after pooling? Also, why is k not a fixed number of kernels/filters, like the other layers?

Thanks in advance!

So I was studying MobileNetV2 architecture and came across this table, from the original paper, that represents its architecture.

Table 2: MobileNetV2 : Each line describes a sequence
of 1 or more identical (modulo stride) layers, repeated n times. All layers in the same sequence have the same number c of output channels. The first layer of each sequence has a stride s and all others use stride 1. All spatial convolutions use 3 × 3 kernels. The expansion factor t is always applied to the input size as described in Table 1.

However I don't really understand why the last pointwise convolution (conv2d 1x1) is applied after the average pooling. Shouldn't the output from the avgpool go to a dense layer so that it can then perform its predictions? What is the point of performing convolution, more precisely pointwise conv. after pooling? Also, why is k not a fixed number of kernels/filters, like the other layers?

Thanks in advance!

added 424 characters in body
Source Link
Loading
deleted 21 characters in body
Source Link
Loading
deleted 21 characters in body
Source Link
Loading
added 30 characters in body
Source Link
Loading
Source Link
Loading