BERT系列模型 在OCNLI 训练微调 3

目录

  • 0 资料
  • 1 项目搭建
    • 1.1 环境安装
    • 1.2 项目源码
    • 1.3 模型下载
    • 1.4 目录结构
  • 2 改进部分
    • 2.1 可以实现更多模型的切换
    • 2.2 固定随机种子,保证输出的数据一致
    • 2.3 增加了另一个数据集进行联合训练
    • 2.4 模型测试时选择最好的一个模型而非最后一个
  • 3 实验结果

0 资料

这是一个系列:
过去的内容:
Bert 在 OCNLI 训练微调
Bert 在 OCNLI 训练微调 2

arxiv:RoBERTa: A Robustly Optimized BERT Pretraining Approach

pytorch官方实现:https://pytorch.org/hub/pytorch_fairseq_roberta/

hugging face hfl chinese-roberta-wwm-ext:https://huggingface.co/hfl/chinese-roberta-wwm-ext/tree/main
在这里插入图片描述

1 项目搭建

1.1 环境安装

安装transformers

pip install transformers
pip install pandas
pip install wandb

1.2 项目源码

https://github.com/Whiffe/Bert-OCNLI/tree/main

1.3 模型下载

https://huggingface.co/collections/hfl/chinese-bert-roberta-macbert-lert-series-6639a0b906b25a7ea6dcfa8e

在这里插入图片描述

https://huggingface.co/junnyu/structbert-large-zh
在这里插入图片描述

1.4 目录结构

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2 改进部分

相对于Bert 在 OCNLI 训练微调 2,我做了代码的更多改进。

改进如下:

1,可以实现更多模型的切换

2,固定随机种子,保证输出的数据一致

3,增加了另一个数据集进行联合训练

4,模型测试时选择最好的一个模型而非最后一个

2.1 可以实现更多模型的切换

在这里插入图片描述
通过 --pretrain_model_name 来传递你的模型

2.2 固定随机种子,保证输出的数据一致

在这里插入图片描述

2.3 增加了另一个数据集进行联合训练

在这里插入图片描述
中文自然语言推理数据集(A large-scale Chinese Nature language inference and Semantic similarity calculation Dataset):https://github.com/pluto-junzeng/CNSD?tab=readme-ov-file
在这里插入图片描述

2.4 模型测试时选择最好的一个模型而非最后一个

在这里插入图片描述

3 实验结果

参数设置:dropout=0.3、batch_size=32、max_length=128、lr=5e-5、epochs=5、train.50k.json


roberta模型:71.57%
Chinese-SNLI 550k到训练集中,共550+50=600k的数据
准确率:70.23%
Chinese-SNLI 550k按照5%的概率取样到训练集集中。共27.5+50=77.5k的数据
准确率:72.1%
Chinese-SNLI 550k按照10%的概率取样到训练集集中。共55+50=105k的数据
准确率:71.37%


MacBERT模型:73.23%
Chinese-SNLI 550k按照10%的概率取样到训练集集中。共55+50=105k的数据
准确率:71.6%


structbert-large-zh模型:76.83%


chinese-roberta-wwm-ext-large模型:

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

css(四)

文章目录 css(四)一、其他样式1、圆角边框2、盒子阴影3、文字阴影 二、浮动1、传统网页布局的三种方式2、标准流(普通流/文档流)3、为什么需要浮动?4、什么是浮动?5、浮动特性6、浮动元素经常和标准流父级搭…

Linux IO模型深度解析与实战应用

linux的5种IO模型 一、这里IO是什么 操作系统设有用户态与内核态,确保系统安全。应用程序默认在用户态运行,而执行如IO操作等底层任务时,需切换至内核态以高效执行。 服务器从网络接收的大致流程如下: 1、数据通过计算机网络来到了网卡 2、把网卡的数据读取到 socket 缓…

探索Java的DNA-JVM字节码深度解析

引言 在Java的世界里,JVM(Java虚拟机)是我们程序运行的心脏。而字节码,作为JVM的血液,携带着程序的执行指令。今天,我们将深入探索Java字节码的奥秘,一窥JVM如何将人类可读的代码转化为机器可执…

联发科MT8370平台Genio 510物联网应用程序处理器详细规格参数

MT8370是一款高度集成、功能强大的平台,专为各种人工智能(AI)和物联网(IoT)用例而设计,这些用例需要高性能边缘处理、先进的多媒体和连接功能、多个高分辨率摄像头、连接的触摸屏显示器以及多任务高级操作系统(HLOS)的使用。http://Genio 510 (MT8370) E…

unity制作app(11)--dropdown统一字体

下拉栏统一字体只能在执行的时候,而且要深入到content的最下层 全改以后 这样是无法保存的,但此时已经具备了找content的思维,在非play状态下做如下修改 其他下拉栏照改就可以了。

数组的定义、顺序存储及特殊矩阵的存储

