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

可信赖的手机网站设计产品推广平台

可信赖的手机网站设计,产品推广平台,电龙网站建设,上海排名前十装修公司1 什么是预训练模型#xff1f; 在自然语言处理#xff08;NLP#xff09;里#xff0c;训练一个好模型通常需要很多数据和计算资源。为了解决这个难题#xff0c;就出现了“预训练模型”。 预训练模型 是指我们先在海量文本#xff08;比如网络上爬到的大量文章、对话…1 什么是预训练模型 在自然语言处理NLP里训练一个好模型通常需要很多数据和计算资源。为了解决这个难题就出现了“预训练模型”。 预训练模型 是指我们先在海量文本比如网络上爬到的大量文章、对话等上训练出一个“懂语言”的大模型。它已经学会了如何理解和使用语言的大部分规律。之后你只需要在自己的“小数据”上稍微训练一下叫“微调”就能让这个大模型学会完成具体的任务比如情感分析、文本分类等。 打个比方 预训练模型就好比一个学生先在“全国语文教材”上学习了超多词汇和语法。现在你只需要教他一些更专业的知识他就能快速上手不用从零开始。 2 代表性的预训练模型BERT、GPT、T5 说到预训练模型就不能不提到三个“明星选手” BERT 最擅长“理解”文本因为它可以同时看一个词左右两边的内容得到上下文信息。常常用于情感分析、阅读理解、问答、文本分类等。 GPT 最擅长“生成”文本因为它擅长猜测“下一个词”应该是什么。对话机器人、文本续写、智能写作等场景会经常用到它。 T5 强调“把各种NLP任务都当成文本输入和文本输出”的形式。可以做翻译、摘要、分类、问答等等一种方法适合很多任务。 3 使用 Hugging Face 加载 BERT 进行文本分类 现在让我们用一个非常具体的小例子来看看如何利用Hugging Face这个流行的Python库去调用“预训练好的BERT模型”做文本分类比如判断一句评论是“正面”还是“负面”。 3.1 环境准备 安装 transformerspip install transformers安装 PyTorch或 TensorFlow我们这里用 PyTorchpip install torch3.2 推理阶段从文本到结果 下面的代码会演示 加载分词器和模型把一句话变成“模型能看懂的数字”得到模型对这句话的情感判断结果 from transformers import AutoTokenizer, AutoModelForSequenceClassification import torch# 1. DistilBERT (已经在SST-2情感分析上微调好) model_name distilbert-base-uncased-finetuned-sst-2-english# 2. 加载分词器和模型 tokenizer AutoTokenizer.from_pretrained(model_name) model AutoModelForSequenceClassification.from_pretrained(model_name)# 3. 预测示例 text I really love this movie. The acting is wonderful! inputs tokenizer(text, return_tensorspt)with torch.no_grad():outputs model(**inputs)# 4. 返回分类结果 logits outputs.logits predicted_class_id torch.argmax(logits, dim1).item() print(Predicted Class ID:, predicted_class_id) 示例输出 Predicted Class ID: 1下面分别解释一下每一步 加载分词器 文字本质上是“字符串”而模型只能理解数字。分词器会把你的句子比如“love this movie”变成 [ 101, 2293, 2023, 3185, ... ] 这样的数字列表然后给出必要的格式信息attention_mask等。 加载模型 这里的模型是已经训练好的“DistilBERT情感分析模型”版本能直接判断文本的情感倾向。你不需要自己写BERT网络结构或训练逻辑Hugging Face直接帮你搞定了。 输入文本并转换成PyTorch需要的张量 inputs 是一个字典里面包含了 input_ids、attention_mask 等是模型需要的输入格式。 前向传播Forward Pass 就是把输入数据喂给模型模型内部做一系列计算后输出结果outputs。因为我们只是想要预测结果不需要计算梯度所以用 with torch.no_grad(): 能节省内存和加速。 得到预测分类 最后把模型的输出分数 (logits) 里最大的那一个类别当作预测结果。不同模型会给出不同类别数。 3.3 如果要训练或微调模型 上面的代码只做了“推理”预测结果。要想“训练”或“微调Fine-tuning”这个模型就需要多几个步骤 准备好训练数据比如有几千条电影评论每条都打上“正面/负面”标签。用 DataLoader 逐批读取如果你有1万条数据不可能一次全塞进模型里那会占用很多内存。 PyTorch 提供 DataLoader 帮你分批次读数据比如每次读32条。 前向传播 计算损失Loss 跟推理一样会得到 outputs但这回你要跟真实标签比对来算损失值看模型猜的对不对。 反向传播 更新模型参数 通过 optimizer.step() 等操作根据损失值来调整模型的权重让它下次预测更准。如此循环多次直到训练结束。 总结一下 “推理”只需要前向传播看结果就好不用算梯度“训练”还要加上计算损失值和反向传播的步骤。 4 为什么要用预训练模型应用场景是啥 速度更快不用从头把模型训练到能理解语言的地步直接用已经“见多识广”的模型做少量微调就能用。效果更好模型看过的“大量文本”会帮它学到很多词汇和语法知识对小数据集很友好。适用面广几乎任何涉及文本的场景都能用上比如客服聊天机器人、舆情分析、文本审查、问答系统等等。 5 课后练习与思考 自己尝试微调 找到 IMDb 的电影评论数据练习用 BERT 做正面/负面分类。调整学习率、批大小等超参数看看对准确率有多大影响。 比较 BERT 和 GPT GPT更擅长“生成文本”BERT更擅长“理解文本”。如果你只想做分类BERT常常更好如果你想写文章、做对话GPT是更好选手。不妨亲自试试感受一下它们的差异。 试试 T5 把分类任务也当成“文本生成”输入“This is an awesome movie.”让模型输出“positive”。看看 T5 表现如何。 总结 在这章里我们了解了预训练模型的基本概念认识了BERT、GPT、T5这三位“明星”然后用一个小例子实际演示了如何用Hugging Face的工具快速完成“加载分词器—转成张量—前向传播—预测结果”这四步。我们还提到如果想“训练”或“微调”需要多加“计算损失”和“反向传播”这两个步骤。 掌握了这些你就能灵活运用现有的大模型来完成各种NLP任务再也不用从零写代码、找海量数据、苦哈哈地训练啦这也是现在NLP最常见、最高效的做法。祝你学习愉快
http://www.dnsts.com.cn/news/230594.html

