MDL(最小描述长度)标签选择 用户标签 用户画像

news/2024/4/24 18:50:08/文章来源:https://blog.csdn.net/weixin_37763484/article/details/129242469

1.问题介绍

在基于标签的推荐系统中 ,经常需要选择一组标签作为用户画像,在相关资料中,有人提到利用最小描述长度MDL的方法来进行选择,例如肖仰华的《知识图谱概念与技术》。

但是在相关资料中,包括网络上其他资料,对于具体做法并不明确。自己之前做的工作中,有涉及到标签选择的任务,因此这里分享一下自己的理解,并结合国家的案例做说明。

2.原理

在资料中,假设CCC是要使用的标签组,X是一组实体,那么针对X,标签CCC的编码长度由以下两部分构成:

MDL(C,X)=−logP(C)+∑xi∈x−logP(xi∣C)MDL(C,X)=-logP(C)+ \sum_{x_i \in x}-logP(x_i|C) MDL(C,X)=logP(C)+xixlogP(xiC)

其中第一部分是标签组CCC的先验概率或信息量,第二部分P(xi∣C)P(x_i|C)P(xiC)是给定实体xix_ixi能够联想到标签C的概率,MDL的值越小,说明当前标签组C的信息量越多,并且越容易通过标签组C联想到实体组X,具体而言:
logP(C)=lognCnTotallogP(C)=log\frac{n_{C}}{n_{Total}} logP(C)=lognTotalnC

上面公式中,n(C)n_{(C)}n(C)表示当前标签C覆盖的关系数,nTotaln_{Total}nTotal表示总的关系数,

logP(xi∣C)=lognxinClogP(x_i|C)=log\frac{n_{x_i}}{n_{C}} logP(xiC)=lognCnxi
上面公式中,nCn_CnC含义不变,仍表示当前标签C覆盖的关系数,而nxin_{x_i}nxi可以表示在关系CCC下,xix_ixi出现的总次数。

3.例子

下面举例说明,例如现在有200个国家,其中亚洲国家50个,东亚国家10个,西亚国家10个,中亚国家10个,东南亚20个。

例子1:

假设现在国家集合XXX={中国,韩国,朝鲜,沙特,伊朗},候选标签组分别为C1C_1C1={亚洲},C2C_2C2={东亚,西亚},C2C_2C2={国家},简化起见,令nxin_{x_i}nxi均为1。按照常识,最合适的标签应该是C2C_2C2

以标签C1C_1C1为例,

logP(C)=lognCnTotal=log(50200+50+10+10+20)=log(50300)logP(C)=log\frac{n_{C}}{n_{Total}} =log(\frac{50}{200+50+10+10+20} )=log(\frac{50}{300})logP(C)=lognTotalnC=log(200+50+10+10+2050)=log(30050)

针对x1x_1x1=中国:

logP(xi∣C1)=lognxinC=log150logP(x_i|C_1)=log\frac{n_{x_i}}{n_{C}}=log\frac{1}{50} logP(xiC1)=lognCnxi=log501

因此在给定XXXC1C_1C1的情况下,其MDL应为:

-math.log(50/300)+((-math.log(1/50))+(-math.log(1/50))+(-math.log(1/50))+(-math.log(1/50))+(-math.log(1/50)))
# 计算结果:MDL(C1,X)=21.351874496368783

同理,给定XXXC2C_2C2:

-math.log(10/300)+((-math.log(1/10))+(-math.log(1/10))+(-math.log(1/10)))-math.log(10/300)+(-math.log(1/10))+(-math.log(1/10))
# 计算结果:MDL(C2,X)=18.315320228294542

同理,给定XXXC3C_3C3:

-math.log(200/300)+((-math.log(1/200))+(-math.log(1/200))+(-math.log(1/200))+(-math.log(1/200))+(-math.log(1/200)))
# 计算结果:MDL(C3,X)=26.897051940848346

结合以上结果,应选择C2C_2C2={东亚,西亚}作为标签组,来描述XXX={中国,韩国,朝鲜,沙特,伊朗},这符合实际感受。

例子2:
下面举例说明,例如现在有200个国家,其中亚洲国家50个,东亚国家10个,西亚国家10个,中亚国家10个,东南亚20个,欧洲、非洲、美洲国家各50个,

且国家集合XXX={中国,韩国,美国,加拿大},为简化起见令nxin_{x_i}nxi均为1

则在标签组C1C_1C1={亚洲,美洲},C2C_2C2={东亚,美洲},C3C_3C3={东亚,美洲,欧洲}下,MDL值分别为:

