🚀 基於mT5-small的土耳其語摘要系統
本項目基於 Google的多語言T5-small 模型,使用Pytorch Lightning⚡ 在 MLSUM土耳其新聞數據集 上進行微調,以完成 摘要生成 這一下游任務。
mT5小模型擁有3億個參數,模型大小約為1.2GB,因此微調該模型需要花費大量時間。本模型訓練了10個輪次,批次大小為8,學習率為10e - 4,訓練耗時近4小時。新聞的最大長度設置為784,摘要的最大長度設置為64。
⚠️ 重要提示
mT5僅在 mC4 上進行了預訓練,未進行任何有監督訓練。因此,在將mT5模型用於下游任務之前,必須對其進行微調。
📦 安裝指南
文檔未提供安裝步驟,故跳過此章節。
✨ 主要特性
- 模型基礎:基於Google的多語言mT5-small模型,具有強大的多語言處理能力。
- 微調訓練:在MLSUM土耳其新聞數據集上進行微調,適用於土耳其語新聞的摘要生成任務。
📚 詳細文檔
數據集
MLSUM數據集包含超過25萬條土耳其語新聞及其相關摘要。由於mT5模型規模和詞彙量較大,本項目使用2萬條數據進行訓練,4千條數據進行驗證。有關該數據集的更多信息,請閱讀這篇 優秀論文。
模型訓練
- 參數設置:模型訓練了10個輪次,批次大小為8,學習率為10e - 4。
- 耗時情況:訓練耗時近4小時。
- 長度限制:新聞的最大長度設置為784,摘要的最大長度設置為64。
💻 使用示例
基礎用法
from transformers import AutoTokenizer, AutoModelForSeq2SeqLM
tokenizer = AutoTokenizer.from_pretrained("ozcangundes/mt5-small-turkish-summarization")
model = AutoModelForSeq2SeqLM.from_pretrained("ozcangundes/mt5-small-turkish-summarization")
def generate_summary(main_news):
source_encoding=tokenizer(
main_news,
max_length=784,
padding="max_length",
truncation=True,
return_attention_mask=True,
add_special_tokens=True,
return_tensors="pt")
generated_ids=model.generate(
input_ids=source_encoding["input_ids"],
attention_mask=source_encoding["attention_mask"],
num_beams=2,
max_length=120,
repetition_penalty=2.5,
length_penalty=2.0,
early_stopping=True,
use_cache=True
)
preds=[tokenizer.decode(gen_id, skip_special_tokens=True, clean_up_tokenization_spaces=True)
for gen_id in generated_ids]
return "".join(preds)
示例 1
main_news= "Final etabının üçüncü karşılaşması 29 Nisan Pazartesi günü saat 18.00 ’ de Burhan Felek Voleybol Salonu ’ nda oynanacak . Sezonu FIVB Kulüpler Dünya Şampiyonluğu ile açan ve CEV Avrupa Şampiyonlar Ligi'ni üçüncü olarak tamamlayan VakıfBank Kadın Voleybol Takımı , Vestel Venus Sultanlar Ligi final serisi ikinci maçında Eczacıbaşı VitrA'yı VakıfBank Spor Sarayı'nda 16-25 , 25-10 , 25-18 ve 25-17'lik setlerle 3-1 mağlup ederek seride durumu 1-1 ' e getirdi . İlk setini 25-16 kaybettiği karşılaşmanın ikinci setinde etkili servisler kullanan sarı-siyahlılar , teknik molasına 12-5 önde girdiği seti 25-10 almayı başardı . Etkili servis performansını üçüncü sette de sürdüren VakıfBank , teknik molasına 12-5 önde girdiği seti 25-18 alarak , karşılaşmada 2-1 öne geçti . Dördüncü sette rakibinin geri dönüşüne izin vermeyen VakıfBank , seti 25-17 , maçı da 3-1 kazanarak seride durumu eşitledi."
generate_summary(main_news)
示例 2
main_news="2023'te yerli tank motoru : Bir taraftan da tankın motorunu yerlileştirmeye çalıştıklarını ifade eden Öztürk , şu değerlendirmelerde bulundu : `` Bin 500 beygirlik , şanzımanıyla beraber motoru yerlileştirmeye çalışıyoruz . Bu da bir aksilik çıkmazsa ilk tankımızın üzerine 2023'te koyacağız . Bundan sonra hiçbir ülkeye bağımlılığımız kalmadan bu araçları üretmeye devam edeceğiz . Sorumluluğumuzun ağır olduğunu biliyoruz . Ülkemize hizmet etmeye çalışıyoruz . Bunu daha da ileriye götürmek için elimizden gelen çabayı sarf ediyoruz . Ama bu tek başınıza yapılan bir operasyon değil . Türkiye'deki yerli firmalarla beraber ortaklaşa bu işi yürütmeye çalışıyoruz."
generate_summary(main_news)
🔧 技術細節
文檔未提供足夠的技術實現細節,故跳過此章節。
📄 許可證
本項目採用MIT許可證。
Created by Özcan Gündeş ✌️
Twitter:
Linkedin:
Medium:
Github: 