目录 一、数组的定义 1.1概念 1.2抽象数据类型定义 二、数组的顺序存储 2.1一维数组元素的存储位置 2.2二维数组元素的存储位置 2.3三维数组元素的存储位置 三、特殊矩阵的压缩存储 3.1相关概念 3.2对称矩阵 3.3三角矩阵 3.4对角矩阵(带状矩阵&#xff0…

HBase安装

安装HBase 提示:需要安装好hadoop和zookeeper 安装zookeeper可参考 一、确定HBase版本 去网站确认 https://hbase.apache.org/book.html#hadoop二、下载HBase安装包 去清华大学镜像站下载 https://mirrors.tuna.tsinghua.edu.cn/apache/hbase/三、安装HBase …

FTP协议——LightFTP安装(Linux)

1、简介 LightFTP是一个轻量级的FTP(File Transfer Protocol,文件传输协议)客户端软件。FTP是一种用于在网络上传输文件的标准协议,允许用户通过TCP/IP网络(如互联网)在计算机之间进行文件传输。 2、步骤…

运维笔记.Docker镜像分层原理

运维专题 Docker镜像原理 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite:http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress of this article:https://blog.csdn.net/qq_28550263/artic…

10大领域应该怎么记?

文章目录 5大过程组10大领域49个过程输出输入工具与技术 参考文档: https://mp.weixin.qq.com/s/BJ-Dpn0zxTP0TCbeoJXb9A 5大过程组 启动、规划、执行、监控、收尾 10大领域 巧记:【挣饭进城市,咨购风菜干】【狗子整范进—成人风采】 整…

前端nvm、nodejs、npm、cnpm、yarn安装教程(超详细图文,含卸载旧的nodejs,安装及环境变量配置)

最近换了新电脑,一开始在网上找了一个教程让下载nvm-noinstall.zip 压缩包解压使用,踩坑了,过程复杂最后报错无法用。 后来搜到下文教程,直接使用nvm。exe进行安装,方便快捷。下面这个文章写的很详细,从如何…

SwiftUI中TabView(PageTabViewStyle的用法及无限滚动组件infinity carousel)

上一篇文章主要介绍了TabView的基本用法以及一些外观样式的设置,本篇文章主要介绍一下PageTabViewStyle样式下的TabView,该样式下的TabView允许用户整页滑动界面,在UIKit中我们用UIScrollView和UICollectionView制作滚动组件,本文…

家政项目day2 需求分析(模拟入职后熟悉业务流程)

目录 1 项目主体介绍1.1 项目背景1.2 运营模式1.3 项目业务流程 2 运营端需求2.1 服务类型管理2.2 服务项目(服务)管理2.3 区域管理2.4 区域服务管理2.5 相关数据库表的管理2.6 设计工程结构2.7 测试接口(接口断点查看业务代码) 1…

Java实现链表

链表 前言一、链表的概念及结构二、链表的分类三、链表的实现无头单向非循环链表实现无头双向链表实现具体代码 四、链表习题五、顺序表和链表的区别 前言 推荐一个网站给想要了解或者学习人工智能知识的读者,这个网站里内容讲解通俗易懂且风趣幽默,对我…

Autodesk Flame 2025 for Mac:视觉特效制作的终极利器

在数字时代,视觉特效已经成为电影、电视制作中不可或缺的一部分。Autodesk Flame 2025 for Mac,这款专为视觉特效师打造的终极工具,将为您的创作提供无尽的可能。 Autodesk Flame 2025 for Mac拥有强大的三维合成环境,能够支持您…

05.配置tomcat管理功能

认证失败&#xff0c;需要配置tomcat-users.xml文件 配置用户信息 [rootweb01 /application/tomcat/conf\]# tail tomcat-users.xml <role rolename"admin-gui"/> <role rolename"host-gui"/><role rolename"mana…

数学建模--LaTeX的基本使用

目录 1.回顾 2.设置这个页眉和页脚 3.对于字体的相关设置 4.对于这个分级标题的设置 5.列表的使用 6.插入图片 1.回顾 &#xff08;1&#xff09;昨天我们了解到了这个latex的使用基本常识&#xff0c;以及这个宏包的概念&#xff0c;区域的划分&#xff0c;不同的代码代…

PCL 法向量加权的RANSAC拟合分割平面

目录 一、算法原理1、原理概述2、主要函数二、代码实现三、结果展示四、相关链接本文由CSDN点云侠原创,原文链接。如果你不是在点云侠的博客中看到该文章,那么此处便是不要脸的爬虫。 一、算法原理 1、原理概述

树与二叉树的概念介绍

一.树的概念及结构&#xff1a; 1.树的概念&#xff1a; 树是一种非线性的数据结构&#xff0c;它是由n&#xff08;n>0&#xff09;个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树&#xff0c;也就是说它是根朝上&#xff0c;而叶朝下的 有…

IDEA 上方添加左右箭头按钮

IDEA 版本&#xff1a;2021.3.3 按钮&#xff1a; 左箭头&#xff08;Back&#xff09;&#xff08;快捷键&#xff1a;Ctrl Alt 左箭头&#xff09; 右箭头&#xff08;Forward&#xff09;&#xff08;快捷键&#xff1a;Ctrl Alt 右箭头&#xff09; 日常写代码中经常…