当前位置: 首页 > wzjs >正文

郑州官网网站推广优化自己做网站自己做推广教程视频教程

郑州官网网站推广优化,自己做网站自己做推广教程视频教程,网站建设的问题疑问,棋乐平台代理HuggingFace 的 Transformers 是目前最流行的深度学习训框架之一(100k Star),现在主流的大语言模型(LLaMa系列、Qwen系列、ChatGLM系列等)、自然语言处理模型(Bert系列)等,都在使用T…

HuggingFace 的 Transformers 是目前最流行的深度学习训框架之一(100k+ Star),现在主流的大语言模型(LLaMa系列、Qwen系列、ChatGLM系列等)、自然语言处理模型(Bert系列)等,都在使用Transformers来进行预训练、微调和推理。

在这里插入图片描述

SwanLab 是一个深度学习实验管理与训练可视化工具,融合了Weights & Biases与Tensorboard的特点,能够方便地进行 训练可视化、多实验对比、超参数记录、大型实验管理和团队协作,并支持用网页链接的方式分享你的实验。

你可以使用Transformers快速进行模型训练,同时使用SwanLab进行实验跟踪与可视化。

transformers>=4.50.0 的版本,已官方集成了SwanLab
如果你的版本低于4.50.0,请使用SwanLabCallback集成。

1. 一行代码完成集成

只需要在你的训练代码中,找到TrainingArguments部分,添加report_to="swanlab"参数,即可完成集成。

from transformers import TrainingArguments, Trainerargs = TrainingArguments(...,report_to="swanlab" # [!code ++]
)trainer = Trainer(..., args=args)

2. 自定义项目名

默认下,项目名会使用你运行代码的目录名

如果你想自定义项目名,可以设置SWANLAB_PROJECT环境变量:

::: code-group

import os
os.environ["SWANLAB_PROJECT"]="qwen2-sft"
export SWANLAB_PROJECT="qwen2-sft"
set SWANLAB_PROJECT="qwen2-sft"

:::

3. 案例代码:Bert文本分类

import evaluate
import numpy as np
from datasets import load_dataset
from transformers import AutoModelForSequenceClassification, AutoTokenizer, Trainer, TrainingArgumentsdef tokenize_function(examples):return tokenizer(examples["text"], padding="max_length", truncation=True)def compute_metrics(eval_pred):logits, labels = eval_predpredictions = np.argmax(logits, axis=-1)return metric.compute(predictions=predictions, references=labels)dataset = load_dataset("yelp_review_full")tokenizer = AutoTokenizer.from_pretrained("bert-base-cased")tokenized_datasets = dataset.map(tokenize_function, batched=True)small_train_dataset = tokenized_datasets["train"].shuffle(seed=42).select(range(1000))
small_eval_dataset = tokenized_datasets["test"].shuffle(seed=42).select(range(1000))metric = evaluate.load("accuracy")model = AutoModelForSequenceClassification.from_pretrained("bert-base-cased", num_labels=5)training_args = TrainingArguments(output_dir="test_trainer",num_train_epochs=3,logging_steps=50,report_to="swanlab", # [!code ++]
)trainer = Trainer(model=model,args=training_args,train_dataset=small_train_dataset,eval_dataset=small_eval_dataset,compute_metrics=compute_metrics,
)trainer.train()

4. SwanLabCallback集成

如果你使用的是Transformers<4.50.0的版本,或者你希望更灵活地控制SwanLab的行为,则可以使用SwanLabCallback集成。

4.1 引入SwanLabCallback

from swanlab.integration.transformers import SwanLabCallback

SwanLabCallback是适配于Transformers的日志记录类。

SwanLabCallback可以定义的参数有:

  • project、experiment_name、description 等与 swanlab.init 效果一致的参数, 用于SwanLab项目的初始化。
  • 你也可以在外部通过swanlab.init创建项目,集成会将实验记录到你在外部创建的项目中。

4.2 传入Trainer

from swanlab.integration.transformers import SwanLabCallback
from transformers import Trainer, TrainingArguments...# 实例化SwanLabCallback
swanlab_callback = SwanLabCallback(project="hf-visualization")trainer = Trainer(...# 传入callbacks参数callbacks=[swanlab_callback],
)trainer.train()

4.3 完整案例代码

import evaluate
import numpy as np
import swanlab
from swanlab.integration.transformers import SwanLabCallback
from datasets import load_dataset
from transformers import AutoModelForSequenceClassification, AutoTokenizer, Trainer, TrainingArgumentsdef tokenize_function(examples):return tokenizer(examples["text"], padding="max_length", truncation=True)def compute_metrics(eval_pred):logits, labels = eval_predpredictions = np.argmax(logits, axis=-1)return metric.compute(predictions=predictions, references=labels)dataset = load_dataset("yelp_review_full")tokenizer = AutoTokenizer.from_pretrained("bert-base-cased")tokenized_datasets = dataset.map(tokenize_function, batched=True)small_train_dataset = tokenized_datasets["train"].shuffle(seed=42).select(range(1000))
small_eval_dataset = tokenized_datasets["test"].shuffle(seed=42).select(range(1000))metric = evaluate.load("accuracy")model = AutoModelForSequenceClassification.from_pretrained("bert-base-cased", num_labels=5)training_args = TrainingArguments(output_dir="test_trainer",# 如果只需要用SwanLab跟踪实验,则将report_to参数设置为”none“report_to="none",num_train_epochs=3,logging_steps=50,
)# 实例化SwanLabCallback
swanlab_callback = SwanLabCallback(experiment_name="TransformersTest")trainer = Trainer(model=model,args=training_args,train_dataset=small_train_dataset,eval_dataset=small_eval_dataset,compute_metrics=compute_metrics,# 传入callbacks参数callbacks=[swanlab_callback],
)trainer.train()

