BERT模型,全稱為Bidirectional Encoder Representation from Transformers,是一個由Google於2018年提出的預訓練模型。它的主要特點是使用Transformer的Encoder部分,實現了雙向的語言表示學習。BERT模型通過兩種預訓練任務來捕捉語言特徵,分別是Masked Language Model(MLM)和Next Sentence Prediction(NSP)。
在結構上,BERT是一個多層雙向的Transformer Encoder,與之前的單向模型如OpenAI GPT不同,BERT能夠同時考慮詞語的左右上下文,從而學習到更豐富的語言表示。這種雙向性使得BERT在處理下游任務時,能夠更好地理解句子中詞語的雙向聯繫。
BERT模型的預訓練過程分為兩個階段:第一階段是Pre-training,模型在大量無標籤數據上進行語言模型的訓練;第二階段是Fine-tuning,即針對不同的下游任務,對預訓練模型進行微調,通常只需要在模型的頂部添加一個輸出層即可。這種兩階段的訓練方式使得BERT可以套用於多種NLP任務,且效果顯著。
在輸入表示方面,BERT模型將每個token的輸入表示定義為三個Embedding向量的和,包括Token Embedding(詞本身)、Position Embedding(位置信息)和Segment Embedding(區分不同句子)。這些輸入表示被用於Transformer Encoder中,以學習到輸入序列的特徵表示。