<p>函数<code>torch.nn.functional.softmax</code>有两个参数:<code>input</code>和<code>dim</code>。根据它的文档,softmax操作应用于沿着指定的<code>dim</code>的所有<code>input</code>片,并将重新缩放它们,使元素位于<code>(0, 1)</code>范围内,总和为1。</p>
<p>输入为:</p>
<pre><code>input = torch.randn((3, 4, 5, 6))
</code></pre>
<p>假设我需要以下内容,这样数组中的每个条目都是1:</p>
<pre><code>sum = torch.sum(input, dim = 3) # sum's size is (3, 4, 5, 1)
</code></pre>
<p>如何应用softmax?</p>
<pre><code>softmax(input, dim = 0) # Way Number 0
softmax(input, dim = 1) # Way Number 1
softmax(input, dim = 2) # Way Number 2
softmax(input, dim = 3) # Way Number 3
</code></pre>
<p>我的直觉告诉我这是最后一个,但我不确定。英语不是我的第一语言,因此使用<code>along</code>这个词似乎让我感到困惑。</p>
<p>我不太清楚“一路”是什么意思,所以我将用一个例子来说明问题。假设我们有一个大小张量(s1,s2,s3,s4),我希望这样</p>