问题标签 [softmax]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1160 浏览

image - 在tensorflow中获取多个图像文件作为二维张量

对于在 python 中使用 tensorflow 的 softmax 回归程序,我想将我的 1000 个 jpeg 图像文件作为 2D 张量 x:[图像索引,像素索引]。“图像索引”是图像,像素索引是该图像的特定图像像素。模型方程为:

图像大小 = 图像的高度 * 宽度(所有图像的常量)。

在张量流中以这种形式获取我的图像文件的最佳方法是什么?

0 投票
1 回答
9012 浏览

python - Tensorflow:将张量转换为 numpy 数组,然后传递到 feed_dict

我正在尝试为 CIFAR 分类建立一个 softmax 回归模型。起初,当我尝试将图像和标签传递到提要字典中时,我收到一个错误,指出提要字典不接受张量。然后我使用 .eval() 将它们转换为 numpy 数组,但程序挂在 .eval() 行并且不再继续。如何将此数据传递到 feed_dict?

CIFARIMAGELOADING.PY

CIFAR.PY

0 投票
2 回答
6962 浏览

python - Softmax矩阵到0/1(OneHot)编码矩阵?

假设我有以下张量t作为 softmax 函数的输出:

现在我想将此矩阵t转换为类似于 OneHot 编码矩阵的矩阵:

我熟悉c = tf.argmax(t)这会给我每行的索引t应该是 1。但是从cto去Y似乎很困难。

我已经尝试过的是转换ttf.SparseTensorusing c,然后使用tf.sparse_tensor_to_dense()to get Y。但是这种转换涉及相当多的步骤,而且对于这项任务来说似乎有些过分——我什至还没有完全完成它,但我相信它可以工作。

有没有更合适/更简单的方法来进行我所缺少的这种转换。

我需要这个的原因是因为我在 Python 中有一个自定义的 OneHot 编码器,我可以在其中提供Y. tf.one_hot()不够广泛 - 不允许自定义编码。

相关问题:

0 投票
1 回答
1115 浏览

r - 使用 Softmax 转换输出激活会产生相似的值

我训练了一个简单的递归网络(62 个输入单元、124 个隐藏/上下文单元、62 个输出单元)来预测句子中的后续单词。我使用了 sigmoid 激活函数。由于各种奇怪的原因,无法在训练期间应用 softmax。我的教授建议,我可以在之后将 softmax 应用于网络输出。该矩阵有 576 行和 62 列。所以我通过以下方式在 R 中实现了 softmax:

softmax_complete() 返回的矩阵的每一行正确地总和为 1。问题是,对于每一行,我的函数产生的值彼此非常相似。由于值几乎“相同”,因此无法验证网络性能。

这是一些小的示例数据。它来自网络输出的第二行。Softmax 尚未应用。

当我将 softmax 应用于该行时,我得到以下结果:

行总和为 1.000703。对于上面示例中未描述的另一行,行总和为 0.9976472。我究竟做错了什么?

也许你们有解决这个问题的想法。提前感谢您的时间和帮助:-)

问候, 马蒂亚斯

编辑:

这就是我通过 RSNNS 创建 Elman Net 的方式:

0 投票
1 回答
473 浏览

matlab - matconvnet分类训练最后一层(softmax)?

我想重新训练 vgg-imagenet-f 网络进行分类(而不是直接进行图像比较,这是我用自己的网络所做的)。然而,下载的网络是一个部署网络,不包含损失层。由于我之前没有进行过分类训练,所以我对如何设计最后一层感到有些困惑。我希望它会是这样的:

但我不知道我的@forward 和@backward 函数应该是什么。他们应该是softmax吗?值得注意的是,我有一个带有大约 10k 图像、相应标签和一个 ID 元素的 imdb,其唯一编号为 1 - 10k。感谢您提供任何帮助,或任何指向在 matconvnet/matlab 中构建该层的方式示例的链接!

0 投票
0 回答
95 浏览

neural-network - 常规softmax和采样softmax有什么区别?

我正在学习 seq2seq 神经模型,我对常规的 softmax 和采样的 softmax 感到困惑。有人告诉我,采样的 softmax 主要用于大词汇量。那么任何人都可以直观地解释两者之间的区别吗?

0 投票
2 回答
3310 浏览

python - Tensorflow softmax 函数返回 one-hot 编码数组

我有这段代码计算来自我的 convnet 的输出预测的 softmax 函数。

我的预测数组的形状为 [batch_size, number_of_classes] = [128,6] 该数组的示例行是...

运行 softmax 函数后,我将得到一个热编码数组的结果......

我认为这是因为我正在采用非常大的值的指数。我只是想知道我是否做错了什么,或者我是否应该在应用 softmax 函数之前先缩放我的值。我的损失函数是

我正在使用 Adam Optimizer 将其最小化

我的网络能够很好地学习。

我应用 softmax 函数的原因是为了获得测试数据上每个类的概率值。

编辑

似乎为我的 softmax 函数修复了这些非常大的值,我应该添加归一化和正则化。我已经为我的 convnet 添加了设计代码,任何关于在何处放置正则化和规范化的帮助都会很棒。

0 投票
1 回答
2960 浏览

python - 张量流损失函数?

张量流中有很多损失函数,如 sigmoid_cross_entropy_logits、softmax_cross_entropy_logits。你能写出这些函数的数学公式吗?什么是logits?是指这个功能吗?它是明智地应用元素吗?

0 投票
1 回答
461 浏览

machine-learning - 简单的softmax模型的Tensorflow参数值没有变化

我正在尝试在我的图像数据上使用 tensorflow 构建一个 softmax 模型,灵感来自 MNIST 示例。当我尝试训练模型时,我发现损失没有减少。我还看到第一次迭代后参数(W,b)值没有变化。我是否需要在每次迭代后显式更新我的参数值?

代码:-

成本始终保持相似:

更新:批量大小代码

0 投票
1 回答
858 浏览

matlab - (matlab) 带有 relu 和 softmax 的 MLP 不适用于小批量 SGD,并在 MNIST 数据集上产生类似的预测

我在 MNIST 数据集上实现了一个带有 1 个隐藏层的多层感知器。隐藏层的激活函数是leaky(0.01) ReLu,输出层有一个softmax激活函数。学习方法是 mini-batch SGD。网络结构为784*30*10。问题是我发现网络对每个输入样本所做的预测非常相似。这意味着模型总是想认为图像是某个特定的数字。感谢@Lemm Ras 指出先前 data_shuffle 函数中的标签数据不匹配问题,现已修复。但是经过一些批量训练后,我发现预测仍然有些相似:在此处输入图像描述这很令人困惑。

另一个问题是更新值与原始权重相比太小,在 MLP 代码中,我添加了变量 'cc' 和 'dd' 来记录它们的 weight_update 和 weight 之间的比率,

调试时,cc 的大小为 10^-4(0.0001),dd 也是 10^-4。这可能是准确性似乎没有提高很多的原因。

经过几天的调试。我不知道为什么会发生这种情况以及如何解决它,这让我卡了一个星期。有人能帮助我吗?截图是softmax函数后A2的值。

这里是训练 MLP 函数,请忽略当前设置为 0 的 L2 正则化参数 lamda。

这是softmax函数:

labels_matrix 是 A2 的目标输出矩阵,创建为:

和 Relu:

数据洗牌

数据加载: