【天池题解】题解:CAAI-BDSC2023社交图谱链接预测(任务一:社交图谱小样本场景链接预测)

news2024/10/6 12:25:57

【天池题解】题解:CAAI-BDSC2023社交图谱链接预测(任务一:社交图谱小样本场景链接预测)

文章目录

  • 【天池题解】题解:CAAI-BDSC2023社交图谱链接预测(任务一:社交图谱小样本场景链接预测)
    • 比赛介绍
    • 1. 方法介绍
    • 2. 算法描述
      • 2.1 构建用户特征
      • 2.2 基于特征进行预测
    • 3. 参数设置
      • 4. 方法分析

在这里插入图片描述

比赛介绍

比赛地址:官网

  • CAAI第八届全国大数据与社会计算学术会议(China National Conference on Big Data & Social Computing,简称BDSC2023)将于2023年7月9-11日在新疆乌鲁木齐召开,由中国人工智能学会主办、社会计算与社会智能专委、新疆工程学院共同承办。本届会议的主题为“数字化转型与可持续发展”,立足全球数字化转型的技术变革、治理与政策实践,通过跨学科交叉视野探索通过数字化推动可持续发展的全球经验与中国智慧。

  • “社交图谱链接预测”赛道背景
    社会网络是由社会个体成员之间因为互动而形成的相对稳定的社会结构,成员之间的互动和联系进一步影响人们的社会行为,电子商务平台大范围的普及和使用,不仅满足人们丰富多样的消费需求,也承载着社会成员基于商品消费产生的互动链接,形成基于电商平台的在线社交网络,电商场景社交知识图谱的构建有助于深入理解在线社交网络的结构特性与演化机理,为用户社交属性识别和互动规律发现提供有效方式。电商平台活动和场景形式丰富多样,用户表现出不同的社交行为偏好,且伴随活动场景、互动对象、互动方式、互动时间的不同而不断发生变化,动态性高,不确定性强,这些都给社交知识图谱的构建和应用带来巨大挑战。

  • 本赛道基于阿里电子商务平台用户互动数据展开社交图谱链接预测任务,本次评测包括两个子任务:社交图谱小样本场景链接预测,社交图谱动态链接预测。

1. 方法介绍

方法—github地址: 潘子你缺W吗?

本方法采用基于启发式的特征工程方法来建模并解决社交图谱小样本场景链接预测问题。总的来说,分为以下两部分:

  • 1) 构建用户特征:对源场景的数据集进行处理,获得用户的正向邀请关系和反向被邀请关系,以此来构成用户的特征。
  • 2) 基于特征进行预测:基于用户的特征,采用启发式的方法(一阶邻居与二阶邻居结合)来对用户邀请的用户进行预测。

2. 算法描述

2.1 构建用户特征

源场景数据集中,每个数据样本含有以下信息:
在这里插入图片描述
我们对每个数据样本,对inviter_id、event_id、voter_id、ds四个字段进行处理,并保存到正向邀请关系和反向的被邀请关系中。举个例子,在2022年5月5日,用户1在场景2下邀请了用户3,那么我们便保存相应的信息如下:

  • 正向邀请关系:data[1][3].append((2,20220505))
  • 反向被邀请关系:data1[3][1].append((2,20220505))
  • 注:data[i][j]是一个list,其中元素为二元组:(场景,时间)。data[i][j]可以理解为用户i邀请用户j的历史记录;data1[i][j]也是一个list,其中元素也为二元组(场景,时间)。Data1[i][j]则可以理解为用户i被用户j邀请的历史记录。

经过上述的处理之后,我们便得到了用户的正向邀请关系和反向被邀请关系,以此来构成用户的特征。

2.2 基于特征进行预测

