2024腾讯游戏安全技术竞赛-机器学习赛道

决赛赛题链接https://gss.tencent.com/competition/2024/doc/2024%E8%85%BE%E8%AE%AF%E6%B8%B8%E6%88%8F%E5%AE%89%E5%85%A8%E6%8A%80%E6%9C%AF%E7%AB%9E%E8%B5%9B-%E6%9C%BA%E5%99%A8%E5%AD%A6%E4%B9%A0-%E5%86%B3%E8%B5%9B.zip

今年的题目是游戏跨语言恶意内容识别 ,题目比较简洁,数据也简单,只有0-1标签和语句.但是想要拿高分不容易,训练集少是一方面,跨语言也是一方面.相较于往年的题目,数据集非常有限(往年甚至有70G的数据),也从机器学习进化到了深度学习.

题目介绍

参赛者需要基于英语数据集开发一款跨语言恶意文本识别模型,最终模型将在包含英语、阿语、土语、俄语的测试集上评估效果,并取各语种的 F-score 平均值作为评定最终成绩的依据。

比赛提供的数据集:

1. 训练集及相关数据集:

  • 8k 条带标注数据(英语),文件名:train.txt
  • 4*20k 条无标注数据(每个语种各 20k),文件名:unlabel_text.txt
  • 4*5k 条 ChatGPT 标注数据(每个语种各 5k),文件名:labeled_text_by_ChatGPT.txt。 prompt 见文件 labeled_text_by_ChatGPT_prompt.txt。
  • 50k 平行语料(以英语为原语言,通过 ChatGPT 翻译获取)文件名:parallel_text_by_ChatGPT.txt。prompt 见文件 parallel_text_by_ChatGPT_prompt.txt。

2. 验证集:

  • 4*100 条带标注数据(每个语种各 100),文件名:dev_ar.txt、dev_en.txt、dev_ru.txt、dev_tr.txt

3. 测试集:4*1k 无标注数据(每个语种各 1k),与验证集同分布,不对外提供。

这个赛题机制比较特别,一般比赛直接提供测试集或者分数排行榜,本赛题啥也不给,完全黑盒状态,不能通过排行榜去判断自己模型的好坏,唯一评判标准只有验证集.结果就跟买彩票一样.


赛题分析

题目给出了baseline:

采用 twitter-xlm-roberta-base 作为基础模型,https://huggingface.co/cardiffnlp/twitter-xlm-roberta-base.
合并训练集和验证集作为训练集,训练参数:learning_rate=1e-5;batch_size=64;train_epoch=3;
最终指标:0.674094

一般情况下,根据比赛时间的长短,选择是否更换模型.这次比赛初赛3天,决赛5天(本来没有5天的,但是提前开赛了,感觉缺少了优势).时间比较短就没有必要更换基础模型了,最多找一下微调的模型.

废话:XLM-RoBERTa(XLM-R)是由Facebook AI团队在2019年11月发布的模型,作为其原始的XLM-100模型的更新。XLM-R是基于Transformer的语言模型,都依赖于掩码语言模型目标,并且都能够处理100种不同语言的文本。它已经证明能在各种跨语言任务上达到行业领先的性能表现,并在需要多语言理解和迁移学习的场景中尤其有用。

针对数据集,唯一能直接使用的训练集只有8k 条带标注数据(英语),其他未标注数据和GPT标注数据慎用(实测直接用会降分).所以要寻找公开的数据集(题目提到比赛不限制使用任何开源数据、模型、代码).

最后是训练方法,baseline中提到合并训练集和验证集作为训练集.而我们没有测试集,唯一的评价标准只有验证集,所以不能一开始就直接使用验证集进行训练,应该根据其他训练集在验证集上的表现,把评价指标拉到最高后,再使用验证集进行训练.


一些想法

模型

由于初赛只有两种语言,所以没有想着要使用其他微调过的模型,直接使用了baseline进行训练,可到了决赛却有4种语言,应该选用更好的微调模型,可以以验证集评价在线模型.

这里给出一些微调模型的比较(在验证集上评估,评价指标为准确率):

  • szzzzz/xlm-roberta-base-text-toxic

    https://huggingface.co/szzzzz/xlm-roberta-base-text-toxic

  • cardiffnlp/twitter-xlm-roberta-base(baseline)

    https://huggingface.co/cardiffnlp/twitter-xlm-roberta-base

  • EIStakovskii/xlm_roberta_base_multilingual_toxicity_classifier_plus

    https://huggingface.co/EIStakovskii/xlm_roberta_base_multilingual_toxicity_classifier_plus

  • airKlizz/xlm-roberta-base-germeval21-toxic-with-data-augmentation

    https://huggingface.co/airKlizz/xlm-roberta-base-germeval21-toxic-with-data-augmentation

szzzzzcardiffnlpEIStakovskiiairKlizz
en0.360.40.660.62
ru0.660.30.610.53
ar0.520.360.650.63
tr0.390.390.520.55
平均0.550.360.610.58

