---
title: "連體神經網路（Siamese Network）"
slug: siamese-network
language: zh-TW
source: https://aiterms.tw/terms/siamese-network
updated_at: 2026-04-29
tags: [深度學習, 神經網路, 電腦視覺, 模型訓練, 特徵工程, 模型評估, AI應用]
ipas_term: false
---

# 連體神經網路（Siamese Network）

> **你有沒有在你要判斷兩句話是不是同一句意思，或兩張照片是不是同一個人，發現只看表面常常不夠？**
>
> 你可以把它想成兩條共用權重的神經網路，分別看兩個輸入，再比較它們有多像。
>
> 很多任務不是要直接分到類別，而是要先量相似度，連體網路很適合做這件事。

### 容易混淆
> **傳統分類模型**
> 傳統分類模型像個單一的鑑定專家，負責辨識「這是誰？」。
> 連體神經網路則像個比較專家，它不是直接分類，而是判斷「這兩個人有多像？」或「這兩張照片是不是同一個人？」，更專注於關係比較。
>
> 最關鍵的區別：先看它是在比意思、比結構，還是在做任務輸出。

### 記住這句就好
> 兩邊一起學、最後比相似度，就是連體神經網路。

### 實際案例
> 重複問句檢測要判斷「怎麼退貨」和「退貨流程是什麼」是不是同一類問題。
> 人臉驗證要比對兩張臉是否屬於同一個人，而不是直接分到某個固定類別。

### 算法與應用
> 兩個分支通常共享參數，先把輸入編成 embedding，再用距離或相似度判斷。
> 訓練時常搭配 contrastive loss 或 triplet loss。

### 情境判斷
> **Q1（直覺題）：** 如果你只有成對資料，沒有很多固定類別標籤，這種架構有幫助嗎？
>
> → 有。它本來就很適合做成對比較，而不是硬做多分類。
>
> **Q2（判斷題）：** 如果你要分辨「這是貓、那是狗」，還需要它嗎？
>
> → 不一定。看情況，直接分類模型會更簡單。

### 常見問題
> **Q：連體神經網路與傳統神經網路有何不同？**
> 連體神經網路與傳統神經網路的主要區別在於其架構和訓練方式。連體神經網路包含兩個或多個共享權重的相同神經網路，而傳統神經網路通常只包含一個神經網路。連體神經網路的訓練目標是學習一個嵌入空間，而傳統神經網路的訓練目標是預測一個輸出。
>
> **Q：如何選擇連體神經網路的損失函數？**
> 選擇連體神經網路的損失函數取決於具體的應用場景。常用的損失函數包括對比損失、三元組損失和交叉熵損失。對比損失適用於二元分類問題，三元組損失適用於排序問題，交叉熵損失適用於多類分類問題。需要根據任務特性選擇最適合的損失函數。
>
> **Q：連體神經網路的嵌入向量維度應該如何選擇？**
> 嵌入向量的維度是一個超參數，需要根據具體的應用場景進行調整。較高的維度可以提供更豐富的特徵表示，但也可能增加計算複雜度。較低的維度可以降低計算複雜度，但也可能損失一些信息。通常，可以通過實驗來找到最佳的嵌入向量維度。

### 相關術語
> - **對比學習**：Siamese Network 很常和它一起出現在相似度學習。
> - **嵌入表示**：語意搜尋和許多 NLP 任務都靠它把文字變成可比對的向量。
> - **損失函數**：距離學習和分類學習都離不開它。
> - **單樣本學習**：連體網路很常用在樣本很少的辨識場景。

---

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