对于每个待预测的样本(s,r),其中s代表邀请者,r代表目标场景,我们要预测用户s在场景r下可能邀请的用户。接下来我们基于启发式的方法来进行预测。

  • 首先,我们对用户s的一阶邻居进行得分构建。
    s的一阶邻居包含:s邀请过的用户,以及邀请过s的用户(也就是上述2.1中data和data1中存储的信息)。data(data1)中保存的信息其实就是用户的历史交互信息,我们根据交互的时间和次数来衡量一个用户是否与用户s关系密切,也就是s是否会邀请这个用户。
    ① 对于时间处理,由于源场景数据的时间范围(20211227-20221224)大概为1年时间,因此我们对时间减去一个初始的时间(20211101),然后再除以一个时间因子tc(默认为100),防止过大,影响效果(将三位数变为一位数)。
    ② 对于次数处理,我们简单的采用累加进行计算权重。举个例子,也就是用户1邀请过用户2有10次,而邀请过用户3有5次,那我们则可以认为用户1与用户3的关系比用户2的密切,因此我们简单的采用了累加。
    上述的计算用户关系权重的过程中,我们另外也引入了两个参数pw(默认为30)和nw(默认为15),来防止正向和反向关系计算导致的权重过大,影响效果。
  • 然后,我们基于用户的一阶邻居来求二阶邻居的权重。
    这里对二阶邻居的权重进行简化,只将次数这个因素纳入计算,其他的计算类似于一阶邻居权重的计算。计算初期二阶邻居的权重也会被初始化远小于一阶邻居,因为我们认为用户的一阶邻居比二阶邻居要重要。
  • 最后,我们将一阶邻居和二阶邻居合并,基于他们的权重进行排序,得到预测结果。

3. 参数设置

时间因子(tc):100
正向关系权重阈值(pw):30
反向关系权重阈值(nw):15

4. 方法分析

在该任务中,我们采用了基于启发式的特征工程方法,该方法捕捉到的特征信息更加全面,运行速度快,无需训练,端到端直接运行。

  • 尝试了一系列的深度学习方法之后,通过实验结果(可视化)和理论分析发现,大多数的深度学习方法基于节点嵌入的相似性来获得结果,然而没有显式地捕捉很重要的特征,比如说交互的时间以及交互的次数,即使将这些因素纳入深度模型的建模之中,也很难学习到有效的表示。

因此,基于启发式的特征工程方法可以。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

中介者模式的学习与使用

1、中介者模式的学习 中介者模式是一种行为型设计模式,它通过引入一个中介者对象来解耦一组对象之间的交互。中介者模式促进了对象之间的松耦合,使得它们可以独立地进行通信,而不需要直接相互引用。   在中介者模式中,有以下几个…

获取文件大小并转换单位

天行健,君子以自强不息;地势坤,君子以厚德载物。 每个人都有惰性,但不断学习是好好生活的根本,共勉! 文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。…

【工具使用】Notepad++如何使用正则表达式同时搜索多个字符串

一,简介 在调试代码定位问题的时候,由于log打印比较多,故需要使用NotePad文本编辑器进行搜索,并且需要同时搜索多个字符串,本文介绍如何同时搜索多个字符串,供参考。 二,操作步骤 2.1 搜索设…

90、基于STM32单片机数字频率计频率检测配NE555脉冲发生器设计(程序+原理图+PCB源文件+参考论文+硬件设计资料+元器件清单等)

单片机主芯片选择方案 方案一:AT89C51是美国ATMEL公司生产的低电压,高性能CMOS型8位单片机,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元&a…

如何基于 ESP-IDF SDK 为应用工程添加自定义的 menuconfig 编译条件设置?

在工程的 main 目录下添加 Kconfig.projbuild 文件对需要添加自定义设置的参数进行定义在应用代码中使用自定义设置的参数编写 Kconfig.projbuild 文件 在工程的 main 目录下添加 Kconfig.projbuild 文件 接下来会基于 esp-idf/examples/peripherals/uart/uart_async_rxtxtask…

Python黑魔法揭秘:超强公共操作符和推导式的编程技巧

文章目录 前言公共操作1.运算符1) 合并操作2)* 复制操作in / not in 判断数据在 / 不在容器中 公共方法len()del / del()max()min()range()enumerate() 容器类型转换1)list() 将某个序列转化为列表tuple() 将某个序列转换为元组set() 将某个序…

OpenCloudOS社区开源,助力软件开发

早前红帽宣布限制源代码访问性的政策,并解释说RHEL相关源码仅通过CentOS Stream公开,付费客户和合作伙伴可通过Red Hat Customer Portal访问到源代码,由此也导致非客户获取源码越来越麻烦, 据了解,CentOS是红帽发行的…

效率为王!项目管理软件如何帮你提高效率?

对于任何商业组织及其客户来说,低效率的员工和浪费的时间都是一个问题。团队成员懈怠会对团队的整体效率产生负面影响。除了巨大的财务挫折之外,这些问题的混合还导致多次延误、工作质量差和客户不满意。 但有了正确的项目管理软件,企业就可…