如果在初赛的时候就选择了一个指标较高的模型,结果应该会更好.

数据集

GitHub - aymeam/Datasets-for-Hate-Speech-Detection: Datasets for Hate Speech Detection

Multi-lingual HateSpeech Dataset | Kaggle(MultiLanguageTrainDataset.csv)

词汇 GitHub - valeriobasile/hurtlex: A multilingual lexicon of words to hurt.

英语

数据集

xhate

Davidson et al., 2017

俄语

数据集

xhate

Automatic Toxic Comment Detection in Social Media for Russian

Detection of Abusive Speech for Mixed Sociolects of Russian and Ukrainian Languages

Russian South Park

土耳其语

数据集

xhate

offenseval_2020

Turkish Hate Speech Analysis

turkish-toxic-language

turkish-offensive-language-detection

阿拉伯语

数据集

Let-Mi

MLMA

L-HSAB

Arabic Hate Speech Dataset 2023

SSTD

实际测试只有部分数据集能提分,其他数据集都不太行.我认为是打标签的规则不一样,所以GPT的数据和其他数据集需要慎用.

训练

我的方法是先集中力量提升某一语言的指标(数据集要筛选,降分的不用),然后在提升下一语言的时候,把之前的数据集和新语言的数据集合并进行训练,防止练了这个语言,上一语言又不行了.最后拿验证集进行训练.


可能有用的方法

  1. 每种语言单独训练一个模型,开头加个语种分类器.这个应该不违规,达到下面这个限制应该就行
  2. 想办法使用GPT标注的数据和无标注数据.我觉得聚类可能不太行,想了一种比较简单的方法.因为唯一已知的打标签方法只有验证集和英语的训练集,所以通过去学习他们的打标签规则去给无标签的数据集生成标签.也就是先用非验证集数据把模型指标拉到最高,然后加入验证集进行训练.把这个训练好的模型作为标签生成模型,对GPT标注的数据(不是翻译的数据)进行打标签,根据生成的标签和GPT的标签进行融合,筛选出两者标签相同的数据.再把这些数据放入指标最高的模型进行训练,如果有提升,则逐渐扩展到给无标注数据打标签.翻译的数据最好不要用,翻译质量不好掌握.GPT打的标签也不要直接使用,联想能力太强,导致过渡解读语句.

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

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

相关文章

技术速递|利用 Redis 使 AI 驱动的 .NET 应用程序更加一致和智能

作者:Catherine Wang 排版:Alan Wang Redis 是一种流行的内存数据存储,可用于解决构建和扩展智能应用程序的关键挑战。在本文中,你将了解如何使用 Redis 的 Azure 缓存来提高使用 Azure OpenAI 的应用程序的效率。 Redis 的 Azur…

西电超算使用方法-简易版

一、引言 西电超算不错,我很喜欢。本文仅供自己学习使用。 二、环境搭建 搭建环境需要有一些依赖库,但是其实西电超算说明手册并没有写的非常清楚。因此,这次实战演示一下,写一个运行sh文件脚本并提交作业。 1、选择GPU还是CP…

AI赋能分层模式,解构未来,智领风潮

​🌈 个人主页:danci_ 🔥 系列专栏:《设计模式》 💪🏻 制定明确可量化的目标,坚持默默的做事。 🚀 转载自热榜文章🔥:探索设计模式的魅力:AI赋能分…

处理 CentOS7 下 WiFi 不可用的问题

问题描述 在物理机中安装 CentOS 7、Ubuntu、Kali Linux 均发现 WiFi 不可用,具体现象为 WiFi 的设置选项卡中没有任何条目,或者 No Wireless Adapter 之类的提示。 后面简单了解,似乎是联想笔记本的无线网卡和Linux5.0版本之前的内核不兼容…

人脸识别概念解析

目录 1. 概述 2. 人脸检测 3. 人脸跟踪 4. 质量评价 5. 活体检测 6. 特征提取 7. 人脸验证 8. 人脸辨识 1. 概述 人脸识别在我们的生活中随处可见,例如在大楼门禁系统中,它取代了传统的门禁卡或密码,提高了进出的便捷性和安全性。在商…

C#算法之插入排序算法

算法系列:各位朋友,我们继续C#算法的学习之路。今天同样是一个简单直观的排序算法--插入排序。插入排序的原理是通过构建有序序列,对未排序序列进行扫描,找到相应位置并插入。插入排序,在数据规模较小或者部分数据已经…

【Linux】基础指令

文章目录 基础指令1. pwd 指令2. cd 指令3. ls 指令4. touch 指令5. mkdir 指令6. rmdir 和 rm 指令7. man 指令8. cp 指令9. mv 指令10. cat 指令11. more 和 less 指令12. head 和 tail 指令13. date 指令14. cal 指令15. find 指令16. grep 指令18. zip 和 unzip 指令19. ta…

