自然語言處理 (NLP) 中使用的神經網路建立在一些基礎的概念之上。理解這些基礎知識對於深入學習更複雜的 NLP 模型(如 RNN、LSTM、Transformer 等)至關重要。以下是 NLP 中一些關鍵的神經網路基礎知識:
- 感知器 (Perceptron) 和基礎前饋神經網路 (Basic Feedforward Neural Networks):
- 感知器: 是最簡單的神經網路單元,它接收多個輸入,對它們進行加權求和,然後通過一個激活函數輸出一個結果。 前饋神經網路: 由多個感知器或層組成,信息從輸入層單向地流向輸出層,沒有反饋迴路。在 NLP 中,簡單的前饋網路可以用於基本的文本分類任務。
- 激活函數 (Activation Functions):
- 激活函數引入了非線性,使得神經網路能夠學習複雜的模式。常見的激活函數包括: ReLU (Rectified Linear Unit): 對於正輸入返回該值,對於負輸入返回 0。在許多深度學習模型中常用。 Sigmoid: 將輸入壓縮到 0 和 1 之間,常用於二元分類的輸出層。 Tanh (Hyperbolic Tangent): 將輸入壓縮到 -1 和 1 之間。 Softmax: 將一個包含任意實數值的向量轉換為一個概率分布,常用於多類別分類的輸出層。
- 稠密層 (Dense Layer) / 全連接層 (Fully Connected Layer):
- 在稠密層中,每個神經元都與前一層的所有神經元和後一層的所有神經元相連接。這種層可以用於將輸入表示映射到輸出表示,並在 NLP 中用於文本分類、生成等任務的輸出層。
- 詞嵌入 (Word Embeddings):
- 這是 NLP 中非常核心的概念。詞嵌入將詞語表示成低維、連續的向量空間中的點。相似的詞語在嵌入空間中的距離更近。常用的詞嵌入方法包括: Word2Vec (Skip-gram 和 CBOW): 使用淺層神經網路模型學習詞語的嵌入。 GloVe (Global Vectors for Word Representation): 基於詞語共現矩陣進行學習。 FastText: 在 Word2Vec 的基礎上考慮了詞語的內部結構(例如詞根和詞綴)。 也可以使用更深層的神經網路模型(例如 Transformer)學習上下文相關的詞嵌入。
- 損失函數 (Loss Functions):
- 損失函數用於衡量模型的預測結果與真實標籤之間的差異。訓練的目標是最小化這個損失函數。在 NLP 分類任務中常用的損失函數包括: 交叉熵損失 (Cross-Entropy Loss) / 對數損失 (Log Loss): 用於衡量多類別或二元分類模型的性能。 二元交叉熵損失 (Binary Cross-Entropy Loss): 用於二元分類問題。 在 NLP 回歸任務中,可以使用均方誤差 (Mean Squared Error, MSE) 等損失函數。
- 優化器 (Optimizers):
- 優化器用於更新模型的權重,以最小化損失函數。常見的優化器包括: 隨機梯度下降 (Stochastic Gradient Descent, SGD) Adam (Adaptive Moment Estimation) RMSprop (Root Mean Square Propagation)
- 反向傳播 (Backpropagation) 和梯度下降 (Gradient Descent):
- 這是訓練神經網路的核心算法。 梯度下降: 是一種迭代優化算法,用於尋找使損失函數最小化的模型參數。它通過計算損失函數關於模型參數的梯度,並朝著梯度的反方向更新參數來實現。 反向傳播: 是一種高效計算神經網路中每個權重的梯度的方法。它從輸出層開始,向後計算每一層的梯度,利用鏈式法則將梯度傳播回前面的層。
- 卷積神經網路 (Convolutional Neural Networks, CNNs): 在 NLP 中用於提取局部特徵,例如 n-gram 特徵,常用於文本分類。
- 遞迴神經網路 (Recurrent Neural Networks, RNNs): 用於處理序列數據,能夠捕捉時間上的依賴關係。
- 長短期記憶網路 (Long Short-Term Memory, LSTM) 和門控循環單元 (Gated Recurrent Unit, GRU): 解決了傳統 RNN 的梯度消失問題,更擅長處理長序列。
- Transformer 網路: 完全基於注意力機制,能夠並行處理序列,並在捕捉長距離依賴方面表現出色。
這些更高級的架構都是建立在上述這些基礎的神經網路概念之上的。


