-math.log(50/450)+(-(math.log(1/50))+(-math.log(1/50)))-math.log(50/450)+(-math.log(1/50)+math.log(1/50))
# 计算结果:C1=12.218495165528731
-math.log(10/450)+(-(math.log(1/10))+(-math.log(1/10)))-math.log(50/450)+(-math.log(1/50)+math.log(1/50))
# 计算结果:C2=10.609057253094631
-math.log(10/450)+(-(math.log(3/10))+(-math.log(2/10)))-math.log(50/450)+(-math.log(1/50)+math.log(1/50))+(-math.log(50/450))
# 计算结果C3=11.014522361202795

因此选择C2C_2C2={东亚,美洲}来解释XXX={中国,韩国,美国,加拿大}。

例子3:
在例子2的基础上,假设现在有一个新的标签“亚洲工业强国”,并且中国,韩国与这个新概念高度相关,即
前面两个例子提到的nxin_{x_i}nxi均不为1,假设分别为4,2,那么C4C_4C4={亚洲工业强国,美洲}下MDL的值为:

 -math.log(10/450)+(-(math.log(4/10))+(-math.log(2/10)))-math.log(50/450)+(-math.log(1/50)+math.log(1/50))# 计算结果 C4=8.529615711414795

说明概念C4C_4C4={亚洲工业强国,美洲},比概念C2C_2C2={东亚,美洲}更能解释国家集合XXX={中国,韩国,美国,加拿大},

利用“亚洲工业强国”这个概念,更容易联想到“日本”这样的“工业强国”,而不是“香港”“澳门”这样的“金融城”。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_74719.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Laravel框架04:视图与CSRF攻击

Laravel框架04:视图与CSRF攻击一、视图概述二、变量分配与展示三、模板中直接使用函数四、循环与分支语法标签五、模板继承、包含1. 继承2. 包含六、外部静态文件引入七、CSRF攻击概述八、从CSRF验证中排除例外路由一、视图概述 视图存放在 resources/views 目录下…

MyBatis学习笔记(七) —— 特殊SQL的执行

