---
title: "序數特徵（Ordinal Feature）"
slug: ordinal-feature
language: zh-TW
source: https://aiterms.tw/learning/what-is-ordinal-feature
updated_at: 2026-07-04
tags: [特徵工程, 資料處理, 機器學習, 模型訓練, source:ipas]
ipas_term: true
type: deep-dive
---

# 序數特徵 是什麼？

> 一種具有明確順序或等級關係，但數值間距不一定均等的類別型資料。

## 核心概念
序數特徵（Ordinal Feature），又稱順序特徵，是資料科學和機器學習中一種重要的資料類型。它指的是那些具有明確的順序或等級關係，但這些等級之間的數值間距或差異不一定具有等距意義的類別型資料。換句話說，我們可以對序數特徵的值進行排序，判斷哪個值「大於」或「優於」另一個值，但我們不能說兩個值之間的「距離」是固定的或有意義的。例如，教育程度可以分為「小學、中學、大學、碩士、博士」，這是一個明確的順序，博士學歷高於碩士。然而，我們不能說「大學」和「碩士」之間的「學歷差距」與「小學」和「中學」之間的差距是等價的數值。這與名目特徵（Nominal Feature）不同，名目特徵只有類別區分而無順序（如顏色：紅、綠、藍）。也與區間特徵（Interval Feature）和比例特徵（Ratio Feature）不同，後兩者不僅有順序，其數值間距和比例也具有數學意義（如溫度、身高）。理解序數特徵的特性對於在機器學習模型中正確處理它們至關重要，因為錯誤的處理方式可能導致模型性能下降或解釋性偏差。

## 運作原理
處理序數特徵的關鍵在於如何在保留其內在順序性的同時，將其轉換為機器學習模型可以理解的數值格式。以下是幾種常見的處理方法：
1.  **標籤編碼（Label Encoding）**：這是最簡單的方法，將每個序數類別映射到一個整數。例如，「小學」=1，「中學」=2，「大學」=3，依此類推。這種方法的優點是簡單且不增加特徵維度。然而，它會賦予這些整數值一種數值上的大小關係，如果模型是基於距離或梯度下降的（如線性迴歸、支援向量機、神經網路），它可能會錯誤地將「3-2」的差異等同於「2-1」的差異，即使在原始序數意義上這是不成立的。這可能導致模型學習到錯誤的權重或關係。
2.  **自定義映射（Custom Mapping）**：如果標籤編碼的數值間距問題令人擔憂，可以手動為每個序數類別分配一個具有意義的數值。例如，對於滿意度「非常不滿意、不滿意、一般、滿意、非常滿意」，可以分別映射為 1, 2, 3, 4, 5。這種方法需要領域知識來確定合適的數值，但它能更好地反映真實的順序和可能的間距。
3.  **獨熱編碼（One-Hot Encoding）**：將每個序數類別轉換為一個二元（0/1）特徵。例如，對於教育程度，會創建「is_primary_school」、「is_middle_school」等新特徵。這種方法避免了標籤編碼引入的錯誤數值關係，但它會丟失原始特徵的順序信息，並且會顯著增加特徵維度，可能導致「維度災難」，尤其是在類別數量很多時。對於序數特徵，獨熱編碼通常不是最佳選擇，因為它未能利用其順序信息。
4.  **目標編碼（Target Encoding）/ 均值編碼（Mean Encoding）**：這種方法用目標變數的平均值（或其他統計量）來替換類別值。例如，將「小學」替換為所有小學學歷用戶的平均收入。這種方法可以捕捉類別與目標之間的關係，但存在目標洩漏的風險，尤其是在訓練集和測試集劃分不當或交叉驗證處理不當時。
5.  **WOE (Weight of Evidence) 編碼**：常用於信用評分模型，它將每個類別替換為其與目標變數（通常是二元分類）的對數機率比。這是一種更複雜的編碼方式，能有效捕捉類別的預測能力。
6.  **樹模型（Tree-based Models）**：決策樹、隨機森林、梯度提升樹等模型對序數特徵的處理方式有所不同。它們在分裂節點時，會尋找最佳的閾值來劃分類別，並能自然地處理序數關係，即使是標籤編碼的序數特徵，樹模型也能較好地利用其順序信息，因為它們不是基於距離或線性組合來運作的。

## 實際應用
序數特徵在許多實際應用中都非常常見：
*   **問卷調查與評分系統**：例如，李克特量表（Likert scale）中的「非常同意、同意、中立、不同意、非常不同意」，或產品滿意度評級「1星到5星」。這些都是典型的序數特徵，具有明確的順序。
*   **教育與社會經濟數據**：教育程度（小學、中學、大學、碩士、博士）、收入等級（低、中、高）、社會經濟地位分類等。
*   **醫療與健康數據**：疾病嚴重程度（輕度、中度、重度）、疼痛等級（輕微、中等、劇烈）、體能狀況（差、一般、好）。
*   **產品與服務評級**：電影評級（G、PG、PG-13、R、NC-17）、餐廳衛生評級（A、B、C）、產品尺寸（S、M、L、XL）。
*   **天氣預報**：風力等級（微風、和風、強風）、降雨強度（小雨、中雨、大雨）。
*   **推薦系統**：用戶對物品的偏好等級。

