我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。
總結一下目前有的素材:
- AI說書 - 從0開始 - 103:資料集載入
- AI說書 - 從0開始 - 104:定義資料清洗的函數
- AI說書 - 從0開始 - 105:資料集的資料進行資料清洗
- AI說書 - 從0開始 - 106:定義空白表單、詞彙計數器的函數 (排除頻率低的詞彙)
- AI說書 - 從0開始 - 107:定義將沒看過的詞彙轉為 'unk' 的函數
- AI說書 - 從0開始 - 108:匯集所有函數並製造出可以直接拿來訓練的資料集
法語數據集的每一行都是需要翻譯的句子,英語數據集的每一行都是機器翻譯模型的參考翻譯,機器翻譯模型必須生成一個英語候選翻譯,以匹配這個參考翻譯,BLEU 提供了一種方法來評估機器翻譯模型生成的候選翻譯。
Papineni 等人於 2002 年設計了一種有效的方法來評估人工翻譯,人工基準很難定義,然而,他們意識到,如果我們將人工翻譯與機器翻譯逐字比較,可以獲得有效的結果,Papineni 稱其方法為:Bilingual Evaluation Understudy Score (BLEU),我們想用 Natural Language Toolkit (NLTK) 來實作 BLEU,詳見:
http://www.nltk.org/api/nltk.translate.html#nltk.translate.bleu_score.sentence_bleu
BLEU 方法將部分候選句子與一個或多個參考句子進行比較,以下先載入必要的依賴庫:
from nltk.translate.bleu_score import sentence_bleu
from nltk.translate.bleu_score import SmoothingFunction


















