AI大模型探索之路-训练篇7:大语言模型Transformer库之HuggingFace介绍

news2024/11/26 22:51:03

系列篇章💥

AI大模型探索之路-训练篇1:大语言模型微调基础认知
AI大模型探索之路-训练篇2:大语言模型预训练基础认知
AI大模型探索之路-训练篇3:大语言模型全景解读
AI大模型探索之路-训练篇4:大语言模型训练数据集概览
AI大模型探索之路-训练篇5:大语言模型预训练数据准备-词元化
AI大模型探索之路-训练篇6:大语言模型预训练数据准备-预处理


目录

  • 系列篇章💥
  • 一、HuggingFace介绍
  • 二、HuggingFace核心模块之Models
    • 1、Multimodal(多模态大模型)
    • 2、Computer Vision(计算机视觉任务)
    • 3、Natural Language Processing(自然语言处理)
    • 4、Audio(音频模型)
    • 5、其他模型
  • 三、HuggingFace核心模块之datasets
  • 四、HuggingFace核心模块之docs
  • 五、HuggingFace组件使用代码样例


一、HuggingFace介绍

在HuggingFace的官方网站上,你可以发现一个丰富的开源宝库,其中包含了众多机器学习爱好者上传的精选模型,供大家学习和应用。此外,你也可以将自己的模型分享至社区,与他人共同进步。HuggingFace因其开放和协作的精神被誉为机器学习界的GitHub。在这里,用户能够轻松获取到Transformers库里各式各样的组件资源,助力各类机器学习项目的实现和发展。
1)HuggingFace的核心库是Transformers,这个库集成了各种预训练模型、分词器和相应的工具。通过这个库,用户可以方便地加载和使用这些模型,进行文本分类、命名实体识别、情感分析等任务。
2)HuggingFace还提供了许多微调模型,这些模型针对特定任务进行了优化。用户可以直接使用这些模型,或者在其基础上进一步微调,以适应特定的应用场景。
3)HuggingFace的datasets库汇集了大量多样化的数据集资源,这为训练和评估AI大模型提供了便利。用户可以通过这个库轻松地下载和使用各种数据集,无需自己收集和整理数据。

总的来说,HuggingFace为AI大模型的学习提供了强大的支持,使得从数据准备到模型训练和部署的整个过程变得更加简单和高效。

在这里插入图片描述

下面主要说明介绍平时AI大模型开发过程中经常使用到的三个菜单模块。

二、HuggingFace核心模块之Models

Models模块提供有各种类型的大模型,可以远程拉取或者下载到本地进行机器学习使用。

1、Multimodal(多模态大模型)

在这里插入图片描述

1)Image-Text-to-Text(图文转文本):能够处理图像和文本输入,并生成相关文本输出的多模态模型
2)Visual Question Answering(视觉问答):能够回答关于所提供图像的问题,这需要模型同时理解图像内容和问题文本。
3)Document Question Answering(文档问答):是一种基于自然语言处理技术,用于分析和理解文档内容以回答用户提出的问题的系统。

2、Computer Vision(计算机视觉任务)

在这里插入图片描述

1)lmage Classification(图像分类):此任务的目标是将图像分配到预定义的类别中,例如区分图片中是猫还是狗。这通常涉及到识别图像中的全局特征,并使用这些特征来预测所属类别。
2)lmage Segmentation(图像分割):在图像分割中,目标是将图像划分成多个区域或对象。这些区域通常对应于图像中的不同物体或场景的不同部分,例如将一幅风景画中的树木、天空和草地区分开来。
3)Image-to-Text(图像到文本的任务):该任务的目的是描述或解释给定的图像内容,通常用于自动图像标注或辅助视觉障碍人士理解图片。
4)lmage-to-Image(图像到图像的任务):涉及将输入图像转换为具有特定风格或内容的输出图像,同时保留其识别特征。这包括风格转换、图像修复、图像上色等。
5)lmage-to-Video(图像到视频的任务):这个领域不如其他计算机视觉任务那么发达,但它涉及到从单一图像创建视频序列,通常需要结合深度学习和视频处理技术。
6)zero-Shot lmage Classification(零样本图像分类):这是一种特殊类型的图像分类,其中模型需要识别它未见过类的图像。它依赖于模型对类别之间关系的理解,以及利用未见类别的语义属性进行分类。
7)Unconditional lmage Generation(无条件图像生成):在此任务中,系统生成全新的图像,而不是基于现有图像。这通常是通过学习大量图像数据集的分布来实现的。
8)Object Detection(目标检测):与图像分类不同,目标检测不仅需要识别图像中的对象是什么,还要确定它们在图像中的位置。这通常涉及到定位对象的边界框。
9)Video Classification(视频分类):类似于图像分类,但在处理视频时,需要考虑时间维度,识别视频中的动作或者活动类型。
10)**Depth Estimation(深度估计,估计拍摄者距离图像各处的距离) **:这个任务旨在估计图像中每个像素的深度值,从而可以推断出场景中各个对象与观察者之间的距离。

