详解Keras3.0 KerasNLP Models: GPT2 GPT2Tokenizer

1、GPT2Tokenizer

用于将文本数据转换为适合训练和预测的格式,主要功能是将输入的文本进行分词、编码等操作,以便在神经网络中使用

keras_nlp.models.GPT2Tokenizer(vocabulary, merges, **kwargs)
参数说明 
  • vocabulary一个字典,包含词汇表的映射关系。键是单词,值是对应的索引。
  • merges一个列表,包含合并规则。每个元素是一个元组,表示两个需要合并的单词及其对应的索引。
  • **kwargs其他可选参数。
示例
from keras_nlp.models import GPT2Tokenizer# 定义词汇表和合并规则
vocabulary = {"hello": 1, "world": 2, "!": 3}
merges = [(1, 2)]# 创建分词器实例
tokenizer = GPT2Tokenizer(vocabulary, merges)# 对文本进行分词和编码
text = "hello world!"
encoded_text = tokenizer.encode(text)
print(encoded_text)  # 输出:[1, 2, 3]# 对编码后的文本进行解码
decoded_text = tokenizer.decode(encoded_text)
print(decoded_text)  # 输出:"hello world!"

 

2、from_preset

GPT2Tokenizer.from_preset()是Hugging Face的Transformers库中的一个函数,用于从预定义的预设中加载一个GPT-2分词器。这个函数可以帮助你快速地创建一个适用于特定任务的分词器,而无需从头开始训练。

GPT2Tokenizer.from_preset("gpt2_base_en")
参数说明 

在这个例子中,我们加载的是"gpt2_base_en"预设,它包含了英文版本的GPT-2模型的基本参数和词汇表

示例
from transformers import GPT2Tokenizer# 创建分词器
tokenizer = GPT2Tokenizer.from_pretrained("gpt2_base_en")# 对输入进行分词
tokens = tokenizer("The quick brown fox tripped.")
print(tokens)  # 输出:{'input_ids': [31474, 2024, 2003, 1037, 2327, 102], 'attention_mask': [1, 1, 1, 1, 1, 1]}# 对输入进行反分词
text = tokenizer.decode(tokens['input_ids'])
print(text)  # 输出:"The quick brown fox tripped."
  • gpt2_base_en:这是一个12层的GPT-2模型,参数量为124.44M,保持了大小写。它使用WebText数据集进行训练。
  • gpt2_medium_en:这是一个24层的GPT-2模型,参数量为354.82M,保持了大小写。它也使用WebText数据集进行训练。
  • gpt2_large_en:这是一个36层的GPT-2模型,参数量为774.03M,保持了大小写。同样使用WebText数据集进行训练。
  • gpt2_extra_large_en:这是一个48层的GPT-2模型,参数量为1.56B,保持了大小写。它也使用WebText数据集进行训练。
  • gpt2_base_en_cnn_dailymail:这是一个12层的GPT-2模型,参数量为124.44M,保持了大小写。它使用CNN/DailyMail摘要生成数据集进行微调。

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

“抓取再吸取的连续操作学习”研究工作发表于IEEE Trans. on Robotics:仿人手的柔性抓取,超人手的指背吸取!

长期以来,抓取一直被认为是机器人操作中一项重要而实际的任务。然而,实现对不同物体的稳健和有效的抓取具有挑战性,因为它涉及夹具设计、感知、控制和学习等。最近基于学习的方法在抓取各种新物体方面表现出优异的性能。然而,这些…

【C++11特性篇】新的类功能解读:新增加的[移动构造函数/移动赋值运算符重载]

前言 大家好吖,欢迎来到 YY 滴C系列 ,热烈欢迎! 本章主要内容面向接触过C的老铁 主要内容含: 欢迎订阅 YY滴C专栏!更多干货持续更新!以下是传送门! YY的《C》专栏YY的《C11》专栏YY的《Linux》…

使用 Elasticsearch 检测抄袭 (二)

我在在之前的文章 “使用 Elasticsearch 检测抄袭 (一)” 介绍了如何检文章抄袭。这个在许多的实际使用中非常有意义。我在 CSDN 上的文章也经常被人引用或者抄袭。有的人甚至也不用指明出处。这对文章的作者来说是很不公平的。文章介绍的内容针对很多的…

Github 2023-12-24 开源项目日报 Top10