4.4 GUI效果展示

超参数自动记录:

在这里插入图片描述

指标记录:

在这里插入图片描述

4.5 拓展:增加更多回调

试想一个场景,你希望在每个epoch结束时,让模型推理测试样例,并用swanlab记录推理的结果,那么你可以创建一个继承自SwanLabCallback的新类,增加或重构生命周期函数。比如:

class NLPSwanLabCallback(SwanLabCallback):    def on_epoch_end(self, args, state, control, **kwargs):test_text_list = ["example1", "example2"]log_text_list = []for text in test_text_list:result = model(text)log_text_list.append(swanlab.Text(result))swanlab.log({"Prediction": test_text_list}, step=state.global_step)

上面是一个在NLP任务下的新回调类,增加了on_epoch_end函数,它会在transformers训练的每个epoch结束时执行。

查看全部的Transformers生命周期回调函数:链接

5. 环境变量

参考:HuggingFace Docs: transformers.integrations.SwanLabCallback


文章转载自:

http://70uAw9ZK.wftrs.cn
http://V7eicjkI.wftrs.cn
http://O2H4hSzX.wftrs.cn
http://ZQfM0vXY.wftrs.cn
http://vz6GgFMC.wftrs.cn
http://euPsEc0T.wftrs.cn
http://BDIygfUo.wftrs.cn
http://6uPFT23k.wftrs.cn
http://K54NfWe9.wftrs.cn
http://qjxPXcYI.wftrs.cn
http://9smgWi8j.wftrs.cn
http://8MlIZVZI.wftrs.cn
http://yui9rINu.wftrs.cn
http://HatfqkFr.wftrs.cn
http://UKJVTJiz.wftrs.cn
http://tnAX75LO.wftrs.cn
http://tQxlXi3Y.wftrs.cn
http://VEgNhQul.wftrs.cn
http://f2mA24db.wftrs.cn
http://UPelEHGc.wftrs.cn
http://Wm7tkiYb.wftrs.cn
http://qztJ079X.wftrs.cn
http://B9pNG1wZ.wftrs.cn
http://qjyKSWYE.wftrs.cn
http://kyp3cLSA.wftrs.cn
http://ghSimYXp.wftrs.cn
http://UozQCnAf.wftrs.cn
http://PKQZrprM.wftrs.cn
http://KW3YtD6o.wftrs.cn
http://WRfombQy.wftrs.cn
http://www.dtcms.com/wzjs/680854.html

相关文章:

  • 四川建设厅网上查询网站首页建网站的公司有哪些
  • 代刷推广网站苏州的互联网企业
  • 用友公司能不能做网站建设合肥昱天建设有限公司网站
  • wordpress 做大型网站林业公司网站模版
  • 微信网站 教程上海搬家公司哪家好
  • 建设行业公司网站做明星同款的网站
  • 均安公司网站建设php免费网站空间
  • 深圳中英文网站建设成都餐饮设计公司有哪些
  • 建设银行信用卡管理中心网站wordpress需要安装吗
  • 杭州知名网站制作公司做美妆的网站
  • 拨号服务器做网站nat123济南市做网站
  • 广东城乡建设厅网站首页广州网络公司排名
  • 好的h5网站奇趣统计网站谁做的
  • 网站主题模板下载安装为什么要先创建站点后建立文件?能否改变两者的顺序?
  • 郑州专业网站制作建设全球设计app
  • 企业信息管理系统案例湛江网站建设方案优化
  • 免费建站绑定域名宁波网页设计多少钱
  • 中国建设银行陕西分行官方网站搜索引擎优化服务
  • 荆州网站推广怎么做新网站建设的流程
  • 深圳网站制作 论坛国家企业信息服务平台
  • 商务网站建设用的是什么软件怎么学做淘宝电商网站吗
  • 长垣住房和城乡建设局 网站wordpress文章底部内容
  • 好看的旅游网站模板下载gom传奇网站建设
  • 买源码做网站济南优化推广网站seo
  • 企业展示网站模板免费下载下载app最新版
  • 网站建设使用的语言沈阳晚报
  • 岳阳卖房网站定制幸福
  • 做网站需要买空间么 服务器代运营公司介绍
  • 安县移动网站建设短视频营销方式
  • 模板网站的域名是什么意思设计素材网站推荐pin