3、Natural Language Processing(自然语言处理)

在这里插入图片描述

1)Translation (机器翻译):机器翻译模型能够将一种语言的文本自动翻译成另一种语言。这通常涉及到复杂的算法和大规模的双语数据集来训练模型,以便它能够理解上下文并产生流畅、准确的翻译。
2)Fill-Mask (填充掩码,预测句子中被遮掩的词):在预训练语言模型如BERT时常用的任务,其中句子中的一部分单词被掩码遮盖,模型的目标是预测被遮盖的单词。这有助于模型学习双向语境表示。
3)Token Classification (词分类):这种模型对输入文本中的每个单词或标记进行分类,通常用于命名实体识别、情感分析等任务,可以给每个词赋予一个或多个类别标签。
4)Sentence Similarity (句子相似度): 句子相似度模型旨在评估两个句子之间的语义相似程度。它们广泛用于信息检索、自然语言推理等领域。
5)Question Answering (问答系统):问答系统能够回答自然语言形式的问题。这通常需要理解问题的语义,并在给定的数据源中查找或生成答案。
6)Summarization (总结,缩句): 摘要或缩写模型的目的是从较长的文本中生成简短而准确的摘要。这可以是抽取式摘要,直接选取原文的关键部分,或是生成式摘要,重新组织和创造新的句子。
7) Zero-Shot Classification (零样本分类):零样本分类是在未见过的类别上进行分类的任务,无需直接的训练数据。它依赖于模型对类别描述的理解以及跨类别的关系推断能力。
8)Text Classification (文本分类):文本分类是将整个文本或文档分配到一个或多个类别的任务。常见的应用包括垃圾邮件检测、新闻分类、情感分析等。
9)Text2Text (文本到文本的生成):文本到文本的生成模型涉及将一种形式的文本作为输入,并生成另一种形式的文本作为输出。例如,可以将新闻报道转换为摘要,或者将一种语言的文本翻译成另一种语言。
10)Text Generation (文本生成):文本生成是创建自然语言文本的过程,不局限于已有的输入。典型的应用包括诗歌、故事创作,或者根据一定提示生成响应的文本。
11)Conversational (聊天):聊天模型设计用于进行对话,可以是与人类用户或另一个AI系统。它们通常需要理解和回应自然语言对话中的上下文。
12)Table Question Answering:表问答系统能够回答与表格数据相关的问题。这可能涉及预测表格中被遮掩的单词,或者使用表格数据来回答问题,判断句子是否被表格数据支持。

4、Audio(音频模型)

在这里插入图片描述

1)**Text-to-Speech (TTS) **: 这种模型将文本信息转换为听起来类似人声的音频输出。这通常涉及自然语言处理和数字信号处理技术,目的是创造自然听起来的合成语音。
2)Text-to-Audio(文本到语音): 类似于Text-to-Speech,这也是将文本转换成音频,但可能更泛指各种将文字信息转换为任何形式的音频输出的过程,包括非语音内容。
3) Automatic Speech Recognition (语音识别): 这是将人类语音转换为机器可读的文本格式的过程,通常用于语音识别系统,如智能助手和语音转文本服务。
4) Audio-to-Audio(语音到语音): 这指的是一种音频处理任务,其中输入是一种形式的音频信号,经过处理后输出为另一种形式的音频信号。这可能涉及到声音的修改、转换或增强。
5) Audio Classification(语音分类): 这个任务涉及对不同类别的音频样本进行分类,例如区分环境中的不同声音(如车辆噪音、动物叫声等)。
6)Voice Activity Detection (声音检测、检测识别出需要的声音部分): VAD是检测音频中哪些部分包含语音活动,哪些部分是静音或其他非语音活动的过程。这是语音处理中的一个重要步骤,常用于识别对话中的停顿和说话者变换。

