搜尋
首頁後端開發Python教學利用擁抱臉部變形金剛的力量進行機器學習

近年來,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中文網其他相關文章!

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
Python是否列表動態陣列或引擎蓋下的鏈接列表?Python是否列表動態陣列或引擎蓋下的鏈接列表?May 07, 2025 am 12:16 AM

pythonlistsareimplementedasdynamicarrays,notlinkedlists.1)他們areStoredIncoNtiguulMemoryBlocks,mayrequireRealLealLocationWhenAppendingItems,EmpactingPerformance.2)LinkesedlistSwoldOfferefeRefeRefeRefeRefficeInsertions/DeletionsButslowerIndexeDexedAccess,Lestpypytypypytypypytypy

如何從python列表中刪除元素?如何從python列表中刪除元素?May 07, 2025 am 12:15 AM

pythonoffersFourmainMethodStoreMoveElement Fromalist:1)刪除(值)emovesthefirstoccurrenceofavalue,2)pop(index)emovesanderturnsanelementataSpecifiedIndex,3)delstatementremoveselemsbybybyselementbybyindexorslicebybyindexorslice,and 4)

試圖運行腳本時,應該檢查是否會遇到'權限拒絕”錯誤?試圖運行腳本時,應該檢查是否會遇到'權限拒絕”錯誤?May 07, 2025 am 12:12 AM

toresolvea“ dermissionded”錯誤Whenrunningascript,跟隨台詞:1)CheckAndAdjustTheScript'Spermissions ofchmod xmyscript.shtomakeitexecutable.2)nesureThEseRethEserethescriptistriptocriptibationalocatiforecationAdirectorywherewhereyOuhaveWritePerMissionsyOuhaveWritePermissionsyYouHaveWritePermissions,susteSyAsyOURHomeRecretectory。

與Python的圖像處理中如何使用陣列?與Python的圖像處理中如何使用陣列?May 07, 2025 am 12:04 AM

ArraysarecrucialinPythonimageprocessingastheyenableefficientmanipulationandanalysisofimagedata.1)ImagesareconvertedtoNumPyarrays,withgrayscaleimagesas2Darraysandcolorimagesas3Darrays.2)Arraysallowforvectorizedoperations,enablingfastadjustmentslikebri

對於哪些類型的操作,陣列比列表要快得多?對於哪些類型的操作,陣列比列表要快得多?May 07, 2025 am 12:01 AM

ArraySaresificatificallyfasterthanlistsForoperationsBenefiting fromDirectMemoryAcccccccCesandFixed-Sizestructures.1)conscessingElements:arraysprovideconstant-timeaccessduetocontoconcotigunmorystorage.2)iteration:araysleveragececacelocality.3)

說明列表和數組之間元素操作的性能差異。說明列表和數組之間元素操作的性能差異。May 06, 2025 am 12:15 AM

ArraySareBetterForlement-WiseOperationsDuetofasterAccessCessCessCessCessCessCessCessAndOptimizedImplementations.1)ArrayshaveContiguucuulmemoryfordirectAccesscess.2)列出sareflexible butslible butslowerduetynemicizing.3)

如何有效地對整個Numpy陣列進行數學操作?如何有效地對整個Numpy陣列進行數學操作?May 06, 2025 am 12:15 AM

在NumPy中进行整个数组的数学运算可以通过向量化操作高效实现。1)使用简单运算符如加法(arr 2)可对数组进行运算。2)NumPy使用C语言底层库,提升了运算速度。3)可以进行乘法、除法、指数等复杂运算。4)需注意广播操作,确保数组形状兼容。5)使用NumPy函数如np.sum()能显著提高性能。

您如何將元素插入python數組中?您如何將元素插入python數組中?May 06, 2025 am 12:14 AM

在Python中,向列表插入元素有兩種主要方法:1)使用insert(index,value)方法,可以在指定索引處插入元素,但在大列表開頭插入效率低;2)使用append(value)方法,在列表末尾添加元素,效率高。對於大列表,建議使用append()或考慮使用deque或NumPy數組來優化性能。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

WebStorm Mac版

WebStorm Mac版

好用的JavaScript開發工具

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用