码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 理解交叉熵(Cross Entropy)


    交叉熵(Cross-Entropy)是一种用于衡量两个概率分布之间的距离或相似性的度量方法。在机器学习中,交叉熵通常用于损失函数,用于评估模型的预测结果与实际标签之间的差异。

    在分类问题中,交叉熵损失函数通常用于多分类问题,其中模型需要对输入样本进行分类,而标签是类别概率分布。交叉熵损失函数通过计算模型预测的概率分布与真实标签的概率分布之间的差异来衡量模型的性能。

    具体来说,对于给定的样本和标签,交叉熵损失函数可以表示为:

    L(y, y') = - ∑(y[i] * log(y'[i]))

    其中 y 是真实标签的概率分布,y' 是模型预测的概率分布,x 是样本的特征向量。交叉熵损失函数的目的是最小化预测概率分布与真实概率分布之间的差异,使得模型能够更好地学习到数据的内在规律和特征。

    在深度学习中,交叉熵损失函数通常与反向传播和优化算法一起使用,通过不断调整模型的参数来优化模型的性能。常用的交叉熵损失函数包括二元交叉熵、多元交叉熵和多标签交叉熵等。

    1. import numpy as np
    2. ​
    3. # 样本数据给出的分布概率,等于4的概率是100%,等于其他数字的概率是0%
    4. p = [0,0,0,0,1,0,0,0,0,0]
    5. ​
    6. # 第一种情况,识别结果是4的概率是80%,识别结果是9的概率是20%
    7. q1 = [0,0,0,0,0.8,0,0,0,0,0.2]
    8. # 第二种情况,识别结果是4的概率是60%,是9的概率是20%,是0的概率是20%
    9. q2 = [0.2,0,0,0,0.6,0,0,0,0,0.2]
    10. ​
    11. loss_q1 = 0.0
    12. loss_q2 = 0.0
    13. ​
    14. for i in range(1, 10):
    15. # 如果p(x)=0,那么,p(x)*log q1(x) 肯定等于0。如果q1(x)等于0,那么,log q1(x)不存在
    16. if p[i] != 0 and q1[i] != 0:
    17. loss_q1 += -p[i]*np.log(q1[i])
    18. # 如果p(x)=0,那么,p(x)*log q2(x) 肯定等于0。如果q2(x)等于0,那么,log q2(x)不存在
    19. if p[i] != 0 and q2[i] != 0:
    20. loss_q2 += -p[i]*np.log(q2[i])
    21. print ("第一种情况,误差是:{}".format( round(loss_q1, 4)))
    22. print ("第二种情况,误差是:{}".format(round(loss_q2, 4)))

    第一种情况,误差是:0.2231

    第二种情况,误差是:0.5108

  • 相关阅读:
    时序数据库-4-[IoTDB]的docker安装和python3操作
    vue3+vite+ts配置多个代理并解决报404问题
    潘多拉 IOT 开发板学习(HAL 库)—— 实验2 蜂鸣器实验(学习笔记)
    二叉树理论基础篇
    做UI设计师是否需要美术功底?
    安全运营中心即服务提供商评估
    html从零开始9:javaScript简介,语句、标识符,变量,JavaScript引入到文件【搬代码】
    贤鱼的刷题日常(数据结构栈学习)--P1175 表达式的转换--题目详解
    四川思维跳动商务信息咨询有限公司是真的吗?
    208.实现Trie(前缀树)
  • 原文地址:https://blog.csdn.net/T20151470/article/details/134278644
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号