Pooling over channels in pytorchPytorch maxpooling over channels dimensionPassing Individual Channels of Tensors to Layers in KerasWhat is output tensor of Max Pooling 2D Layer in TensorFlow?Pytorch maxpooling over channels dimensionDifferent behavior of gather() function as seen in tensorflow and pytorchtensorflow equivalent of torch.gatherpytorch equivalent tf.gatherPytorch Inner Product of 3D tensor with 1D Tensor to generate 2D TensorAdd channel to MNIST via transform?Concat tensors in PyTorchImport LSTM from Tensorflow to PyTorch by hand
Did Don Young threaten John Boehner with a 10 inch blade to the throat?
How to create quantum circuits from scratch
Finding Greatest Common Divisor using LuaLatex
Host telling me to cancel my booking in exchange for a discount?
Pass USB 3.0 connection through D-SUB connector
How do you structure large embedded projects?
Would using carbon dioxide as fuel work to reduce the greenhouse effect?
What does the following chess proverb mean: "Chess is a sea where a gnat may drink from and an elephant may bathe in."
How to pass array of values in lualatex?
Function pointer parameter without asterisk
Why can't a country print its own money to spend it only abroad?
Cargo capacity of a kayak
is FIND WORDS in P?
What is the AI assistant for the Iron Man Rescue armor?
What kind of vegetable has pink and white concentric rings?
What should I watch before playing Alien: Isolation?
Strange LED behavior
What is the metal bit in the front of this propeller spinner?
Why does airflow separate from the wing during stall?
How old is the Italian word "malandrino"?
How can electronics on board JWST survive the low operating temperature while it's difficult to survive lunar nights?
Longest to Shortest tractates of Yerushalmi by daf
Why didn't NASA launch communications relay satellites for the Apollo missions?
Does a "melee spell attack" use my spellcasting ability, or my Strength?
Pooling over channels in pytorch
Pytorch maxpooling over channels dimensionPassing Individual Channels of Tensors to Layers in KerasWhat is output tensor of Max Pooling 2D Layer in TensorFlow?Pytorch maxpooling over channels dimensionDifferent behavior of gather() function as seen in tensorflow and pytorchtensorflow equivalent of torch.gatherpytorch equivalent tf.gatherPytorch Inner Product of 3D tensor with 1D Tensor to generate 2D TensorAdd channel to MNIST via transform?Concat tensors in PyTorchImport LSTM from Tensorflow to PyTorch by hand
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
In tensorflow, I can pool over the depth dimension which would reduce the channels and leave the spatial dimensions unchanged. I'm trying to do the same in pytorch but the documentation seems to say pooling can only be done over the height and width dimensions. Is there a way I can pool over channels in pytorch?
I've a tensor of shape [1,512,50,50] I'm trying to use pooling to bring the number of channels down to 3.
I saw this question but did not find the answer helpful.
conv-neural-network pytorch max-pooling
add a comment |
In tensorflow, I can pool over the depth dimension which would reduce the channels and leave the spatial dimensions unchanged. I'm trying to do the same in pytorch but the documentation seems to say pooling can only be done over the height and width dimensions. Is there a way I can pool over channels in pytorch?
I've a tensor of shape [1,512,50,50] I'm trying to use pooling to bring the number of channels down to 3.
I saw this question but did not find the answer helpful.
conv-neural-network pytorch max-pooling
can you describe, mathematically, how you plan to reduce 512 numbers to just 3 (per channel)? dividing 512 to 3 groups and then taking the max over each group?
– Shai
Mar 26 at 12:19
add a comment |
In tensorflow, I can pool over the depth dimension which would reduce the channels and leave the spatial dimensions unchanged. I'm trying to do the same in pytorch but the documentation seems to say pooling can only be done over the height and width dimensions. Is there a way I can pool over channels in pytorch?
I've a tensor of shape [1,512,50,50] I'm trying to use pooling to bring the number of channels down to 3.
I saw this question but did not find the answer helpful.
conv-neural-network pytorch max-pooling
In tensorflow, I can pool over the depth dimension which would reduce the channels and leave the spatial dimensions unchanged. I'm trying to do the same in pytorch but the documentation seems to say pooling can only be done over the height and width dimensions. Is there a way I can pool over channels in pytorch?
I've a tensor of shape [1,512,50,50] I'm trying to use pooling to bring the number of channels down to 3.
I saw this question but did not find the answer helpful.
conv-neural-network pytorch max-pooling
conv-neural-network pytorch max-pooling
asked Mar 26 at 11:08
Judy T RajJudy T Raj
4861 gold badge6 silver badges20 bronze badges
4861 gold badge6 silver badges20 bronze badges
can you describe, mathematically, how you plan to reduce 512 numbers to just 3 (per channel)? dividing 512 to 3 groups and then taking the max over each group?
– Shai
Mar 26 at 12:19
add a comment |
can you describe, mathematically, how you plan to reduce 512 numbers to just 3 (per channel)? dividing 512 to 3 groups and then taking the max over each group?
– Shai
Mar 26 at 12:19
can you describe, mathematically, how you plan to reduce 512 numbers to just 3 (per channel)? dividing 512 to 3 groups and then taking the max over each group?
– Shai
Mar 26 at 12:19
can you describe, mathematically, how you plan to reduce 512 numbers to just 3 (per channel)? dividing 512 to 3 groups and then taking the max over each group?
– Shai
Mar 26 at 12:19
add a comment |
1 Answer
1
active
oldest
votes
The easiest way to reduce the number of channels is using a 1x1 kernel:
import torch
x = torch.rand(1, 512, 50, 50)
conv = torch.nn.Conv2d(512, 3, 1)
y = conv(x)
print(y.size())
# torch.Size([1, 3, 50, 50])
If you really need to perform pooling along the channels dimension due to some reason, you may want to permute the dimensions so that the channels dimension is swapped with some other dimension (e.g. width).
This idea was referenced here.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55355669%2fpooling-over-channels-in-pytorch%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
The easiest way to reduce the number of channels is using a 1x1 kernel:
import torch
x = torch.rand(1, 512, 50, 50)
conv = torch.nn.Conv2d(512, 3, 1)
y = conv(x)
print(y.size())
# torch.Size([1, 3, 50, 50])
If you really need to perform pooling along the channels dimension due to some reason, you may want to permute the dimensions so that the channels dimension is swapped with some other dimension (e.g. width).
This idea was referenced here.
add a comment |
The easiest way to reduce the number of channels is using a 1x1 kernel:
import torch
x = torch.rand(1, 512, 50, 50)
conv = torch.nn.Conv2d(512, 3, 1)
y = conv(x)
print(y.size())
# torch.Size([1, 3, 50, 50])
If you really need to perform pooling along the channels dimension due to some reason, you may want to permute the dimensions so that the channels dimension is swapped with some other dimension (e.g. width).
This idea was referenced here.
add a comment |
The easiest way to reduce the number of channels is using a 1x1 kernel:
import torch
x = torch.rand(1, 512, 50, 50)
conv = torch.nn.Conv2d(512, 3, 1)
y = conv(x)
print(y.size())
# torch.Size([1, 3, 50, 50])
If you really need to perform pooling along the channels dimension due to some reason, you may want to permute the dimensions so that the channels dimension is swapped with some other dimension (e.g. width).
This idea was referenced here.
The easiest way to reduce the number of channels is using a 1x1 kernel:
import torch
x = torch.rand(1, 512, 50, 50)
conv = torch.nn.Conv2d(512, 3, 1)
y = conv(x)
print(y.size())
# torch.Size([1, 3, 50, 50])
If you really need to perform pooling along the channels dimension due to some reason, you may want to permute the dimensions so that the channels dimension is swapped with some other dimension (e.g. width).
This idea was referenced here.
edited Mar 26 at 14:01
answered Mar 26 at 12:57
penkovskypenkovsky
5697 silver badges13 bronze badges
5697 silver badges13 bronze badges
add a comment |
add a comment |
Got a question that you can’t ask on public Stack Overflow? Learn more about sharing private information with Stack Overflow for Teams.
Got a question that you can’t ask on public Stack Overflow? Learn more about sharing private information with Stack Overflow for Teams.
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f55355669%2fpooling-over-channels-in-pytorch%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
can you describe, mathematically, how you plan to reduce 512 numbers to just 3 (per channel)? dividing 512 to 3 groups and then taking the max over each group?
– Shai
Mar 26 at 12:19