根据Github Trendings的统计,今日(2023-12-24统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Python项目5Jupyter Notebook项目2C项目1C项目1Go项目1Java项目1JavaScript项目1Ruby项目1 Serverless Frame…

【华为机试】2023年真题B卷(python)-分割数组的最大差值

一、题目 题目描述: 给定一个由若干整数组成的数组nums,可以在数组内的任意位置进行分割,将该数组分割成两个非空子数组(即左数组和右数组),分别对子数组求和得到两个值,计算这两个值的差值,请输出所有分割…

双向长短期记忆网络(Bi-LSTM)-多输入回归预测

目录 一、程序及算法内容介绍: 基本内容: 亮点与优势: 二、实际运行效果: 三、部分代码展示: 四、完整代码下载: 一、程序及算法内容介绍: 基本内容: 本代码基于Matlab平台编…

web前端之拖拽API、vue3实现图片上传拖拽排序、拖放、投掷、复制、若依、vuedraggable

MENU vue2html5原生dom原生JavaScript实现跨区域拖放vue2实现跨区域拖放vue2mousedown实现全屏拖动,全屏投掷vue3element-plusvuedraggable实现图片上传拖拽排序vue2transition-group实现拖动排序原生拖拽排序 vue2html5原生dom原生JavaScript实现跨区域拖放 关键代…

【Android 13】使用Android Studio调试系统应用之Settings移植(一):编译服务器的配置、AOSP源码的下载、编译、运行

文章目录 1. 篇头语2. 系列文章3. ubuntu 最佳版本3.1 下载并安装3.2 配置AOSP工具链3.3 配置Python多版本支持4. AOSP源码下载4.1 配置repo工具4.2 源码下载5. AOSP编译5.1 添加emulator模拟器配置5.1.1 哪些是支持模拟器的Products?5.1.2 添加方法5.2 编译

vscode配置用户代码片段

1.左下角打开设置 2.新建全局代码片段 3.输入名字,名字随意不过最好语意化 4.创建模版 这里的模版为vue2常用代码片段,稍后会持续更新。 {"Print to console": {"prefix": "v2", //页面使用时名称"body":…

LeNet网络分析与demo实例

参考自 up主的b站链接:霹雳吧啦Wz的个人空间-霹雳吧啦Wz个人主页-哔哩哔哩视频这位大佬的博客 Fun_机器学习,pytorch图像分类,工具箱-CSDN博客 网络分析: 最好是把这个图像和代码对着来看然后进行分析的时候比较快 # 使用torch.nn包来构建神经网络. im…

力扣45. 跳跃游戏 II

贪心算法 思路: 在 pos 位置,能跳到 pos nums[pos] 位置;正向遍历数组,迭代出能跳到的最大位置: maxPos std::max(maxPos, idx nums[idx]); 在遍历到最大位置的地方则更新步数,并重新统计基于此位置能跳…

Go 泛型之类型参数

Go 泛型之类型参数 文章目录 Go 泛型之类型参数一、Go 的泛型与其他主流编程语言的泛型差异二、返回切片中值最大的元素三、类型参数(type parameters)四、泛型函数3.1 泛型函数的结构3.2 调用泛型函数3.3 泛型函数实例化(instantiation&…

WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER.

Hadoop启动时警告,但不影响使用,强迫症的我还是决定寻找解决办法 WARNING: HADOOP_SECURE_DN_USER has been replaced by HDFS_DATANODE_SECURE_USER. Using value of HADOOP_SECURE_DN_USER.原因是Hadoop安装配置于root用户下,对文件需要进…

案例144:基于微信小程序的自修室预约系统

文末获取源码 开发语言:Java 框架:SSM JDK版本:JDK1.8 数据库:mysql 5.7 开发软件:eclipse/myeclipse/idea Maven包:Maven3.5.4 小程序框架:uniapp 小程序开发软件:HBuilder X 小程序…

Spring中的上下文工具你写的可能有bug

文章目录 前言功能第一种:ApplicationContext第二种方式:ApplicationContextAware第三种:BeanFactoryPostProcessor 源码第一种第二种第三种 前言 本篇是针对如何写一个比较好的spring工具的一个探讨。 功能 下面三种方式,你觉…

Odoo16 实用功能之Form视图详解(表单视图)

目录 1、什么是Form视图 2、Form视图的结构 3、源码示例 1、什么是Form视图 Form视图是用于查看和编辑数据库记录的界面。每个数据库模型在Odoo中都有一个Form视图,用于显示该模型的数据。Form视图提供了一个可编辑的界面,允许用户查看和修改数据库记…

[python]用python实现对arxml文件的操作

目录 关键词平台说明一、背景二、方法2.1 库2.2 code 关键词 python、excel、DBC、openpyxl 平台说明 项目Valuepython版本3.6 一、背景 有时候需要批量处理arxml文件(ARXML 文件符合 AUTOSAR 4.0 标准),但是工作量太大,阔以考虑用python。 二、方…

最新版 JESD79-5B,2022年,JEDEC 内存SDRAM规范

本标准定义了DDR5 SDRAM规范,包括特性、功能、交流和直流特性、封装以及球/信号分配。本标准旨在为x4、x8和x16 DDR5 SDRAM设备定义符合JEDEC标准的8 Gb至32 Gb的最低要求。该标准是基于DDR4标准(JESD79-4)和DDR、DDR2、DDR3和LPDDR4标准的一…

智能优化算法应用:基于金枪鱼群算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用:基于金枪鱼群算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用:基于金枪鱼群算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.金枪鱼群算法4.实验参数设定5.算法结果6.…

1856_emacs_calc使用介绍与故事

Grey 全部学习内容汇总: GitHub - GreyZhang/g_org: my learning trip for org-mode 1856_emacs_calc使用介绍与故事 calc是emacs内置的一个计算器,可以提供多种计算表达方式并且可以支持org-mode中的表格功能。 主题由来介绍 我是因为想要了解org-…