5、其他模型

在这里插入图片描述

1)Tabular Classification(表分类): 在表格数据上进行分类任务,使用结构化数据(通常是行和列形式的表格)来预测离散标签或类别。
2)Tabular Regression(表回归): 使用表格数据进行回归分析,根据数值特征预测连续变量的值。
3)Reinforcement Learning (强化学习): 这是一种机器学习范式,其中算法通过与环境的交互学习如何采取最佳行动以最大化累积奖励。它不同于监督学习和非监督学习,因为它不依赖于预先标记的数据集,而是通过试错法自主学习。
4)Robotics(机器人): 虽然机器人技术本身不是机器学习模型,但强化学习在机器人领域有着广泛的应用,例如用于导航、操作和决策制定。
5)Graph Machine Learning(图机器学习): 图机器学习是指应用机器学习方法来分析和推断图结构数据的任务。图数据由节点(实体)和边(关系)组成,可以用来表示社交网络、分子结构、知识图谱等复杂结构。图机器学习模型旨在从这些图中提取有用的信息和模式。

三、HuggingFace核心模块之datasets

在datasets菜单模块中,对于我们常用的大模型,都有提供相应的数据集,可供研究学习。
在这里插入图片描述

四、HuggingFace核心模块之docs

Hugging Face官网的docs模块放置的是官方文档。
这些文档为用户提供了关于如何使用Hugging Face提供的库和模型的详细说明,包括但不限于安装指导、快速开始指南、教程、API参考等。具体如下:

  • 安装:指导用户如何安装必要的库和工具,以便开始使用Hugging Face的平台和模型。
  • 快速开始:提供简要的入门指南,帮助用户迅速理解和实践基本功能。
  • 教程:更深入的指导,包括如何使用pipeline进行推理、使用AutoClass编写可移植代码以及数据预处理等。
  • 调优:介绍如何对预训练模型进行微调,以适应特定的任务或数据集。 API参考:详细列出了库中各种类和方法的功能、参数和使用示例

在这里插入图片描述

Hub:Hub是Hugging Face推出的一种服务,用于托管基于Git的模型、数据集和Spaces(可能是一个共享空间,供用户存储和协作)。
1)Transformers:这是一套先进的机器学习库,支持Pytorch、TensorFlow和JAX框架,专注于Transformer模型。
2)Diffusers:Diffusers提供了用于图像和音频生成的先进扩散模型,基于PyTorch框架。
3)Datasets:这个服务允许用户访问和分享计算机视觉、音频和自然语言处理任务的数据集。
4)Gradio:Gradio是一个工具,使用户可以用几行Python代码构建机器学习演示和其他网络应用程序。
5)PEFT:PEFT提供了一系列参数高效的微调方法,适用于大模型。

五、HuggingFace组件使用代码样例

1、安装依赖

pip install transformers
pip install tokenizers	
pip install datasets

2、从HuggingFace拉取下载大模型:

from transformers import AutoModel, AutoTokenizer

# 指定模型名称
model_name = "bert-base-uncased"

# 自动加载分词器和模型
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModel.from_pretrained(model_name)

3、从HuggingFace下载使用数据集:

from datasets import load_dataset

# 指定数据集名称
dataset_name = "imdb"

# 加载数据集
dataset = load_dataset(dataset_name)

在这里插入图片描述

🎯🔖更多专栏系列文章:AIGC-AI大模型探索之路

如果文章内容对您有所触动,别忘了点赞、⭐关注,收藏!加入我,让我们携手同行AI的探索之旅,一起开启智能时代的大门!

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

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

相关文章

Web前端开发之CSS_2

