航跡預測 • 歷史行為表 • 意外入區 • 台灣海纜
Trajectory Prediction • Pattern of Life • Unexpected Entries • Taiwan's Cables
本站的威脅評分只有在船「已經」停在海纜旁之後才看得到。海纜接近預警要提前:用 2026 年 7–10 月的 AIS 歸檔, 統計每個海域、航速、航向、與海纜距離下,船在 6/12/24 小時內低速進入海纜 5 公里範圍的歷史比例(歷史行為表)。 測試期非漁船 12 小時預警的 AUC 為 0.84,前 1% 警示的精確度 23.5%,約為基準率的 25 倍。 另以「意外入區」異常分數,挑出入區前看起來最不像會來的接近。目前為 shadow 模式,尚未計入評分。
The site's threat scoring only sees a ship once it is already sitting next to a cable. The cable approach early warning aims to see it coming: from AIS archived July–October 2026, it tabulates how often ships in a given area, speed, heading and distance band went on to appear slow within 5 km of a submarine cable within 6, 12 or 24 hours (a pattern-of-life table). On the held-out test period, non-fishing 12-hour warnings reach an AUC of 0.84 and 23.5% precision in the top 1% — about 25× the base rate. An "unexpected entry" anomaly score highlights approaches that looked least likely beforehand. It currently runs in shadow mode and does not feed the score.
本站的威脅評分會檢查船是否曾在海纜 5 公里內出現、是否以低於 5 節的速度徘徊超過 3 小時。這些都是事後指標:要等船真的在海纜旁停下來,評分才會反應。
海纜接近預警把同一個事件往前推:現在還在海纜 5 公里外、在海上、不在港內的船,未來 6、12、24 小時內會不會出現「海纜 5 公里內、航速 <5 節、不在港內」的定位?事件定義刻意與評分完全一致,預警說會來的,就是評分之後會看到的。
基準率很低:任選一個商船定位,24 小時內低速進到海纜旁的機會只有 2%。而且入區的商船多半是從遠處來的,入區前的距離中位數 16 公里、有一成超過 78 公里——「現在離海纜多近」本身並不足以判斷。
The site's threat scoring checks whether a ship has been within 5 km of a cable and whether it loitered there below 5 knots for more than 3 hours. These are after-the-fact indicators: the score only reacts once the ship has actually stopped next to the cable.
The cable approach warning moves the same event forward in time: for a ship that is currently at sea, more than 5 km from any cable and not in port, will it report a position "within 5 km of a cable, below 5 knots, not in port" in the next 6, 12 or 24 hours? The event definition is deliberately identical to the scoring, so what the warning says is coming is exactly what the score will later see.
The base rate is low: pick any merchant-ship position and the chance it appears slow beside a cable within 24 hours is just 2%. And merchant ships that do enter mostly come from far away — a median 16 km before entry, one in ten more than 78 km — so "how close is it right now" is not enough on its own.
直覺的做法是把船的航跡直線外插,看它會不會穿過海纜。實測這反而比只看現在距離還差——船在海纜旁做的事是減速、轉向進港、下錨候泊,不是直線前進。真正有用的訊號是「這片海、這種速度、這個方向的船,過去通常會不會來」。
於是模型是一張由歸檔資料計數出來的機率表:
訓練、選門檻、測試按時間切開(前 70% 擬表、接下來 15% 選警示門檻、最後 15% 報成績),另有一成船隻整條留給測試,避免「記住同一艘船」。
| 方法 | AUC | 前 1% 警示精確度 | 前 1% 召回 |
|---|---|---|---|
| B0 只看現在與海纜的距離 | 0.74 | 2.8% | 3.1% |
| B1 運動模型外插路徑的最近距離 | 0.71 | 2.5% | 2.7% |
| M1 歷史行為表 | 0.84 | 22.8% | 24.7% |
同期商船 12 小時基準率 0.92%。前 1% 警示精確度 22.8% ≈ 基準率的 25 倍。
The intuitive approach is to extrapolate each ship's track in a straight line and see whether it crosses a cable. In testing this did worse than looking at the current distance alone — what ships do near cables is slow down, turn into port and wait at anchor, not sail straight on. The useful signal is "do ships in this patch of sea, at this speed, on this heading, usually end up here?"
So the model is a probability table counted from the archive:
Fitting, threshold selection and testing are split in time (first 70% fits the table, next 15% picks the alert threshold, last 15% is reported), and one in ten vessels is held out entirely for testing so the model cannot simply memorise a ship.
| Method | AUC | Top-1% precision | Top-1% recall |
|---|---|---|---|
| B0 current distance to cable only | 0.74 | 2.8% | 3.1% |
| B1 closest approach of the extrapolated path | 0.71 | 2.5% | 2.7% |
| M1 pattern-of-life table | 0.84 | 22.8% | 24.7% |
Merchant 12-hour base rate in the same period: 0.92%. Top-1% precision of 22.8% ≈ 25× the base rate.
正式模型先套用與威脅評分相同的排除規則(漁網信標、無效 MMSI、台灣船籍不列入),再在測試期評估:
| 非漁船 | 基準率 | AUC | 前 1% 精確度/召回 |
|---|---|---|---|
| 6 小時 | 0.52% | 0.89 | 18.1% / 34.6% |
| 12 小時 | 0.96% | 0.84 | 23.5% / 24.4% |
| 24 小時 | 1.43% | 0.81 | 26.6% / 18.6% |
實際上線的警示門檻是在驗證期選的「非漁船精確度 ≥20% 的最低門檻」,即 12 小時入區機率 ≥ 0.12。測試期在這個門檻下:精確度 18.4%、召回 33.9%——每 5 則警示約 1 則真的在 12 小時內低速入區,並抓到三分之一的入區事件。
漁船的 AUC 更高(約 0.91),但基準率高、數量大,若全部列出每輪會有上百艘。因此漁船只有在威脅評分已達 high/critical 時才進入預警清單。
The production model first applies the same exclusion rules as the threat score (fishing-net beacons, invalid MMSIs and Taiwan-flagged vessels are left out), then is evaluated on the test period:
| Non-fishing | Base rate | AUC | Top-1% precision / recall |
|---|---|---|---|
| 6 hours | 0.52% | 0.89 | 18.1% / 34.6% |
| 12 hours | 0.96% | 0.84 | 23.5% / 24.4% |
| 24 hours | 1.43% | 0.81 | 26.6% / 18.6% |
The alert threshold actually in use was chosen on the validation period as "the lowest threshold with non-fishing precision ≥ 20%": a 12-hour entry probability ≥ 0.12. On the test period at that threshold, precision is 18.4% and recall 33.9% — roughly one alert in five really does enter slow within 12 hours, and a third of all entries are caught.
Fishing vessels score an even higher AUC (about 0.91), but their base rate is high and their numbers large; listing them all would produce hundreds per run. Fishing vessels therefore join the warning list only when the threat score already rates them high or critical.
把歷史上商船低速入區最密集的網格列出來,幾乎全是海纜登陸點旁、船舶等候進港的水域:
這代表預警清單本身一定會含大量例行候泊船:船在等泊位,剛好就在海纜旁。預警只回答「會不會靠近」,不回答「靠近是否可疑」。因此每則預警都附上該船的威脅評分與風險等級,並另外計算下一節的「意外入區」分數,把例行與不尋常的接近分開。
List the grid cells where merchant ships most often entered slow in the archive, and nearly all are waters beside cable landings where ships wait to enter port:
This means the warning list will always contain many routine waiting ships: ships waiting for a berth happen to wait next to cables. The warning only answers "will it come close", not "is the approach suspicious". Every warning therefore carries the ship's threat score and risk level, and the "unexpected entry" score in the next section separates routine approaches from unusual ones.
「意外入區」看的是已經發生的接近:目前已在海纜 5 公里內低速、而 3 到 12 小時前還在區外(且不在港內)的船。回到它還在區外的那一刻,查模型當時給它的入區機率(prior_p)。機率越低,代表以這片海、這種速度與航向的歷史來看,那次接近越不像例行候泊。
一直待在區內的船不算「剛進來」,所以長期錨泊不會反覆觸發。
測試期 prior_p 最低的案例有兩類:
The "unexpected entry" score looks at approaches that have already happened: ships that are now slow within 5 km of a cable but were outside the zone (and not in port) 3 to 12 hours earlier. Going back to the moment the ship was still outside, it looks up the entry probability the model gave it then (prior_p). The lower the probability, the less the approach resembles routine waiting, judged by the history of that patch of sea, that speed and that heading.
A ship that has stayed inside the zone throughout is not a "fresh entry", so long-term anchoring does not trigger repeatedly.
The lowest prior_p cases in the test period fall into two groups:
預警每次 AIS 更新後重新計算,輸出到 cable_warnings.json(最多 100 則預警、50 則意外入區)。最新定位比快照舊超過 3 小時的船不評。
2026-10-24 的試跑:評估 1,092 艘船,發出 17 則預警。集中在澎湖外待命的權宜船籍油輪,以及金門、馬祖外的低速貨船——正是 2023 年台馬海纜、2025 年台澎海纜斷線的海域。其中有船隻同時被威脅評分列為 critical,也有大量只是例行候泊;這正是預警必須和評分、意外入區分數一起看的原因。
正式上線後的一輪(2026-10-24 23:47 UTC):評分 1,600 艘、發出 21 則預警、53 艘已在海纜旁低速、3 件意外入區。觀察到三件事:
The warning is recomputed after every AIS update and written to cable_warnings.json (at most 100 warnings and 50 unexpected entries). Ships whose latest position is more than 3 hours older than the snapshot are not scored.
Trial run on 2026-10-24: 1,092 ships evaluated, 17 warnings issued. They cluster around flag-of-convenience tankers waiting off Penghu and slow cargo ships off Kinmen and Matsu — the very waters of the 2023 Taiwan–Matsu and 2025 Taiwan–Penghu cable breaks. Some of those ships are also rated critical by the threat score; many are simply waiting for a berth. That is exactly why the warning has to be read together with the score and the unexpected-entry score.
One production run after going live (2026-10-24 23:47 UTC): 1,600 ships scored, 21 warnings, 53 ships already slow beside a cable, 3 unexpected entries. Three observations:
海纜預警是航跡預測工作的第 2 階段。前兩個階段(基準模型、SAR 暗船比對的運動模型)留下幾個值得記錄的發現:
321 12V2、NETFISHING 7V7 這類漁網信標(無效 MMSI、名稱帶電壓)。預警與威脅評分必須共用同一套排除規則,否則兩邊對「船」的定義不一致。The cable warning is phase 2 of the site's trajectory-prediction work. The earlier phases (baseline models and a motion model for SAR dark-vessel matching) produced several findings worth recording:
321 12V2 and NETFISHING 7V7 (invalid MMSIs, voltage in the name). The warning and the threat score must share one set of exclusion rules, or the two disagree on what counts as a ship.本頁為研究與教育用途,彙整公開資料,依 MIT 授權釋出。引用時請註明出處並一併說明上述限制。
This page is for research and education, aggregating public data under the MIT License. When citing, please attribute the source and note the limitations above.
本頁的背景與資料可對照以下公開來源核實:
本頁為研究與教育用途;預警訊號為待查線索,非法律或事實認定。詳見 方法論。
The background and data on this page can be checked against these public sources:
This page is for research and education; warning signals are leads to investigate, not legal or factual findings. See the methodology.