第二部:《深度學習》70/100 📌 第七周小結與測驗:用 HuggingFace 建立情緒分析模型 😊😡

更新 發佈閱讀 10 分鐘

AI時代系列(2) 機器學習三部曲: 🔹 第二部:《深度學習 —— 神經網路的革命》

70/100 第七週:📌 語言模型與生成式 AI(BERT、GPT)🗣🔍

70.小結與測驗:用 HuggingFace 建立情緒分析模型 😊😡 訓練你的情感解讀 AI!

🔖 小結:單元 61~69 精華整理

🔢 單元➜ 🎯 主題➜ 🧠 核心觀念

61 📚 預訓練語言模型➜ 先用大語料學語言結構與常識,再微調任務

62 🎭 BERT 與 Masked LM➜ 雙向上下文學習,適合理解任務

63 ✏ GPT 與自回歸生成➜ 一字一字生成,適合創作與聊天

64 ⚔ BERT vs GPT 比較➜ BERT 理解好、GPT 生成強,各有場景

65 🧑‍🔧 微調技巧➜ 再訓練任務層,讓通用模型變任務專家

66 🪄 Prompt Engineering➜ 不改模型,靠設計提示引導模型表現

67 🧑‍💻 ChatGPT 對話生成➜ 結合 RLHF 與記憶機制,進化成擬人對話高手

68 🌌 Embedding 與語意空間➜ 語意可以向量化,用距離比喻關聯

69 📩 NLP應用場景➜ 摘要、情緒分析、客服 AI 實戰場景一網打盡

________________________________________

✅ 單選題(每題含解析)

1️⃣ 哪個語言模型使用「遮蔽詞」來訓練語意理解?

A. GPT

✅ B. BERT

C. T5

D. ChatGPT

📘 **解析:**BERT 使用 Masked Language Modeling 任務,隨機遮詞,讓模型學會在上下文中預測內容。

________________________________________

2️⃣ 下列哪一個最適合用來「生成續寫」小說內容?

A. BERT

✅ B. GPT

C. RoBERTa

D. ERNIE

📘 **解析:**GPT 採自回歸架構,每次基於前文預測下一字,適合創造式文本。

________________________________________

3️⃣ Prompt Engineering 的最大優勢是什麼?

A. 可以節省參數

✅ B. 不需調整模型權重也能改變任務行為

C. 可取代資料清洗

D. 可加速微調訓練

📘 **解析:**Prompt 是一種「語言引導法」,無需微調參數,就能改變輸出方式。

________________________________________

🧠 問答題(含建議解答)

________________________________________

❓ 問題 1:GPT 與 BERT 在語言建模上最大的結構性差異是什麼?為何會導致不同任務適用性?

✅ 建議答案:

GPT 採用 Decoder-only 架構 + 自回歸語言模型(只能看前文),適合用於語言生成任務;

而 BERT 採用 Encoder-only + 雙向遮蔽訓練(同時看左右文),更擅長理解任務如分類、問答。

________________________________________

❓ 問題 2:若你要建立一個法律文件摘要工具,會用哪種模型?你會選擇抽取式還是生成式摘要?

✅ 建議答案:

我會選擇 BART 或 T5 等 Abstractive 模型,因為它們具備重寫與壓縮能力,能處理法律語句的繁複與邏輯性。若重點是準確無誤,初期也可採 抽取式 + 手動複審。

________________________________________

❓ 問題 3:Embedding 向量在情緒分析中的實際幫助是什麼?

✅ 建議答案:

Embedding 將詞語語意表示為向量,使模型能計算「語意距離」。例如「happy」與「joy」的向量距離近,能幫助模型判斷文本整體情緒傾向。

________________________________________

😊 實作範例:用 HuggingFace 建立情緒分析模型

以下是使用 Hugging Face transformers 和 datasets 快速訓練情緒分析模型的簡單範例。

________________________________________

⚙️ 1. 安裝必要套件

pip install transformers datasets scikit-learn

________________________________________

📦 2. 載入資料(使用 IMDb 情緒資料集)

python

from datasets import load_dataset

dataset = load_dataset("imdb")

dataset = dataset["train"].train_test_split(test_size=0.2)

________________________________________

🧠 3. 載入模型與 Tokenizer

python

from transformers import BertTokenizerFast, BertForSequenceClassification

tokenizer = BertTokenizerFast.from_pretrained("bert-base-uncased")

model = BertForSequenceClassification.from_pretrained("bert-base-uncased", num_labels=2)

________________________________________

✂️ 4. Tokenize 資料

python

def preprocess(example):

return tokenizer(example["text"], truncation=True, padding="max_length", max_length=128)

encoded_dataset = dataset.map(preprocess, batched=True)

________________________________________