Jenkins - macOS 上安装

文章目录 关于 JenkinsmacOS 上安装 Jenkins方式一:brew方式二:tomcat Jenkins war 关于 Jenkins 官网上下载Jenkins并将其安装到持续集成服务器 https://jenkins.io/download/ macOS 上安装 Jenkins 现在本 macOS 上测试 https://www.jenkins.io/do…

Windows 11 轻量简单的美化方案

Windows 11 美化最终往往是回到最初的默认配置 每次更新版本、重装系统都要维护无疑是麻烦事 这里存一下我的简易轻量级美化,多数云端同步,开箱即用 壁纸 Wallpaper engine 直接 steam 同步即可 HDR 在 post-processing 开启 多屏支持也比较好 类…

一个简单的springcloud案例

使用的组件&#xff1a;Eureka、Ribbon、Feign、Hystrix 首先创建一个maven父工程&#xff0c;并提供pom 在 这个pom中指定了springcloud版本以及springboot的版本 <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/…

[蓝桥杯2024]-PWN:fd解析(命令符转义,标准输出重定向)

查看保护 查看ida 这里有一次栈溢出&#xff0c;并且题目给了我们system函数。 这里的知识点没有那么复杂 完整exp&#xff1a; from pwn import* pprocess(./pwn) pop_rdi0x400933 info0x601090 system0x400778payloadb"ca\\t flag 1>&2" print(len(paylo…

SCP收容物131~140

注 &#xff1a;此文接SCP收容物121~130,本文只供开玩笑 ,与steve_gqq_MC合作。 --------------------------------------------------------------------------------------------------------------------------------- 目录 scp-131 scp-132 scp-133 scp-134 scp-135…

国诺教育:元宇宙展厅/展会开启全可视化人机交流新纪元

国诺教育作为基于产教融合的行业/学校数字化方案与产品服务商,正式发布了旗下三大产品体系,包括元宇宙展厅/展会,元宇宙校园,元宇宙基地。内涵MOOC全媒体教材、MOOC全媒体教学系统以及元宇宙全媒体教学系统。以全面推动行业数字化转型与产教融合升级。 元宇宙展厅/展会,元宇宙…

时空复杂度

由简入繁 从繁至简 大道至简 人生亦简 简单到复杂是前半生的阅历 复杂到简单是后半生的修行 愿你阅尽霜华 内心依旧温暖如春 时空复杂度 时间复杂度(运行时间)和空间复杂度(占用空间)是衡量算法好坏的重要指标。时间复杂度用大写的O来表示,具体复杂的程度用括号里面的常量或…

消息服务应用1——java项目使用websocket

在当前微服务项目中&#xff0c;由于业务模块众多&#xff0c;消息服务的使用场景变得异常活跃。而WebSocket由于其自身的可靠性强&#xff0c;实时性好&#xff0c;带宽占用更小的优势&#xff0c;在实时通讯应用场景中独占鳌头&#xff0c;加上HTML5标准的普及流行&#xff0…

分类神经网络3:DenseNet模型复现

目录 DenseNet网络架构 DenseNet部分实现代码 DenseNet网络架构 论文原址&#xff1a;https://arxiv.org/pdf/1608.06993.pdf 稠密连接神经网络&#xff08;DenseNet&#xff09;实质上是ResNet的进阶模型&#xff08;了解ResNet模型请点击&#xff09;&#xff0c;二者均是…

Java面试八股文-2024

面试指南 TMD&#xff0c;一个后端为什么要了解那么多的知识&#xff0c;真是服了。啥啥都得了解 MySQL MySQL索引可能在以下几种情况下失效&#xff1a; 不遵循最左匹配原则&#xff1a;在联合索引中&#xff0c;如果没有使用索引的最左前缀&#xff0c;即查询条件中没有包含…

linux demo

1.1&#xff09;if case test the results #!bin/bash read -p “请输入你的成绩&#xff1a;” num if [ $num -ge 0 ] && [ $num -le 100 ];then if [ $num -ge 80 ] && [ $num -le 100 ];then echo “成绩优秀” elif [ $num -ge 60 ] && [ $num …

Altera FPGA 配置flash读写

目录 一、读写控制器的配置 二、生成flash的配置文件 三、关于三种配置文件的大小 四、其他 一、读写控制器的配置 Altera ASMI Parallel&#xff08;下文简称ASMI)这个IP就仅仅是个Flash读写控制器&#xff0c;可以自由的设计数据来源。 关于这个IP的使用&#xff0c;可以…

【ARMv9 DSU-120 系列 2. -- DSU-120 Cluster 中组件详细介绍】

请阅读【Arm DynamIQ™ Shared Unit-120 专栏 】 文章目录 DynamIQ cluster componentsCoresComplexescluster shared logic主要特点小结Shared Logic ComponentsSnoop Control Unit缓存直接传输窥探过滤器自动大小调整Clock manag