iPAS 備考專區 登入

iPAS AI 應用規劃師 中級 科目二 大數據處理分析與應用・114 年第二次・L22・第 27 題

近似分位數技術的核心目的是什麼?

原題

某金融科技公司分析每日上億筆交易資料,以監控客戶轉帳金額分佈與異常波動。由於資料量極大,為兼顧效率與準確度,團隊決定採用「近似分位數(Approximate Quantile)」方法進行資料摘要統計。下列何者最能正確反映該技術的核心目的?

白話

一家金融科技公司每天要處理上億筆交易紀錄,需要監控轉帳金額的分布和異常。他們選擇用「近似分位數」這個方法做資料摘要。

問你:近似分位數技術的核心目的是什麼?

一句話總結

近似分位數(Approximate Quantile)的核心目的是:在可容忍的誤差範圍內,快速估算大規模資料的分位值,以支援即時或低延遲的分析需求。犧牲一點精確度,換取大幅提升的計算效率。

情境

先感受問題:一億筆資料要算中位數,精確版需要多少時間

豐盛金融科技的監控系統每天處理 1 億筆轉帳紀錄,需要每分鐘更新一次「轉帳金額分位數報告」(P10、P25、P50、P75、P90、P99),以便即時偵測異常波動。

工程師宗翰估算:精確計算分位數需要對全部 1 億筆資料排序,排序的時間複雜度是 O(n log n),1 億筆大約需要 15-30 秒。但監控要求「每分鐘更新」,計算一次就花了 30 秒,根本跑不過來。

而且資料是持續流入的:今天的 1 億筆中,最後一批可能在下午才進來。如果要等全部到齊再排序,「即時」監控就變成了「事後」監控。

舊方法

精確分位數在大規模即時場景下的五個限制

  1. 排序需要全資料到記憶體:精確分位數要把所有資料排序,1 億筆佔用幾 GB 的記憶體,超出單機可用記憶體,光是載入就是問題。
  2. 計算時間太長不支援即時:O(n log n) 排序對億級資料需要數十秒,無法滿足分鐘級甚至秒級的即時監控需求。
  3. 資料流無法等齊再算:串流資料(Streaming Data)持續流入,「等全部到了再排序」違背即時分析的本質,資料永遠不會「全部到齊」。
  4. 每次新資料進來需要重算:精確排序是靜態的,每新增一筆資料就要重新排序,計算成本隨資料量線性成長,工程上不可持續。
  5. 高精確度在監控場景的邊際效益有限:監控轉帳異常,知道「P99 大約在 50,000 元 ± 500 元」跟「精確是 49,873 元」在決策上沒有差別,過度追求精確是資源浪費。

新方法

近似分位數:用可接受的誤差換取即時計算能力

宗翰改用近似分位數算法(如 T-Digest 或 GK 算法),核心思路是:

  • 不儲存所有原始資料,只維護一個「摘要資料結構」(Sketch),記錄資料分布的輪廓
  • 每筆新資料進來時,只需要更新摘要結構,時間複雜度大幅降低
  • 查詢 P99 時,從摘要結構估算,誤差在預設的 ε(epsilon)範圍內(如 ±1%)
  • 支援串流資料:不需要儲存歷史原始資料,也不需要等資料到齊

效果:原本需要 30 秒的精確計算,近似版本在毫秒內完成,誤差小於 1%,對監控異常波動完全夠用。

這就是選項 D 講的:在可容忍誤差範圍內,快速估算分位值以支援即時分析。

錯選項

為什麼其他選項是錯的

A確保每個分位值的結果完全精確,即使計算時間較長

字面在說什麼

分位數計算要精確,時間長就長吧。

為什麼不對

這描述的是精確分位數(Exact Quantile),不是近似分位數。近似分位數的核心定義就是「接受誤差換取效率」,選項 A 說的是相反的目標。題目明確說「採用近似分位數方法」,問的是這個方法的目的,而不是在說最終要精確。

誰會選錯

覺得「分析就要精確」的人,以為精確是唯一目標,沒有意識到即時分析場景下「夠用的快速估算」才是正確的工程取捨。

B利用機器學習模型預測分位數位置,以減少統計計算量

字面在說什麼

用機器學習來預測分位數在哪裡,不用算那麼多。

為什麼不對

近似分位數算法(如 T-Digest、GK 算法、KLL Sketch)是基於數學統計的摘要算法,不是機器學習模型。機器學習模型需要訓練資料和特徵工程,用來預測「分位數在哪裡」本身就需要知道真實分位數,是個邏輯循環。近似分位數的核心是「資料摘要(Sketching)」,不是「預測」。

誰會選錯

覺得「機器學習萬能」、把 ML 套用到不適用場景的人。近似分位數是個有嚴格數學誤差保證的算法,不是靠模型預測。

C僅能對結構化資料進行批次處理,無法應用於即時資料流

字面在說什麼

近似分位數只能批次處理,沒辦法用在即時串流。

為什麼不對

這說的是近似分位數的反面。近似分位數最重要的應用場景之一就是串流資料(Streaming Data)的即時計算,正因為串流資料無法等全部到齊、無法全部存在記憶體裡,才需要近似分位數算法。T-Digest、GK 算法等都是為串流場景設計的,每筆資料來時只要更新摘要結構,可以連續不間斷地計算。

誰會選錯

把近似分位數誤解為某種「批次統計」工具的人,沒有意識到它的核心價值恰恰是支援串流即時計算。

變形題

同個考點下次怎麼變形

延伸

想再往下看,這 5 個

答案、題目或解析有問題?回報這題

出處:iPAS 經濟部產業人才能力鑑定 ・ 114 年第二梯次 iPAS AI 應用規劃師 中級 科目二 大數據處理分析與應用 第 27 題

看官方原文 PDF

原題 © 經濟部產業發展署,AITerms.tw 僅作教學解析使用,本站解析以 CC BY-NC-SA 4.0 授權。