Netty各组件执行流程及原理

目录 一、netty执行流程 二、EventLoop 1、事件循环对象EventLoop 2、事件循环对象组EventLoopGroup 3、io任务 4、分工细化 5、handler执行中如何换的group 三、Channel 1、常用方法 2、channelFuture 3、为什么要异步 四、Future & Promise 1、jdk future …

Linux13.文件(上)

1.文件 内容 属性。 2.在程序中创建一个文件,文件是进程创建的(跑起来才有),默认路径是进程的工作路径。 3. C语言中字符串以\0结尾,文件不是。 4.指令 >文件 :清空文件。 5.理解cat指令的实现方式。 6.使用位操作传递宏标记位 7.操…

C语言经典案例-2

今天继续给大家分享C语言学习的经典练手案例 记录在校学习第三天,继续加油 今日案例来源:csdn社区每日一练 1.商品优惠计算机 商品优惠计算器 使用if语句编程实现输入购货金额,输出实际付款金额。购货折扣率如下: 购货金额≤500元…

skywalking linux安装部署

SkyWalking APM tar 下载 结合自己的es版本下载对应的tar 地址:https://archive.apache.org/dist/skywalking/ 由于我使用的是es7所以下载对应版本 拷贝对应链接使用wget下载 wget https://archive.apache.org/dist/skywalking/8.7.0/apache-skywalking-apm-es7…

Neon入门以及常用函数

什么是neon, neon是arm架构下的一个simd的一种方案, 本质上是一些可以用于simd的寄存器 具体参考官方的图: 官方的图说明对于arm开发板, 有16个128bit的寄存器,或者也可以看作是32个64bit的寄存器 列一下常用的neon…

从零开发短视频电商 使用nimbus-jose-jwt进行对称签名和非对称签名的JWT实现

文章目录 什么是JSON Web Token何时使用JSON Web TokenJSON Web Token的结构是什么头部(Header)负载(Payload)签名(Signature)拼接起来 如何使用JSON Web Token工具库依赖流程对称签名非对称签名 总结 JWT的…

超实用攻略!GPT能玩的这么6,你居然还不知道?

开篇 自古以来,智者皆知学无止境,而在我们身边,正有一款奠基于这个原则的AI机器人—ChatGPT,他擅长从网络上学习各种知识,然后把这些知识用在他的对话中。没错,它就是天马行空的闲话家,无所不谈的取经者。可你知道怎样让它更加符合你的使用需求,适应你的工作节奏么?哦…

Qt Quick系列(9)—初识画布

🚀作者:CAccept 🎂专栏:Qt Quick 文章目录 前言代码示例1源码关键知识点 代码示例2源码关键知识点 总结 前言 画布元素的基本思想是使用上下文2D对象(ctx)渲染路径。上下文2D对象包含必要的图形功能&…

一文读懂FPC(12)- FPC的阻抗控制

FPC系列文章目录 1.什么是FPC 2.什么是R-FPC 3,FPC的基材 4.FPC基材压延铜和电解铜的区别 5,FPC的辅材 6,FPC常见的四种类型 7,FPC的生产流程简介 8,R-FPC的生产流程简介 9,FPC的发展及应用 10&a…

Vue :在 VSCode 中安装 yarn 并用 yarn 工具来控制 Vue 项目的详细过程

Ⅰ、 Yarn 工具简介: 1、什么是 yarn 工具: Yarn 是 facebook 发布的一款取代 npm 的资源包管理工具,是一个快速、可靠、安全的依赖管理工具,一款新的 JavaScript 资源包管理工具(吐槽下:最大的弊端是,要通过 npm 来…

java中的String使用注意事项、StringBuilder、StringBuffer、StringJoiner

String使用注意事项 这里第二次创造了0个对象是因为字符串常量池中已经有"abc" StringBuilder 注意StringBuilder支持链式编程 StringBuilder s new StringBuilder("abc"); s.append(666).append("acb" ).append(666); System.out.printl…

89、基于STM32单片机激光测距仪远距离倒车防撞报警器系统设计(程序+原理图+PCB源文件+参考论文+硬件设计资料+元器件清单等)

单片机主芯片选择方案 方案一:AT89C51是美国ATMEL公司生产的低电压,高性能CMOS型8位单片机,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元&a…