尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

5分钟跑通图文情感分析:Multimodal-Sentiment-Analysis 多模态情感建模完整指南

5分钟跑通图文情感分析:Multimodal-Sentiment-Analysis 多模态情感建模完整指南 5分钟跑通图文情感分析Multimodal-Sentiment-Analysis 多模态情感建模完整指南【免费下载链接】Multimodal-Sentiment-Analysis多模态情感分析——基于BERTResNet的多种融合方法项目地址: https://gitcode.com/gh_mirrors/mu/Multimodal-Sentiment-Analysis微博里一句呵呵配图光看文字根本猜不准是阴阳怪气还是真心开心——这就是单模态情感分类的死穴文字有歧义表情和梗全在图里。Multimodal-Sentiment-Analysis 就是冲着这个问题来的它用 BERT预训练文本模型负责读懂文字 ResNet50预训练图像网络负责看懂图片分别提取两种模态的特征再靠 5 种图文联合建模策略把它们揉在一起输出 negative / neutral / positive 三分类情感标签。先备好环境和数据集别急着写代码项目依赖版本比较老torch 1.8.2、transformers 4.18.0建议直接 Python 3.7 虚拟环境照装混装新库容易翻车git clone https://gitcode.com/gh_mirrors/mu/Multimodal-Sentiment-Analysis pip install -r requirements.txt数据集需要手动下载链接 https://pan.baidu.com/s/10fOExXqSCS4NmIjfsfuo9w 提取码 gqzm解压到仓库的data/data/目录下。解压后会得到每个样本的guid.txt推文文本和guid.jpg配图data/train.txt、data/test_without_label.txt则是guid,标签两列的索引文件训练时程序会按 guid 去配对文本和图片。两条命令从训练到出结果训练和测试都走 main.py 的命令行参数没有复杂流程python main.py --do_train --epoch 10 --text_pretrained_model roberta-base --fuse_model_type OTE训练时每轮结束会打印验证集准确率自动把最好的权重存到output/OTE/pytorch_model.bin。测完想跑测试集就再执行一条python main.py --do_test --fuse_model_type OTE --load_model_path output/OTE/pytorch_model.bin其中--load_model_path填你自己训练好的模型文件路径上例是 OTE 模型的默认输出位置预测结果写入output/test.txt。5种图文联合建模策略到底在拼什么所有模型共享同一套双塔底座文本塔 取 BERT 的池化输出过一个 64 维降维层图像塔取 ResNet50 特征同样压到 64 维区别全在怎么合NaiveCat两个特征直接首尾拼接进一个分类头最直白NaiveCombine各配一个分类头两个概率分布相加再归一化相当于双塔投票CMACCross-Modality Attention双向交叉注意力让文本里的词去查图里的区域反向也一样信息互相打补丁HSTEC把双塔各自的中间隐层状态拼成一条长序列过一个自注意力编码层再分类OTE在融合输出后接 Transformer 编码器精调最后一百米。README 给的实测结果OTE 74.63% NaiveCombine 73.63% HSTEC 73.13% NaiveCat 71.25% CMAC 67.19%。消融实验更有意思同样的 OTE 只用文本 71.88%、只用图片 63%图 文一起用就涨到 74.63%——这就是多模态情感分析的价值所在。常见坑与调优技巧类别不均衡已经替你处理了Config.py 里loss_weight[1.68, 9.3, 3.36]给中性类加了权重数据集里 neutral 样本最少换数据集时记得重算学习率分两档融合层 3e-5而 BERT / ResNet 的预训练参数用 5e-6 微调用fixed_text_model_params、fixed_image_model_params可设为 True 直接冻结底座省显存文本底座可换--text_pretrained_model支持 Hugging Face 上任意模型名中文场景建议换bert-base-chinese类模型单模态对照加--text_only或--img_only可只跑一路内部会给缺失模态填空白文本或全黑图方便做消融。换到自己的业务数据整套流程的数据约定很简单一个样本 guid编号 guid.txt文本 guid.jpg图片 索引表里的标签按这个格式整理社交媒体评论、电商图文、广告素材改一下train.txt/test_without_label.txt就能直接复用训练脚本。想精调融合层的注意力头数、隐藏维度attention_nhead、middle_hidden_size等都集中在 Config.py 里改不用动模型代码。【免费下载链接】Multimodal-Sentiment-Analysis多模态情感分析——基于BERTResNet的多种融合方法项目地址: https://gitcode.com/gh_mirrors/mu/Multimodal-Sentiment-Analysis创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表