🏋️ 5. 建立訓練器並訓練

python

from transformers import Trainer, TrainingArguments

args = TrainingArguments(

output_dir="./results",

evaluation_strategy="epoch",

per_device_train_batch_size=8,

per_device_eval_batch_size=8,

num_train_epochs=2,

logging_dir="./logs"

)

trainer = Trainer(

model=model,

args=args,

train_dataset=encoded_dataset["train"],

eval_dataset=encoded_dataset["test"]

)

trainer.train()

________________________________________

🧪 6. 模型評估與預測

python

text = "This movie was absolutely fantastic!"

inputs = tokenizer(text, return_tensors="pt", truncation=True, padding=True)

output = model(**inputs)

pred = output.logits.argmax().item()

print("情緒分類:", "正面" if pred == 1 else "負面")

上面的程式碼展示了如何使用 Hugging Face 的 Transformers 套件,快速地以 BERT 模型進行情緒分類任務。流程包括:安裝必要套件、載入 IMDb 電影評論資料集並切分訓練與測試集、載入預訓練的 BERT 模型與 tokenizer、將文字資料進行編碼、設定訓練參數並使用 Trainer 進行模型訓練,最後透過一段文字進行推論,判斷其情緒為正面或負面。整體流程清晰,適合用來實作文本分類的入門範例。

________________________________________

📚 小結:

你已學會透過 Hugging Face 完成情緒分析任務的微調訓練流程!

同樣架構只需換資料集 + label 就能做客服分類、新聞分類等多任務延伸