关系选择器CSS盒子模型弹性盒子模型文档流浮动清除浮动定位 1. 关系选择器 1.1 后代选择器 E F{} 选择所有被 E 元素包含的 F 元素&#xff0c;中间用空格隔开 <ul> <li>后代列表1</li> <div> <ol> <li>后代列表2</li> </ol>…

20240428如何利用IDM下载磁链视频

缘起&#xff1a; https://weibo.com/tv/show/1034:4864336909500449 中国获奖独立纪录片《阿辉》揭秘红灯区“教父”的生存法则 5,751次观看 1年前 发布于 陕西 身为里中横 67.7万粉丝 互联网科技博主 微博原创视频博主 头条文章作者 https://weibo.com/tv/show/1034:4864…

深度学习:基于Keras框架,使用神经网络模型对葡萄酒类型进行预测分析

前言 系列专栏&#xff1a;机器学习&#xff1a;高级应用与实践【项目实战100】【2024】✨︎ 在本专栏中不仅包含一些适合初学者的最新机器学习项目&#xff0c;每个项目都处理一组不同的问题&#xff0c;包括监督和无监督学习、分类、回归和聚类&#xff0c;而且涉及创建深度学…

数据结构 - C/C++

快速跳转 数组链表栈队列串树 目录 数据结构 逻辑结构 物理结构 数据结构 数据 数据不仅仅包括整型、实型等数值类型&#xff0c;还包括字符及声音、图像、视频等非数值类型。 计算机可以理解并按照指定格式处理。 结构 元素相互之间存在一种或多种特定关系的数据集合。 …

Docker如何开启远程访问?

Docker是一种开源的容器化平台&#xff0c;通过将应用程序和其依赖项打包成容器&#xff0c;可以实现快速部署、弹性运行和简化管理。默认情况下&#xff0c;Docker的运行环境是局域网内的单机&#xff0c;但有时我们需要在不同地区的电脑、设备之间进行远程通信。本篇文章将介…

上市企业数字赋能指数数据集-2001到2022年(TF-IDF)

01、数据简介 上市公司数字赋能指数是一个用来衡量上市公司利用数字技术提高业务能力和效率的指标。这个指数反映了上市公司利用大数据、云计算和人工智能等数字技术&#xff0c;高效地利用商业资源和信息&#xff0c;并扩展供应关系的能力。市公司数字赋能指数是一种综合性的…

区间预测 | PSO-RF-KDE的粒子群优化随机森林结合核密度估计多变量回归区间预测(Matlab)

区间预测 | PSO-RF-KDE的粒子群优化随机森林结合核密度估计多变量回归区间预测&#xff08;Matlab&#xff09; 目录 区间预测 | PSO-RF-KDE的粒子群优化随机森林结合核密度估计多变量回归区间预测&#xff08;Matlab&#xff09;效果一览基本介绍程序设计参考资料 效果一览 基…

web安全---xss漏洞/beef-xss基本使用

what xss漏洞----跨站脚本攻击&#xff08;Cross Site Scripting&#xff09;&#xff0c;攻击者在网页中注入恶意脚本代码&#xff0c;使受害者在浏览器中运行该脚本&#xff0c;从而达到攻击目的。 分类 反射型---最常见&#xff0c;最广泛 用户将带有恶意代码的url打开&a…

websocket 单点通信,广播通信

Websocket协议是对http的改进&#xff0c;可以实现client 与 server之间的双向通信&#xff1b; websocket连接一旦建立就始终保持&#xff0c;直到client或server 中断连接&#xff0c;弥补了http无法保持长连接的不足&#xff0c;方便了客户端应用与服务器之间实时通信。 参…

信息系统管理

目录 一、信息系统管理范围 1、规划和组织 2、设计和实施 ①、信息系统架构 Ⅰ、集中式架构 Ⅱ、分布式架构 Ⅲ、SOA&#xff08;面向服务的系统架构&#xff09; 3、运维和服务 ①、运行管理和控制 ②、IT服务管理 ③、运行与监控 Ⅰ、运行监控 Ⅱ、安全监控 4、…

【题解】—— LeetCode一周小结17