相关文章:

  • 辽宁网站建站优化公司中信建设有限责任公司 联系方式
  • 筑梦网站建设重庆企业网站建设哪家好
  • 自适应网站建设都找全网天下做外贸的网站有那些
  • 建站服务搭建的页面时常州seo第一人
  • 网站稳定期的推广高级网站开发工程师
  • 建设网站地图素材wordpress 时间调用
  • 中国优秀企业网站欣赏常见的网站空间
  • 怎么做自我介绍网站实名制认证网站
  • 双滦网站建设fsockopen wordpress
  • 长安区建设局网站广州网站开发培训
  • vue.js和vs做网站比较wordpress淘宝客插件开发
  • 国内精品网站建设沈阳建设工程信息网可访问中项网
  • 狠狠做最新网站中国建设有限公司官网
  • 交互网站开发培训云搜索app官网
  • 阿里云服务器 多个网站微信怎么开创公众号
  • php 微信 网站开发南通哪里做网站
  • 小说网站要怎么做乾安网站建设
  • joomla 多语言网站网站排名快速提升
  • 咸阳做网站托管网页版微信登录显示二维码已失效
  • 网站域名不要了怎么做用DW做的网站怎么分享给别人
  • 新余网站建设公司如何创建一家自己的公司
  • 包装在线设计网站企业邮箱账号
  • vf建设银行网站网站页面设计的特色
  • 带你做网站毕设政务服务网站 建设方案
  • 专业做包装的电商网站江门制作网站公司
  • 360网站建设服务器网站做三个月收录100
  • 网站首页只显示域名政务服务网登录入口
  • 网站设计团队名称免费做app的网站哪个好
  • 关于网站建设的建议自贡市网站建设
  • 网站网站建设公司建筑人才招聘