本文围绕疫情微博情绪识别挑战赛展开,介绍赛事背景、任务、评审规则等。采用预训练模型+微调方式,通过Multi-dropout和不同特征池化方案优化,从小模型到参数大的模型实验,结合模型融合策略,最终ernie-3.0-base-zh单模线上成绩达0.9735,为情绪识别提供有效方案。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

疫情微博情绪识别挑战赛
举办方:科大讯飞xDatawhale
赛事地址:疫情微博情绪识别挑战赛-点击直达
赛事背景
疫情发生对人们生活生产的方方面面产生了重要影响,并引发了国内舆论的广泛关注,众多网民也参与到了疫情相关话题的讨论中。大众日常的情绪波动在疫情期间会放大,并寻求在自媒体和社交媒体上发布和评论。
为了掌握真实社会舆论情况,科学高效地做好防控宣传和舆情引导工作,针对疫情相关话题开展网民情绪识别是重要任务。本次我们重点关注微博平台上的用户情绪,希望各位选手能搭建自然语言处理模型,对疫情下微博文本的情绪进行识别。
赛事任务
本次赛题需要选手对微博文本进行情绪分类,分为正向情绪和负面情绪。数据样例如下:

评审规则
赛题数据由训练集和测试集组成,训练集数据集读取代码:
import pandas as pd pd.read_csv('train.csv',sep='\t')本次竞赛的评价标准采用准确率指标,最高分为1。 计算方法参考地址:https://scikit-learn.org/stable/modules/generated/sklearn.metrics.accuracy_score.html
评估代码参考:
import sklearn.metrics import accuracy_score y_pred = [0,2,1,3] y_true = [0,1,2,3] accuracy_score(y_pred,y_true)
1、赛事提供下载数据,选手在本地进行算法调试,在比赛页面提交结果。
2、每支团队每天最多提交3次。
3、排行按照得分从高到低排序,排行榜将选择团队的历史最优成绩进行排名。
作品提交要求
文件格式:预测结果文件按照csv格式提交
文件大小:无要求
提交次数限制:每支队伍每天最多3次
预测结果文件详细说明:
以csv格式提交,编码为UTF-8,第一行为表头;
标签顺序需要与测试集文本保持一致;
提交前请确保预测结果的格式与sample_submit.csv中的格式一致。具体格式如:
label 1 1 1 1
赛程安排
正式赛:6月24日——7月23日
初赛截止成绩以团队在初赛时间段内最优成绩为准,具体排名可见初赛榜单。
初赛作品提交截止日期为7月23日17:00;正式赛名次将于结束后15天内公布。
长期赛:7月24日——10月24日
正式赛结束后,将转变为长期赛,供开发者学习实践。本阶段提交后,系统会根据成绩持续更新长期赛榜单,但该阶段榜单不再进行奖励。
情感分析是一个经典的文本分类任务,初始Baseline采用预训练模型+微调下游任务的方式搭建
通过两种策略优化Baseline方法得到一个强基线的Baseline方案
策略一:Mutli-dropout
策略二:比较不同的特征池化方案,选取更合适的特征池化方法
先使用参数少的小模型(erbie-3.0-nano)得到初步的最优组合方案,再更换参数大的(erbie-3.0-base)模型结合最优策略得到较强的单模结果。
由于提交次数宝贵,因此仅提交了其中三份结果进行验证
一是小模型上验证效果最好(0.963)的单模结果
二是小模型上多模型融合的结果
三是切换为大模型(ernie-3.0-base-zh)的单模效果
| 模型 | 线下验证 | 线上提交 |
|---|---|---|
| ernie-3.0-nano-zh + cls | 0.962000 | - |
| ernie-3.0-nano-zh + max | 0.961833 | - |
| ernie-3.0-nano-zh + mean | 0.962167 | - |
| ernie-3.0-nano-zh + dym | 0.962333 | - |
| ernie-3.0-nano-zh + dym + mutlidropout | 0.963000 | 0.9655 |
| ernie-3.0-nano-zh + mean + mutlidropout | 0.962833 | - |
| ernie-3.0-nano-zh + cls + mutlidropout | 0.962667 | - |
| ernie-3.0-nano-zh + max + mutlidropout | 0.962667 | - |
| ernie-3.0-nano模型融合(voting) | - | 0.9663 |
| ernie-3.0-base-zh + dym + mutlidropout | 0.97100 | 0.9735 |
从结果上看:
总结:
使用了两种有效的策略(Mutlidropout和动态池化策略)获得一个强基线的baseline,希望对还未提升到0.972分数以上的小伙伴一些启发,基于这个强基线的baseline是可以冲击到0.973等更高的分数。
Baseline项目使用ernie-3.0的nano模型仅72MB,micro和nano版本不超过100MB,对资源要求友好,在当前超参数配置下(最大截断长度200,训练批次大小64)显存占用不到5GB,训练3轮5.4万条样本仅需11分钟左右,取得线上0.9655(Rank35 时间:2022-07-09)
当更换参数量更大的Base模型后,相同配置下显存占用19GB左右,训练时间提升到30分钟。更换Base后的强基线单模线下得到0.9735,进入前五梯队(Rank3 时间:2022-07-09)

In [ ]
# 将paddlenlp更新至最新版本 !pip install -U paddlenlp # emoji转换成文字 !pip install emojiswitch
In [6]
# 测试 emoji<a style="color:#f60; text-decoration:underline;" title="switch" href="https://www.php.cn/zt/17738.html" target="_blank">switch</a> 效果 import emojiswitch emojiswitch.demojize('心中千万只以上就是疫情微博情绪识别挑战赛Baseline(PaddlePaddle)-0.9735的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号