【题解】—— 每日一道题目栏 上接&#xff1a;【题解】—— LeetCode一周小结16 22.组合总和 Ⅳ 题目链接&#xff1a;377. 组合总和 Ⅳ 给你一个由 不同 整数组成的数组 nums &#xff0c;和一个目标整数 target 。请你从 nums 中找出并返回总和为 target 的元素组合的个数…

01.Kafka简介与基本概念介绍

1 Kafka 简介 Kafka 是最初由 Linkedin公司开发&#xff0c;是一个分布式、支持分区(partition)的、多副本(replica)的&#xff0c;基于 Zookeeper 协调的分布式消息系统&#xff0c;它的最大的特性就是可以实时的处理大量数据以满足各种需求场景&#xff1a;比如基于 hadoop 的…

SpringBoot 快速开始 Dubbo RPC

文章目录 SpringBoot 快速开始 Dubbo RPC下载 Nacos项目启动项目的创建创建主项目接口定义服务的创建Dubbo 服务提供者的创建服务的消费者创建 添加依赖给 Provider、Consumer 添加依赖 开始写代码定义接口在 Provider 中实现在 Consumer 里面使用创建启动类 注册中心配置启动 …

R-Tree: 原理及实现代码

文章目录 R-Tree: 原理及实现代码1. R-Tree 原理1.1 R-Tree 概述1.2 R-Tree 结构1.3 R-Tree 插入与查询 2. R-Tree 实现代码示例&#xff08;Python&#xff09;结语 R-Tree: 原理及实现代码 R-Tree 是一种用于管理多维空间数据的数据结构&#xff0c;常用于数据库系统和地理信…

党建3d互动虚拟现实网上展厅有何优势?

在数字化浪潮席卷全球的今天&#xff0c;企业如何迅速踏上虚拟世界的征程&#xff0c;开启元宇宙之旅?答案就是——3D虚拟云展。这一创新平台&#xff0c;华锐视点以虚拟现实技术和3D数字建模为基石提供3D云展搭建服务&#xff0c;助力企业轻松搭建起虚拟数字基础设施&#xf…

Rust Web开发实战:打造高效稳定的服务端应用

Rust Web开发实战&#xff1a;打造高效稳定的服务端应用 本书将带领您从零开始构建Web应用程序&#xff0c;无论是API、微服务还是单体应用&#xff0c;都将一一涵盖。您将学到如何优雅地对外开放API&#xff0c;如何连接数据库以安全存储数据&#xff0c;以及如何对应用程序进…

用结构体把驱动层和应用层分开

用正点原子代码的usmart分析&#xff0c;如下&#xff1a; usmart.h usmart_config.c 实例&#xff1a;把结构体与具体驱动绑定一起 /* 正点原子的usmart串口的封装 涉及文件&#xff1a;usmart.h usmart.c usmart_config.c 还有外面使用的文件&#xff08;应用层调用&#xff…

Rocketmq 5 分级存储 Tieredstore(RIP-57、RIP-65) 原理详解 源码解析

1. 背景 RocketMQ 5.x 的演进目标之一是云原生化&#xff0c;在云原生和 Serverless 的浪潮下&#xff0c;需要解决 RocketMQ 存储层存在两个瓶颈。 数据量膨胀过快&#xff0c;单体硬件无法支撑存储的低成本和速度无法兼得 众多云厂商也希望提供 Serverless 化的 RocketMQ …

【源码阅读】 Golang中的database/sql库源码探究

Note&#xff1a;文章待完结 文章目录 前言一、整体目录结构二、driver包1、驱动相关driver.Driver2、驱动连接&#xff1a;driver.Conn3、预处理结构&#xff1a;Stmt4、执行结果 driver.Result5、查询结果&#xff1a;driver.Rows6、driver.RowsAffected7、driver.Value8、Va…

IDEA主题美化【保姆级】

前言 一款好的 IDEA 主题虽然不能提高我们的开发效率&#xff0c;但一个舒适简单的主题可以使开发人员更舒适的开发&#xff0c;时常换一换主题可以带来不一样的体验&#xff0c;程序员的快乐就这么简单。话不多说&#xff0c;先上我自己认为好看的主题设置。 最终效果图: 原…