## 常見誤區
處理序數特徵時，如果不理解其特性，容易陷入以下誤區：
1.  **將序數特徵視為名目特徵**：如果對序數特徵進行獨熱編碼，雖然避免了錯誤的數值關係，但卻丟失了其內在的順序信息，這可能導致模型需要更多的數據來學習這些關係，或者根本無法有效利用這些信息。
2.  **將序數特徵視為數值特徵**：直接對序數特徵進行標籤編碼，並將其輸入到對數值間距敏感的模型（如線性模型、K近鄰、神經網路）中，會導致模型錯誤地假設這些數值間距是等距且有意義的。例如，將「小學=1，中學=2，大學=3」直接用於線性迴歸，模型會認為「小學到中學」的影響與「中學到大學」的影響是相同的，這通常是不準確的。
3.  **忽略領域知識**：在沒有足夠領域知識的情況下，盲目選擇編碼方式。例如，在某些情況下，序數特徵的等級間距可能確實有近似的等距意義（如某些評分量表），此時標籤編碼可能表現不錯。但在其他情況下，間距完全不具意義，則需要更謹慎的處理。
4.  **不處理缺失值**：序數特徵的缺失值處理也很重要。簡單地填充眾數或中位數可能不總是最佳選擇，有時需要更複雜的估計方法或將缺失值視為一個單獨的類別。
5.  **在特徵縮放時的影響**：如果對標籤編碼後的序數特徵進行標準化或正規化，可能會進一步扭曲其原始的順序關係，尤其是在與其他數值特徵一起縮放時。

## 與相關技術的比較
序數特徵的處理與其他資料類型和特徵工程技術密切相關：
*   **名目特徵（Nominal Feature）**：名目特徵只有類別區分，沒有順序關係。例如，顏色、國家、性別。處理名目特徵時，獨熱編碼是常見且安全的選擇，因為它不會引入任何虛假的順序。而序數特徵則需要保留其順序信息，因此獨熱編碼通常不是最優解。
*   **區間特徵（Interval Feature）與比例特徵（Ratio Feature）**：這兩類特徵是數值型的，不僅有順序，而且數值間距（區間特徵）或比例（比例特徵）具有數學意義。例如，溫度（區間）和身高（比例）。它們可以直接用於大多數機器學習模型，並可以進行加減乘除等數學運算。序數特徵則不能直接進行這些運算，其數值轉換需要謹慎。
*   **特徵工程（Feature Engineering）**：序數特徵的編碼是特徵工程的一個重要環節。好的特徵工程能夠將原始數據轉換為模型更容易學習的格式。對於序數特徵，選擇正確的編碼策略是特徵工程的關鍵一步。
*   **特徵縮放（Feature Scaling）**：對於經過標籤編碼的序數特徵，如果將其視為數值特徵並進行縮放（如標準化、歸一化），可能會影響模型對其權重的學習。通常，樹模型對特徵縮放不敏感，而線性模型和神經網路則對其敏感。
*   **模型選擇（Model Selection）**：不同的機器學習模型對序數特徵的處理能力不同。樹模型通常能更好地處理標籤編碼的序數特徵，因為它們通過閾值分裂來利用順序信息。而線性模型或基於距離的模型則需要更精細的編碼（如自定義映射）來避免引入錯誤的數值關係。

## iPAS 考試出題分析

屬於未分類考範圍。

## 常見問題

### 序數特徵應如何編碼以用於機器學習模型？

序數特徵的編碼方式應保留其順序性。最常見且推薦的方法是**標籤編碼（Label Encoding）**，將有序類別映射到整數，如「低=1, 中=2, 高=3」。這對於樹模型（如決策樹、隨機森林）通常效果良好，因為它們能基於閾值進行分裂。對於線性模型或基於距離的模型（如SVM、K-NN、神經網路），直接的標籤編碼可能引入錯誤的數值間距假設，此時可考慮**自定義映射**，賦予更合理的數值，或將其視為名目特徵進行獨熱編碼，但會丟失順序信息並增加維度。選擇最佳方法需考量模型類型與領域知識。

### 序數特徵與名目特徵有何不同？

序數特徵與名目特徵的主要區別在於其值的**順序關係**。名目特徵（Nominal Feature）僅用於區分不同的類別，這些類別之間沒有內在的順序或等級，例如顏色（紅、綠、藍）、國家（美國、日本、德國）。我們不能說紅色比綠色「更好」或「更大」。而序數特徵（Ordinal Feature）的類別之間則存在明確的順序或等級關係，例如教育程度（小學、中學、大學），我們可以說大學學歷高於中學。儘管有順序，但序數特徵的數值間距不一定有意義。

### 樹模型處理序數特徵的方式與線性模型有何不同？

是的，樹模型（如決策樹、隨機森林、梯度提升樹）處理序數特徵的方式與線性模型顯著不同。當序數特徵被標籤編碼為數值時，樹模型在分裂節點時會尋找最佳的閾值來劃分數據，它們能自然地利用這些數值之間的順序關係，而不會假設數值間距是等距的。例如，對於「低、中、高」編碼為1, 2, 3，樹模型可以基於「特徵值 <= 2」來分裂。相反，線性模型會將這些數值視為連續的，並假設它們之間的間距是等距且有意義的，這可能導致不準確的權重學習。因此，樹模型對標籤編碼的序數特徵通常更具魯棒性。

---

深度解說頁：https://aiterms.tw/learning/what-is-ordinal-feature
快查頁：https://aiterms.tw/terms/ordinal-feature
最後更新：2026/07/04