PyTorch中的CrossEntropyLoss()
💡
原文英文,约600词,阅读约需2分钟。
📝
内容提要
本文介绍了L1 Loss(MAE)、L2 Loss(MSE)、Huber Loss、BCE和Cross Entropy Loss的概念和用法。Cross Entropy Loss可以从输入张量和目标张量中计算出0D或更高维的零个或多个值(浮点数)。初始化参数包括权重、忽略索引、减少方式和标签平滑等。示例展示了使用类索引和类概率作为目标张量的情况。
🎯
关键要点
- 本文介绍了L1 Loss(MAE)、L2 Loss(MSE)、Huber Loss、BCE和Cross Entropy Loss的概念和用法。
- Cross Entropy Loss可以从输入张量和目标张量中计算出0D或更高维的零个或多个值(浮点数)。
- 初始化参数包括权重、忽略索引、减少方式和标签平滑等。
- 示例展示了使用类索引和类概率作为目标张量的情况。
- 初始化的第一个参数是权重(可选,默认值为None,类型为浮点数的张量)。
- ignore_index参数用于初始化(可选,默认值为-100,类型为整数)。
- reduction参数用于初始化(可选,默认值为'mean',类型为字符串),可选择'none'、'mean'或'sum'。
- label_smoothing参数用于初始化(可选,默认值为0.0,类型为浮点数),必须在[0, 1]之间。
- 输入张量(必需,类型为浮点数的张量)可以是1D或更高维的张量,softmax()在内部使用,不需要手动调用。
- 目标张量(必需,类型为类索引的整数张量或类概率的浮点数张量)可以是0D或1D张量。
- 如果目标张量的大小与输入张量不同,则视为类索引;如果相同,则视为类概率,且应在[0, 1]之间。
- 空的1D或更高维的输入和目标张量在reduction='mean'时返回nan。
- 空的1D或更高维的输入和目标张量在reduction='sum'或'reduction='none'时返回-0。
- 提供了使用类索引和类概率的示例代码,展示了如何使用CrossEntropyLoss。
🏷️
标签
➡️