🚀 漏斗變換器(Funnel Transformer)大型模型 (B8 - 8 - 8 帶解碼器)
Funnel Transformer是一個預訓練模型,它使用與 ELECTRA 類似的目標在英文語料上進行訓練。該模型在 這篇論文 中被提出,並首次在 這個倉庫 中發佈。此模型不區分大小寫:它對 "english" 和 "English" 一視同仁。
免責聲明:發佈 Funnel Transformer 的團隊並未為此模型撰寫模型卡片,本模型卡片由 Hugging Face 團隊撰寫。
🚀 快速開始
Funnel Transformer 是一個以自監督方式在大量英文數據語料庫上進行預訓練的變換器(Transformer)模型。這意味著它僅在原始文本上進行預訓練,沒有人工對其進行任何標註(這也是它可以使用大量公開可用數據的原因),並通過自動流程從這些文本中生成輸入和標籤。
更確切地說,一個小型語言模型會對輸入文本進行擾亂,並作為此模型的輸入生成器,預訓練的目標是預測哪個標記是原始標記,哪個是被替換的標記,有點類似於生成對抗網絡(GAN)的訓練。
通過這種方式,模型學習到英語語言的內部表示,然後可用於提取對下游任務有用的特徵:例如,如果您有一個帶標籤的句子數據集,您可以使用 BERT 模型生成的特徵作為輸入來訓練一個標準分類器。
✨ 主要特性
預期用途與侷限性
您可以使用原始模型來提取給定文本的向量表示,但它主要用於在下游任務上進行微調。請查看 模型中心 以查找針對您感興趣的任務進行微調的版本。
請注意,此模型主要旨在針對使用整個句子(可能經過掩碼處理)來做出決策的任務進行微調,例如序列分類、標記分類或問答任務。對於文本生成等任務,您應該考慮使用像 GPT2 這樣的模型。
如何使用
以下是如何在 PyTorch 中使用此模型來獲取給定文本的特徵:
from transformers import FunnelTokenizer, FunnelModel
tokenizer = FunnelTokenizer.from_pretrained("funnel-transformer/large")
model = FunneModel.from_pretrained("funnel-transformer/large")
text = "Replace me by any text you'd like."
encoded_input = tokenizer(text, return_tensors='pt')
output = model(**encoded_input)
在 TensorFlow 中的使用方式如下:
from transformers import FunnelTokenizer, TFFunnelModel
tokenizer = FunnelTokenizer.from_pretrained("funnel-transformer/large")
model = TFFunnelModel.from_pretrained("funnel-transformer/large")
text = "Replace me by any text you'd like."
encoded_input = tokenizer(text, return_tensors='tf')
output = model(encoded_input)
📚 詳細文檔
訓練數據
BERT 模型在以下數據集上進行了預訓練:
BibTeX 引用和引用信息
@misc{dai2020funneltransformer,
title={Funnel-Transformer: Filtering out Sequential Redundancy for Efficient Language Processing},
author={Zihang Dai and Guokun Lai and Yiming Yang and Quoc V. Le},
year={2020},
eprint={2006.03236},
archivePrefix={arXiv},
primaryClass={cs.LG}
}
📄 許可證
本項目採用 Apache-2.0 許可證。