Skip to content
Guides1 min read

一致性抓不出走過場式的蓋章

當標註者不讀就接受模型預標註時,標註者間一致性反而會上升。所有從標註本身算出的品質指標都會變好。時間是唯一剩下的訊號。

Potato Team

有一種失效模式,我們現有的每一項品質指標都會把它讀反。

一個模型為語料做了預標註。三位標註者來復核。其中兩位逐條閱讀建議並修正錯誤;第三位看都不看,全盤接受。

現在來算你的品質指標:

  • 標註者間一致性上升,因為第三位與模型完全吻合,而另外兩位接受下來的大部分內容也是如此。
  • 基準準確率會在模型判斷正確之處上升,而那是大多數情況。
  • 需要裁決的量會下降,因為可裁決的東西變少了。

每一塊看板都變好了。那位什麼活都沒幹的標註者,與那兩位幹了活的無從區分——而按一致性來看,他還像是最好的標註者,因為他從不引入個人化的修正。

為什麼這在 2026 年尤其成為問題

經機遇校正的一致性,是為獨立判斷設計的。正是這一假設讓機遇基線具有意義。

預標註打破了它。兩位都接受了同一條建議的標註者,並不是各自獨立地得出了相同答案;他們共享了同一個來源。這個係數仍然算得出來,但它的含義已不再是其解釋所說的那樣。

當預標註還只是偶爾的模型輔助建議時,這還是個小眾問題。如今一鍵自動標註已成為全行業的預設做法,而信度相關的文獻尚未跟上。

唯一顯出差別的地方

標註本身沒有任何東西能把走過場與認真複核區分開,因為在模型判斷正確的那些情形中,兩者產出的是逐位元組相同的輸出。這裡沒有可供尋找的內容訊號。

不同的是過程:

人無法在 300 毫秒內檢視一條掩碼邊界並做出判斷。偶爾一次也許可以,如果目標很明顯的話。但作為跨大量條目的中位數,那就不是熟練。

因此 Potato 記錄的是過程:每個圖形的耗時、筆跡動態、修改次數、縮放行為,以及那個最常改變決策的訊號——AI 建議的接受延遲,即從建議被呈現到被接受之間的時間。

記錄過程,而不記錄內容

顯而易見的反對意見是"這是監控",而這個質疑是合理的。設計上的回答是:事件記錄無法還原標註本身。

一條事件包含時間戳、動作、幾何類型,以及一個整數。任何情況下都不含座標。這是結構性屬性而非一條政策:根本沒有可以放座標的欄位,並且有測試對此做了斷言。

文本側的對應物遵循同樣的原則。擊鍵記錄記錄的是時間與編輯結構,從不記錄字元。它在 beforeinput 而非 keydown 上捕獲,因為貼上、拖放、輸入法、語音聽寫與自動填充都會在不觸發 keydown 的情況下改變欄位內容——所以只監聽 keydown 的記錄器,恰恰對它本該檢測的那些情況視而不見。"出現的字元"與"實際按下的鍵"之間的落差,是最有力的單一訊號。

標註者會看到錄製提示,並且該提示預設開啟。這正是研究工具與監控之間的分界線。

我們刻意沒有做的事

不附帶任何預訓練的分類器。 走過場行為並不存在帶標註的語料,而把擬合出來的係數說成"已驗證",就是在編造驗證。檢測由少數幾條透明規則構成,證據可見,並按項目做百分位校準。

我們也不宣稱能檢測出 AI 撰寫的標註。"能標示出被貼上而非逐字鍵入的回答",才是資料支援的說法。"能檢測 AI 生成的文本"則不是,而只要有人打算據此採取行動,這個差別就很重要。

如何讀這些數字

要讀分佈,絕不要在單個條目上設閾值。 三條經得起推敲的原則:

  1. 把每位標註者與項目本身比較,而不是與某個常數比較。 簡單的語料確實就是快。在你自己的項目內做百分位校準,是唯一站得住腳的基線。
  2. 尋找連續片段。 連續二十次低於 500 毫秒的接受,比一次作業中零散分佈的二十次要有力得多。
  3. 按是否存在建議來切分。 標註者自己繪製的速度,是衡量其接受速度的天然對照。

另外基準率很重要。在一個 80% 的條目確實微不足道的語料中,快通常就是對的,而一條為抓走過場而調好的規則,最終大多會抓到"能力強"。一次標記是"值得去看看"的提示,而不是結論本身。

令人不安的部分

如果你正在執行一項帶預標註的標註研究卻沒有記錄時間,那麼你目前沒有任何辦法判斷你的標註者究竟是在複核還是在接受。你的一致性統計不會告訴你,而且它們看起來會很漂亮。

預標註確實有幫助,所以這並不是反對預標註的論證。這是主張去測量預標註改變了什麼。

延伸閱讀