美文网首页
[pytorch]如何将label转化成onehot编码

[pytorch]如何将label转化成onehot编码

作者: null1106 | 来源:发表于2017-06-11 20:30 被阅读0次

    之前用octave学习神经网络的时候,用逻辑回归,激活函数是sigmoid,损失函数是交叉熵损失函数,那个时候不用任何框架,需要把label转化成onehot编码:

    c =[1:10]
    y =(y==c)

    只需要两行代码,很简单。
    现在使用pytorch框架,刚开始学,情况比较复杂,废了半天时间才能把自己的数据正确导入程序(需要用固定的torch容器来装),之后训练神经网路的时候开始使用交叉熵损失函数(CrossEntropyLoss),没有发现错误,改用MSE损失函数后反而会报错。后来知道,使用交叉熵损失函数的时候会自动把label转化成onehot,所以不用手动转化,而使用MSE需要手动转化成onehot编码,转化方法如下(https://discuss.pytorch.org/t/convert-int-into-one-hot-format/507/3):

    Paste_Image.png

    相关文章

      网友评论

          本文标题:[pytorch]如何将label转化成onehot编码

          本文链接:https://www.haomeiwen.com/subject/nmfkqxtx.html