---
title: "位置編碼（Positional Encoding）"
slug: positional-encoding
language: zh-TW
source: https://aiterms.tw/terms/positional-encoding
updated_at: 2026-04-29
tags: [深度學習, 自然語言處理, 神經網路, 模型訓練, AI基礎]
ipas_term: false
---

# 位置編碼（Positional Encoding）

> **你有沒有想過，Transformer 明明很強，卻還要另外告訴它句子順序？**
>
> 你可以把 位置編碼 想成 把順序資訊塞回向量裡。
>
> Transformer 不看位置就會把字看亂，把順序資訊塞回向量，模型才知道誰先誰後 這件事就特別重要。
>
> 你可以把它想成一個把抽象概念拉回日常判斷的提示，先知道它解決什麼問題，再看技術細節。

### 容易混淆
> **位置編碼 vs 詞嵌入**
>
> 詞嵌入像給每個字一個「意義標籤」，讓模型理解字的含義；位置編碼是給字一個「位置標籤」，讓模型理解字在句子中的順序關係。
>
> 最關鍵的區別：一個補順序，一個補語意。
>
>
> **位置編碼 vs 詞嵌入**
>
> 位置編碼管順序，詞嵌入管詞本身的語意
>
> 最關鍵的區別：一個告訴它先後，一個告訴它意思。

### 記住這句就好
> 把順序資訊塞回向量，模型才知道誰先誰後

### 實際案例
> **案例 1：翻譯模型靠位置編碼分辨前後文順序**
>
> 這種情況下，位置編碼 會幫你把原本手工或靠直覺的步驟變得更穩。
>
>
> **案例 2：長句摘要時，讓模型知道詞在句中的位置**
>
> 另一個常見場景也能看出 位置編碼 的價值，因為它處理的是同一種核心問題。

### 算法與應用
> 核心意思就是：把順序資訊塞回向量，模型才知道誰先誰後。
>
> 可以用固定的正弦餘弦，也可以用可學習的位置向量
>
> 沒有位置資訊時，自注意力很難分辨誰先誰後

### 情境判斷
> **Q1（直覺題）：** 翻譯模型靠位置編碼分辨前後文順序 這種情況，會先想到 位置編碼 嗎？
>
> → 會，因為它正好在處理這件事的核心問題，只是還要看資料乾不乾淨、流程穩不穩。
>
>
> **Q2（判斷題）：** 句子很短時，還需要位置編碼嗎？
>
> → 看情況，短句影響可能小，但模型架構通常還是會保留它

### 常見問題
> **Q：為什麼Transformer需要位置編碼？**
> Transformer模型基於自注意力機制，本身不具備感知序列順序的能力。
> 位置編碼的引入，使得模型能夠區分序列中不同位置的元素，從而更好地理解序列的結構和含義。
> 如果沒有位置編碼，模型會將所有位置的詞視為相同，無法捕捉序列的時序資訊。
>
> **Q：正弦餘弦位置編碼的優點是什麼？**
> 正弦餘弦位置編碼的主要優點是能夠產生相對位置資訊，並且可以泛化到更長的序列。
> 對於任意偏移量 k，PE(pos+k) 可以表示為 PE(pos) 的線性組合，這使得模型可以學習到位置之間的相對關係。
> 此外，正弦餘弦函數的週期性也有助於模型捕捉序列中的週期性模式。
>
> **Q：除了正弦餘弦編碼，還有其他位置編碼方法嗎？**
> 是的，除了正弦餘弦編碼，還有學習式位置編碼和整數編碼等方法。
> 學習式位置編碼將位置編碼視為可學習的參數，通過訓練數據學習得到。
> 整數編碼直接使用位置的整數值作為編碼。
> 不同的方法有不同的優缺點，選擇哪種方法取決於具體的任務和數據集。

### 相關術語
> - **注意力機制**：看完這個再讀它，會更容易把概念串起來
> - **轉換器架構**：看完這個再讀它，會更容易把概念串起來
> - **嵌入表示**：看完這個再讀它，會更容易把概念串起來
> - **循環神經網路**：看完這個再讀它，會更容易把概念串起來
> - **語言模型**：看完這個再讀它，會更容易把概念串起來

---

來源：https://aiterms.tw/terms/positional-encoding
快查頁：https://aiterms.tw/terms/positional-encoding
最後更新：2026/04/29
深度解說：https://aiterms.tw/learning/what-is-positional-encoding