位置:首页 > 新闻资讯 > 疫情微博情绪识别挑战赛Baseline(PaddlePaddle)-0.9735

疫情微博情绪识别挑战赛Baseline(PaddlePaddle)-0.9735

时间:2025-07-23  |  作者:  |  阅读:0

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

疫情微博情绪识别挑战赛Baseline(PaddlePaddle)-0.9735_wishdown.com

疫情微博情绪识别挑战赛

疫情微博情绪识别挑战赛

举办方:科大讯飞xDatawhale

赛事地址:疫情微博情绪识别挑战赛-点击直达

赛事背景

疫情发生对人们生活生产的方方面面产生了重要影响,并引发了国内舆论的广泛关注,众多网民也参与到了疫情相关话题的讨论中。大众日常的情绪波动在疫情期间会放大,并寻求在自媒体和社交媒体上发布和评论。

为了掌握真实社会舆论情况,科学高效地做好防控宣传和舆情引导工作,针对疫情相关话题开展网民情绪识别是重要任务。本次我们重点关注微博平台上的用户情绪,希望各位选手能搭建自然语言处理模型,对疫情下微博文本的情绪进行识别。

赛事任务

本次赛题需要选手对微博文本进行情绪分类,分为正向情绪和负面情绪。数据样例如下:

疫情微博情绪识别挑战赛Baseline(PaddlePaddle)-0.9735_wishdown.com

评审规则

  1. 数据说明

赛题数据由训练集和测试集组成,训练集数据集读取代码:

import pandas as pd pd.read_csv('train.csv',sep='t')登录后复制

  1. 评估指标

本次竞赛的评价标准采用准确率指标,最高分为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. 评测及排行

1、赛事提供下载数据,选手在本地进行算法调试,在比赛页面提交结果。

2、每支团队每天最多提交3次。

3、排行按照得分从高到低排序,排行榜将选择团队的历史最优成绩进行排名。

作品提交要求

文件格式:预测结果文件按照csv格式提交

文件大小:无要求

提交次数限制:每支队伍每天最多3次

预测结果文件详细说明:

  1. 以csv格式提交,编码为UTF-8,第一行为表头;

  2. 标签顺序需要与测试集文本保持一致;

  3. 提交前请确保预测结果的格式与sample_submit.csv中的格式一致。具体格式如:

label 1 1 1 1登录后复制

赛程安排

正式赛:6月24日——7月23日

初赛截止成绩以团队在初赛时间段内最优成绩为准,具体排名可见初赛榜单。

初赛作品提交截止日期为7月23日17:00;正式赛名次将于结束后15天内公布。

长期赛:7月24日——10月24日

正式赛结束后,将转变为长期赛,供开发者学习实践。本阶段提交后,系统会根据成绩持续更新长期赛榜单,但该阶段榜单不再进行奖励。

Baseline思路

情感分析是一个经典的文本分类任务,初始Baseline采用预训练模型+微调下游任务的方式搭建

通过两种策略优化Baseline方法得到一个强基线的Baseline方案

策略一:Mutli-dropout

策略二:比较不同的特征池化方案,选取更合适的特征池化方法

先使用参数少的小模型(erbie-3.0-nano)得到初步的最优组合方案,再更换参数大的(erbie-3.0-base)模型结合最优策略得到较强的单模结果。

Baseline 效果

由于提交次数宝贵,因此仅提交了其中三份结果进行验证

一是小模型上验证效果最好(0.963)的单模结果

二是小模型上多模型融合的结果

三是切换为大模型(ernie-3.0-base-zh)的单模效果

模型线下验证线上提交ernie-3.0-nano-zh + cls0.962000-ernie-3.0-nano-zh + max0.961833-ernie-3.0-nano-zh + mean0.962167-ernie-3.0-nano-zh + dym0.962333-ernie-3.0-nano-zh + dym + mutlidropout0.9630000.9655ernie-3.0-nano-zh + mean + mutlidropout0.962833-ernie-3.0-nano-zh + cls + mutlidropout0.962667-ernie-3.0-nano-zh + max + mutlidropout0.962667-ernie-3.0-nano模型融合(voting)-0.9663ernie-3.0-base-zh + dym + mutlidropout0.971000.9735

从结果上看:

  • Mutlidropout策略十分有效,在不同池化策略的基础上添加Mutlidropout验证效果均有明显涨分
  • 嵌入策略上动态加权池化方法效果最优,其次是平均池化策略
  • 基于Voting的模型融合策略也可以提升模型的性能
  • 更换base版本的大模型后,通过两个策略的加持,线上成绩到达0.9735,靠单模成绩上排行第三,

总结:

  1. 使用了两种有效的策略(Mutlidropout和动态池化策略)获得一个强基线的baseline,希望对还未提升到0.972分数以上的小伙伴一些启发,基于这个强基线的baseline是可以冲击到0.973等更高的分数。

  2. Baseline项目使用ernie-3.0的nano模型仅72MB,micro和nano版本不超过100MB,对资源要求友好,在当前超参数配置下(最大截断长度200,训练批次大小64)显存占用不到5GB,训练3轮5.4万条样本仅需11分钟左右,取得线上0.9655(Rank35 时间:2022-07-09)

  3. 当更换参数量更大的Base模型后,相同配置下显存占用19GB左右,训练时间提升到30分钟。更换Base后的强基线单模线下得到0.9735,进入前五梯队(Rank3 时间:2022-07-09)

疫情微博情绪识别挑战赛Baseline(PaddlePaddle)-0.9735_wishdown.com

后续优化推荐

  • 使用FGM等对抗训练提升模型的鲁棒性
  • 使用EMA增加模型在测试集上的健壮性
  • 融合不同模型,采用不同的模型融合策略

In [?]

# 将paddlenlp更新至最新版本 !pip install -U paddlenlp # emoji转换成文字 !pip install emojiswitch登录后复制

In [6]

#?测试?emojiswitch?效果?import?emojiswitch?emojiswitch.demojize('心中千万只登录后复制

福利游戏

相关文章

更多

精选合集

更多

大家都在玩

热门话题

大家都在看

更多