小编Jar*_*rym的帖子

尝试理解 PyTorch 中的 cross_entropy 损失

这是一个非常新手的问题,但我试图解决 Torch 中的 cross_entropy 损失问题,所以我创建了以下代码:

x = torch.FloatTensor([
                        [1.,0.,0.]
                       ,[0.,1.,0.]
                       ,[0.,0.,1.]
                       ])

print(x.argmax(dim=1))

y = torch.LongTensor([0,1,2])
loss = torch.nn.functional.cross_entropy(x, y)

print(loss)
Run Code Online (Sandbox Code Playgroud)

输出以下内容:

tensor([0, 1, 2])
tensor(0.5514)
Run Code Online (Sandbox Code Playgroud)

我不明白的是,鉴于我的输入与预期输出匹配,为什么损失不为 0?

python machine-learning pytorch

7
推荐指数
1
解决办法
9539
查看次数

使用调用super的方法分配浅克隆对象时的TypeError

我正在Chrome Canary 63和Chrome 61上测试以下代码.代码的目标是设置一个调用super到类实例(z)的方法.在我的代码库中,有时会在添加到实例之前使用Object.assign克隆属性块,并且只要发生这种情况,代码就会失败.

我用下面的代码示例重现了这个问题.如果避免浅克隆(props = Object.assign({}, props);),代码工作正常,但如果我添加该行,我得到TypeError: (intermediate value).bar is not a function.

我试过做Object.create(this, Object.getOwnPropertyDescriptors(props))而不是Object.assign但它会导致同样的错误.

有没有办法正确设置super已克隆的对象?

let Moo = class {
    bar() {
        return " [bar on Moo] ";
    }
};

let Zoo = class extends Moo { 
    bar() { 
        return " [bar on Zoo] " + super.bar();
    }
};

function addProps(inst, props) {
    // Code works if the line below is commented out but otherwise
    // …
Run Code Online (Sandbox Code Playgroud)

javascript ecmascript-6

5
推荐指数
1
解决办法
95
查看次数

Firefox的奇怪的未终止字符串文字错误

我已经看到类似的问题,但我已经彻底检查了以下问题.我在Firefox的控制台中收到"未终止的字符串文字"错误.

我有一个HTML页面如下:

<HTML>
<HEAD>

<SCRIPT type="text/JavaScript">
var test = "</script>";
</SCRIPT>
</HEAD>

<BODY>
</BODY>

</HTML>
Run Code Online (Sandbox Code Playgroud)

据我所知,这个JavaScript应该没有任何效果,因为我不相信'<','/'或'>'在用作JavaScript字符串变量的一部分时需要转义.实际上以下工作:

var test = "</>";
Run Code Online (Sandbox Code Playgroud)

所以,我想知道我的小脚本是如何设法浏览浏览器或我如何解决它?

html javascript firefox

3
推荐指数
1
解决办法
2186
查看次数