7、特殊SQL的执行 7.1、模糊查询 模糊查询的三种方式: 方式1:select * from t_user where username like ‘%${mohu}%’ 方式2:select * from t_user where username like concat(‘%’,#{mohu},‘%’) 方式3:select * from t_u…

收集分享一些AI工具第三期(网站篇)

感谢大家对于内容的喜欢,目前已经来到了AI工具分享的最后一期了,目前为止大部分好用的AI工具都已经介绍给大家了,希望大家可以喜欢。 image-to-sound-fx (https://huggingface.co/spaces/fffiloni/image-to-sound-fx) 图片转换为相对应的声音…

2.27 junit5常用语法

一.了解junitjunit是一个开源的java单元测试框架,java方向使用最广泛的单元测试框架.所需要的依赖<dependencies><!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java --><dependency><groupId>org.seleniumhq.selenium&l…

笔记本触摸板没反应怎么办?处理方法看这些

触摸板在笔记本电脑中是非常重要的一部分&#xff0c;很多用户都会选择使用触摸板代替鼠标。然而&#xff0c;有时你可能会发现&#xff0c;你的笔记本电脑触摸板没反应&#xff0c;无法正常使用。这对于日常使用来说是非常困扰的&#xff0c;但不用担心&#xff0c;我们将在这…

react源码解析10.commit阶段

在render阶段的末尾会调用commitRoot(root);进入commit阶段&#xff0c;这里的root指的就是fiberRoot&#xff0c;然后会遍历render阶段生成的effectList&#xff0c;effectList上的Fiber节点保存着对应的props变化。之后会遍历effectList进行对应的dom操作和生命周期、hooks回…

【数据结构】知识点总结(C语言)

线性表、栈和队列、串、数组和广义表、树和二叉树、图、查找、排序线性表线性表&#xff08;顺序表示&#xff09;线性表是具有相同特性元素的一个有限序列&#xff0c;数据元素之间是线性关系&#xff0c;起始元素称为线性起点&#xff0c;终端元素称为线性终点。线性表的顺序…

sed 功能详解

介绍sedsed是一种流编辑器&#xff0c;它一次处理一行内容&#xff0c;把当前处理的行存储在临时缓冲区中&#xff08;buffer&#xff09;,称为"模式空间"&#xff0c;接着sed命令处理缓冲区中的内容&#xff0c;处理完成后&#xff0c;把缓冲区的内容送往屏幕&#…

RCEE: Event Extraction as Machine Reading Comprehension 论文解读

RCEE: Event Extraction as Machine Reading Comprehension 论文&#xff1a;Event Extraction as Machine Reading Comprehension (aclanthology.org) 代码&#xff1a;jianliu-ml/EEasMRC (github.com) 期刊/会议&#xff1a;EMNLP 2020 摘要 事件提取(Event extraction,…

哪个品牌蓝牙耳机性价比高?性价比高的平价蓝牙耳机推荐

现如今&#xff0c;随着蓝牙技术的进步&#xff0c;蓝牙耳机在人们日常生活中的便捷性更胜从前。越来越多的蓝牙耳机品牌被大众看见、认可。那么&#xff0c;哪个品牌的蓝牙耳机性价比高&#xff1f;接下来&#xff0c;我给大家推荐几款性价比高的平价蓝牙耳机&#xff0c;一起…

软件测试面试问答

笔试 笔试的话我们需要揣测具体会考什么内容&#xff0c;我们可以通过招聘信息去了解该公司需要什么样的技能&#xff0c;以此来准备笔试。一般必考的内容会有编程&#xff0c;测试用例设计&#xff0c;工作流程&#xff0c;逻辑思维等内容&#xff0c;除此之外每个公司可能还会…

移动端监听物理返回

业务场景&#xff1a;用户没有填完数据却不小心点到了回退按钮&#xff0c;此时需要展示确认弹框项目场景&#xff1a;vue2 uni-app Chrome Dev调试工具代码片段&#xff1a;onLoad(options){// 将当前url地址添加到浏览器的历史记录中window.history.pushState(null, null, …

OSI和TCP/IP网络模型细讲

文章目录一、OSI七层参考模型二、TCP/IP体系结构三、TCP/IP参考模型四、沙漏计时器形状的TCP/IP协议族五、两种国际标准对比相似之处不同之处一、OSI七层参考模型 OSI参考模型共分为7层&#xff0c;低三层面向通信&#xff0c;可用软硬件实现&#xff1b;高三层面向信息处理&am…

一个基于 LKM 的 Linux 内核级 rootkit 的实现

博客已迁移至&#xff1a;https://gls.show/ GitHub链接 演示Slides overview rootkit是一种恶意软件&#xff0c;攻击者可以在获得 root 或管理员权限后安装它&#xff0c;从而隐藏入侵并保持root权限访问。rootkit可以是用户级的&#xff0c;也可以是内核级的。关于rootk…

Android 实现菜单拖拽排序

效果图简介本文主角是ItemTouchHelper。它是RecyclerView对于item交互处理的一个「辅助类」&#xff0c;主要用于拖拽以及滑动处理。以接口实现的方式&#xff0c;达到配置简单、逻辑解耦、职责分明的效果&#xff0c;并且支持所有的布局方式。功能拆解功能实现4.1、实现接口自…

ARM的工作模式和37个寄存器

一、ARM的工作模式 ARM一共有7种工作模式 模式含义User非特权模式&#xff0c;大部分任务执行在这种模式FIQ当一个高优先级&#xff08;fast) 中断产生时将会进入这种模式IRQ当一个低优先级&#xff08;normal) 中断产生时将会进入这种模式Supervisor当复位或软中断指令执行时…

CISP注册信息安全专业人员证书

一、什么是“CISP”&#xff1f; 注册信息安全专业人员(Certified Information Security Professional&#xff0c;简称“CISP”)&#xff0c;是安全行业最为权威的安全资格认证&#xff0c;由中国信息安全测评中心统一授权组织&#xff0c;中国信息安全测评中心授权培训机构进…

GMP洁净净化车间布局建设|喜格净化设计建设

GMP洁净净化车间布局建设方案应该根据具体的生产流程、工艺要求和产品特点进行设计。以下喜格SICOLAB基本的设计原则和注意事项&#xff1a;&#xff08;1&#xff09;设计洁净度级别&#xff1a;根据产品特点和生产工艺要求&#xff0c;确定洁净度级别&#xff0c;一般分为100…

OpenCV 图像轮廓检测

本文是OpenCV图像视觉入门之路的第15篇文章&#xff0c;本文详细的介绍了图像轮廓检测的各种操作&#xff0c;例如&#xff1a;轮廓检索模式、轮廓逼近算子等操作。 图像轮廓是具有相同颜色或灰度的连续点的曲线&#xff0c;轮廓在形状分析和物体的检测和识别中很有用。图像轮廓…

2023年鞋服配饰行业如何玩转全域经营?

2023年&#xff0c;鞋服配饰行业私域已进入深水区&#xff0c;这就对私域运营提出了更高的挑战和目标&#xff0c;企业纷纷发力以私域为基石、以消费者为核心的全域经营。 不过&#xff0c;虽然鞋服配饰行业私域起步早&#xff0c;玩法多。但在迈向全域经营的过程中&#xff0…