推論 是什麼?
Inference:推論 的完整解釋
推論是指利用已訓練好的機器學習模型,對新的、未曾見過的資料進行預測或判斷的過程。是模型部署後的核心環節。
容易混淆
訓練 訓練是在調整參數,推論是在固定參數下做預測,兩個階段的目標完全不同。
推理 推理偏向思考和論證,推論在機器學習裡是模型對新資料做輸出。
記住這句就好
模型學完以後拿來算答案,這一步就是推論。
實際案例
垃圾信件過濾 使用者收到新信件時,系統立刻把郵件特徵丟進已訓練模型,判斷是不是垃圾信,這就是線上推論。
影像分類 API 相機拍到一張照片後,上傳到雲端服務,模型回傳「貓」或「狗」,整個過程是在做新資料判斷。
算法與應用
推論常被分成批次推論和即時推論。批次推論重吞吐量,像夜間一次處理大量訂單;即時推論重延遲,像聊天機器人要秒回。部署時常會一起看延遲、吞吐量、成本和準確率。
中英對照與容易混淆的詞
| 中文 | 英文 | 說明 |
|---|---|---|
| 推論 / 推理 | inference | 模型訓練完之後拿來預測的階段 |
| 訓練 | training | 調整模型參數的階段 |
| 推理能力 | reasoning | 模型多步思考、解決問題的能力 |
| 統計推論 | statistical inference | 統計學名詞,從樣本推母體 |
第三列是最常見的混淆。inference 講的是「執行模型」這個動作,reasoning 講的是「模型會不會思考」這個能力。中文都可能被翻成推理,但它們完全是兩回事,一個是工程階段,一個是模型能力。
台灣的教材與業界較常寫「推論」,中國大陸多寫「推理」,兩者指的是同一件事。
推論階段的三個成本指標
訓練是一次性的,推論是每一次請求都要付的錢,所以實際營運成本主要由推論決定。要看的指標有三個,而且它們常常互相衝突。
首字延遲(Time To First Token, TTFT)。 使用者送出請求到看到第一個字的時間。這一段主要是在處理輸入(prefill),跟提示長度成正比。對話體驗好不好,這個數字最關鍵。
每字延遲(Time Per Output Token, TPOT)。 之後每個字之間的間隔。這一段(decode)是記憶體頻寬受限的,不是算力受限,所以加大批次能明顯提升整體吞吐但不會讓單一使用者變快。
吞吐量(throughput)。 整台機器每秒能產出多少 token。它決定單位成本。
三者的取捨很現實:把批次開大,吞吐上升、單位成本下降,但每個人的延遲變差。所以線上服務通常會分流,即時對話走小批次低延遲的服務,批次處理走大批次高吞吐的服務。
常見的最佳化手段包括量化(降低權重精度)、KV 快取管理(PagedAttention)、連續批次(continuous batching)與推測解碼(speculative decoding)。
情境判斷
Q1(直覺題): 如果你現在遇到一個 垃圾信件過濾 的場景,這個概念會是第一個想到的工具嗎? → 看情況,但如果任務目標和這個概念的用途一致,就很可能是。核心還是先確認你要解決的是分類、分群、壓縮、檢索,還是最佳化。
Q2(判斷題): 如果你把它和 推理 一起用,結果反而變不穩,通常該怎麼想? → 看情況。先檢查資料分布、特徵定義和模型假設是否相容,很多時候不是概念本身有問題,而是使用條件不對,像距離尺度沒對齊、標註規則不一致,或輸入格式不合。
相關術語
常見問題
推論 最容易跟 訓練 混淆嗎?
訓練是在調整參數,推論是在固定參數下做預測,兩個階段的目標完全不同。
什麼情況會用到 推論?
你可以把它想成學生考試,把讀過的內容拿來回答新題目,重點是應用,不是再學一次。 實務上只要你要處理和這個概念相符的任務,就會用到它。
初學者最常錯在哪裡?
推理偏向思考和論證,推論在機器學習裡是模型對新資料做輸出。