留言
avatar-img
留言分享你的想法!
avatar-img
Hansen W的沙龍
9會員
274內容數
AIHANS沙龍是一個結合AI技術實戰、產業策略與自我成長的知識平台,主題涵蓋機器學習、生成式AI、創業經驗、財務規劃及哲學思辨。這裡不只提供系統化學習資源與實作案例,更強調理性思維與行動力的結合。無論你是AI初學者、創業者,還是追求人生升維的行者,都能在這裡找到前進的方向與志同道合的夥伴。
Hansen W的沙龍的其他內容
2025/09/22
自動摘要能濃縮長文重點,情緒分析可判斷文本情感傾向,客服機器人則提供自動化互動服務。三者雖任務不同,皆可依靠預訓練模型、微調與 Prompt 技術實現,廣泛應用於新聞、輿情監控、商業與智慧客服場景。
2025/09/22
自動摘要能濃縮長文重點,情緒分析可判斷文本情感傾向,客服機器人則提供自動化互動服務。三者雖任務不同,皆可依靠預訓練模型、微調與 Prompt 技術實現,廣泛應用於新聞、輿情監控、商業與智慧客服場景。
2025/09/22
Embedding 是將詞、句子等符號轉為向量並映射到語意空間,語意相近的詞向量距離更近。靜態向量有歧義問題,動態向量可依上下文調整。應用於 NLP、聊天機器人、推薦系統與跨語言翻譯,並可視化語意結構。
2025/09/22
Embedding 是將詞、句子等符號轉為向量並映射到語意空間,語意相近的詞向量距離更近。靜態向量有歧義問題,動態向量可依上下文調整。應用於 NLP、聊天機器人、推薦系統與跨語言翻譯,並可視化語意結構。
2025/09/22
ChatGPT 基於 GPT-3.5/4,結合自回歸生成、多輪記憶與 RLHF,實現自然流暢的對話能力。其應用遍及教育、商務、程式與創意內容,優於傳統聊天機器人。透過 Prompt 設計與溫度控制可調整輸出品質,但仍需結合檢索與風控機制確保準確與安全。
2025/09/22
ChatGPT 基於 GPT-3.5/4,結合自回歸生成、多輪記憶與 RLHF,實現自然流暢的對話能力。其應用遍及教育、商務、程式與創意內容,優於傳統聊天機器人。透過 Prompt 設計與溫度控制可調整輸出品質,但仍需結合檢索與風控機制確保準確與安全。
看更多
你可能也想看
Thumbnail
在小小的租屋房間裡,透過蝦皮購物平臺採購各種黏土、模型、美甲材料等創作素材,打造專屬黏土小宇宙的療癒過程。文中分享多個蝦皮挖寶地圖,並推薦蝦皮分潤計畫。
Thumbnail
在小小的租屋房間裡,透過蝦皮購物平臺採購各種黏土、模型、美甲材料等創作素材,打造專屬黏土小宇宙的療癒過程。文中分享多個蝦皮挖寶地圖,並推薦蝦皮分潤計畫。
Thumbnail
小蝸和小豬因購物習慣不同常起衝突,直到發現蝦皮分潤計畫,讓小豬的購物愛好產生價值,也讓小蝸開始欣賞另一半的興趣。想增加收入或改善伴侶間的購物觀念差異?讓蝦皮分潤計畫成為你們的神隊友吧!
Thumbnail
小蝸和小豬因購物習慣不同常起衝突,直到發現蝦皮分潤計畫,讓小豬的購物愛好產生價值,也讓小蝸開始欣賞另一半的興趣。想增加收入或改善伴侶間的購物觀念差異?讓蝦皮分潤計畫成為你們的神隊友吧!
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 129 中說,Bidirectional Encoder Representations from Transformers (BER
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 129 中說,Bidirectional Encoder Representations from Transformers (BER
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 在 AI說書 - 從0開始 - 127 中提及: Transformer 的關鍵參數為: 原始 Transformer 模型中,左圖的 N = 6 原始 Tran
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 在 AI說書 - 從0開始 - 127 中提及: Transformer 的關鍵參數為: 原始 Transformer 模型中,左圖的 N = 6 原始 Tran
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 39 至 AI說書 - 從0開始 - 69 的第二章內容,我們拿 Encoder 出來看: 幾點注意如下: BERT 模型使用 M
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 回顧 AI說書 - 從0開始 - 39 至 AI說書 - 從0開始 - 69 的第二章內容,我們拿 Encoder 出來看: 幾點注意如下: BERT 模型使用 M
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 我們已經在 AI說書 - 從0開始 - 114 建立了 Transformer 模型,並在 AI說書 - 從0開始 - 115 載入權重並執行 Tokenizing,現
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 我們已經在 AI說書 - 從0開始 - 114 建立了 Transformer 模型,並在 AI說書 - 從0開始 - 115 載入權重並執行 Tokenizing,現
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 我們已經在 AI說書 - 從0開始 - 114 建立了 Transformer 模型。 現在我們來載入預訓練權重,預訓練的權重包含 Transformer 的智慧
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 我們已經在 AI說書 - 從0開始 - 114 建立了 Transformer 模型。 現在我們來載入預訓練權重,預訓練的權重包含 Transformer 的智慧
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 從 AI說書 - 從0開始 - 82 到 AI說書 - 從0開始 - 85 的說明,有一個很重要的結論:最適合您的模型不一定是排行榜上最好的模型,您需要學習 NLP 評
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 從 AI說書 - 從0開始 - 82 到 AI說書 - 從0開始 - 85 的說明,有一個很重要的結論:最適合您的模型不一定是排行榜上最好的模型,您需要學習 NLP 評
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformer 可以透過繼承預訓練模型 (Pretrained Model) 來微調 (Fine-Tune) 以執行下游任務。 Pretrained Mo
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 Transformer 可以透過繼承預訓練模型 (Pretrained Model) 來微調 (Fine-Tune) 以執行下游任務。 Pretrained Mo
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續xxxx,ChatGPT 產生的程式,我們將它匯入 Colab 執行看看 ( Colab 使用教學見 使用Meta釋出的模型,實作Chat GPT - Part 0
Thumbnail
我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續xxxx,ChatGPT 產生的程式,我們將它匯入 Colab 執行看看 ( Colab 使用教學見 使用Meta釋出的模型,實作Chat GPT - Part 0
Thumbnail
筆記-曲博談AI模型.群聯-24.05.05 https://www.youtube.com/watch?v=JHE88hwx4b0&t=2034s *大型語言模型 三個步驟: 1.預訓練,訓練一次要用幾萬顆處理器、訓練時間要1個月,ChatGPT訓練一次的成本為1000萬美金。 2.微調(
Thumbnail
筆記-曲博談AI模型.群聯-24.05.05 https://www.youtube.com/watch?v=JHE88hwx4b0&t=2034s *大型語言模型 三個步驟: 1.預訓練,訓練一次要用幾萬顆處理器、訓練時間要1個月,ChatGPT訓練一次的成本為1000萬美金。 2.微調(
Thumbnail
這陣子使用AI模型,還有參考國內外一些喜歡玩語言模型的同好發文,一個很有趣的結論就是,有時候把大型語言模型(尤其ChatGPT)當作一個人來溝通,會得到比較好的結果,這的確是非常反直覺的,也就是說很多時候ChatGPT耍懶不肯工作的時候,你用加油打氣,或是情緒勒索的方法,確實是可以得到比較好的結果。
Thumbnail
這陣子使用AI模型,還有參考國內外一些喜歡玩語言模型的同好發文,一個很有趣的結論就是,有時候把大型語言模型(尤其ChatGPT)當作一個人來溝通,會得到比較好的結果,這的確是非常反直覺的,也就是說很多時候ChatGPT耍懶不肯工作的時候,你用加油打氣,或是情緒勒索的方法,確實是可以得到比較好的結果。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News