首页 > 后端开发 > Python教程 > 利用拥抱脸部变形金刚的力量进行机器学习

利用拥抱脸部变形金刚的力量进行机器学习

Mary-Kate Olsen
发布: 2025-01-05 09:26:43
原创
454 人浏览过

近年来,Hugging Face [https://huggingface.co/] 已成为机器学习社区中最具影响力的平台之一,为开发者和研究人员提供了广泛的工具和资源。其最著名的产品之一是 Transformers 库,它可以更轻松地利用最先进的模型、数据集和应用程序。该库使用户能够将预先训练的模型无缝集成到他们的项目中并加速机器学习工作流程。

在本文中,我们将探索 Transformers 库、如何安装它,并展示一些使用管道执行情感分析、文本生成和零样本分类等任务的实际用例。

Harnessing the Power of Hugging Face Transformers for Machine Learning

什么是抱脸变形金刚?

Transformers 库 提供 API 和工具来下载和训练最先进的预训练模型,这些模型针对各种任务进行了微调,包括自然语言处理 (NLP)、计算机视觉和多式联运应用。通过使用预训练模型,您可以显着降低计算成本、碳足迹以及从头开始训练模型所需的时间。这是加快开发周期并利用机器学习最新进展的好方法。

该库支持 Python 3.6 ,并与 PyTorchTensorFlowFlax 等深度学习框架无缝协作。它允许您直接从 Hugging Face 模型中心下载模型,并只需几行代码即可使用它们进行推理。

安装指南

开始使用 Transformers 库之前,必须设置您的开发环境。安装方法如下:

1. 设置虚拟环境

首先在项目目录中创建一个虚拟环境:

python -m venv .myenv
登录后复制
登录后复制

激活虚拟环境:

  • 在 Linux/macOS 上:
  source .myenv/bin/activate
登录后复制
登录后复制

验证您使用的 Python 版本是否正确:

python -V
登录后复制
登录后复制

确保您使用的是 Python 3.6(例如 Python 3.10.10)。

将 pip 升级到最新版本:

pip install --upgrade pip
登录后复制
登录后复制

2.安装Transformers库

现在您可以安装变形金刚。如果您使用 PyTorch,请使用以下命令将其与库一起安装:

pip install 'transformers[torch]'
登录后复制
登录后复制

对于TensorFlow 2.0

pip install 'transformers[tf-cpu]'
登录后复制
登录后复制

对于亚麻(用于研究环境):

python -m venv .myenv
登录后复制
登录后复制

如果您使用的是 M Mac 或基于 ARM 的架构,您可能需要额外的依赖项:

  source .myenv/bin/activate
登录后复制
登录后复制

一切设置完毕后,通过运行以下 Python 命令检查安装是否成功:

python -V
登录后复制
登录后复制

如果成功,您应该看到类似于以下内容的输出:

pip install --upgrade pip
登录后复制
登录后复制

使用Pipeline API进行快速推理

Hugging Face Transformers 库中的

pipeline API 让您可以轻松执行复杂的机器学习任务,而无需深入研究底层代码或模型细节。该管道自动为您处理预处理、模型推理和后处理。

让我们看看如何通过管道 API 使用一些流行的任务。

1. 情感分析

情感分析涉及确定一段文本背后的情感基调,例如它是积极的还是消极的。以下是如何使用管道 API 执行情感分析:


pip install 'transformers[torch]'
登录后复制
登录后复制

输出:

pip install 'transformers[tf-cpu]'
登录后复制
登录后复制
管道首先预处理文本(标记化),将其传递到模型,最后对结果进行后处理。在本例中,模型将输入分类为

POSITIVE,得分为 0.999。

2. 文本生成

Transformers 还提供了一种使用预训练语言模型(如

GPT-2)生成文本的简单方法。下面是使用文本生成管道的示例:

pip install 'transformers[flax]'
登录后复制

输出:

brew install cmake
brew install pkg-config
登录后复制
模型根据提示“我爱你”生成三种不同的文本变体。这对于生成创意内容或完成给定句子非常有用。

3. 零样本分类

零样本分类 是一项强大的功能,允许您将文本分类,而无需在这些类别上显式训练模型。例如,即使您尚未在特定数据集上训练模型,您也可以将文本分类为预定义标签。

这是一个例子:


python -c "from transformers import pipeline; print(pipeline('sentiment-analysis')('we love you'))"
登录后复制

输出:

[{'label': 'POSITIVE', 'score': 0.9998704791069031}]
登录后复制
模型表明该文本最有可能被分类为

新闻,置信度得分为 0.51。

您还可以使用饼图可视化结果,以更好地了解分布情况:


from transformers import pipeline

classifier = pipeline("sentiment-analysis", model="distilbert/distilbert-base-uncased-finetuned-sst-2-english")
res = classifier("I love you! I love you! I love you!")

print(res)
登录后复制
这将显示一个饼图,表示每个标签的概率,帮助您可视化模型如何解释文本。

Harnessing the Power of Hugging Face Transformers for Machine Learning

结论

Hugging Face 的 Transformers 库提供了一种方便而强大的方式来访问最先进的模型并将其用于各种机器学习任务。无论您是进行情感分析、文本生成还是零样本分类,管道 API 都可以简化将这些高级模型集成到您的项目中的过程。

通过简单易懂的安装说明和实际示例,您只需几个步骤即可开始使用 Transformer。 Hugging Face 模型中心还提供了大量预训练模型,使您能够快速实现机器学习的最新进展。

以上是利用拥抱脸部变形金刚的力量进行机器学习的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板