擊鍵記錄倫理
Potato 擊鍵記錄的知情同意、IRB 審查、資料留存和參與者權利:這些資料能揭示什麼,以及如何公平地使用寫作過程標記。
擊鍵記錄記錄的是你的標註者怎麼寫。那是關於可識別個人的行為資料,它帶來的義務不在技術文件的覆蓋範圍內。
這一頁是寫給部署這個功能的研究者的。它不是法律意見,也不能替代你所在機構的審查。
在你把功能開啟之前,這些都不適用。keystroke_logging.enabled 預設為 false,升級不會改變這一點。
你實際收集的是什麼
Potato 的事件流是內容無關的。它們記錄某個字元在何時、在欄位的什麼位置被插入,以及是哪一類按鍵產生了它,但從不記錄是哪個字元。你無法從事件流還原出文本。
這是一項實實在在的隱私保護,但它和「這些資料不可識別身份」不是一回事。
時間模式是一種生物特徵
擊鍵動態,也就是按鍵間隔、按鍵停留時間和雙字母組延遲的分佈,是一種確立已久的行為生物特徵。它可以用來識別個人,也可以把不同場景下的賬號關聯起來。Potato 不做這件事,也不提供相關工具,但底層資料支援這麼做。
請像對待任何其他行為生物特徵那樣對待擊鍵事件流:把它當作可識別身份的、需要留存期限的、需要取得知情同意的。
除作者身份之外還能推斷出什麼
在研究中,時間資料被用來推斷打字技能、語言熟練度和第二語言身份、認知負荷和疲勞,在某些文獻裡還有運動和神經系統狀況。Potato 一樣都不計算,但你保留的資料足以支撐這類分析,而你的參與者在同意做「一個標註任務」時,多半不會想到這些。
把你收集的東西說清楚。不要指望一條籠統的「我們會收集使用資料」條款能覆蓋它。
披露
disclose_to_annotators 預設為 true。關閉它會在啟動時記錄一條警告:
keystroke_logging:
disclose_to_annotators: false # logs a warning; make sure your IRB covers this不披露地收集有其正當理由,因為有些研究設計一旦告訴參與者在測什麼就失效了。那是倫理委員會的決定,而不是一個配置上的方便。如果你關掉披露,你應該拿得出允許這麼做的批准檔案。
知情同意示例文本
請按你的方案調整。它是一個起點,不是照抄不看的模板。
你怎麼寫會被記錄,你寫了什麼也會被記錄。
在你鍵入回答的過程中,本研究會記錄你打字的時間資訊:你何時開始和停止、停頓多久、何時回頭修改,以及何時從別處貼上文本進來。它記錄的是打字的時間和結構,而不是你按下的每一個鍵。這份記錄無法用來還原出你提交的答案以外的任何內容。
這些資料用於理解人們如何完成任務,以及檢查所收集資料的品質。
[如適用:]這些測量可能會被用來識別哪些回答是從別處複製或生成的,而不是由你寫出來的。
[如適用:]這些記錄可能會作為匿名化研究資料集的一部分被共享。
你可以隨時聯絡 [ ] 要求我們刪除你的資料。
方括號裡的條款很重要。如果你打算把標記用於付款或排除決定,請在人們開始工作之前就說明,而不是在你已經標記了他們之後。
公平地使用標記
寫作過程檢測產出附帶證據的標記。怎麼使用它們是你的責任。
要做:
- 把標記當作去檢視的提示,而不是一項結論。
- 讀每個會話的證據,而不只是判定標籤。
- 在採取行動之前給標註者解釋的機會。
- 把已知的誤報考慮進去:移動端鍵盤、IME 使用者、聽寫、輔助技術和打字快的人。
- 事先在你的方案裡寫明你的決策規則。
不要做:
- 把標記接到自動拒絕、扣款或封禁上。
- 把校準出來的尾部當成不端行為。百分位閾值會在任何人群裡標出固定的一部分,包括一個完全誠實的人群。
- 以能識別到個人的方式公佈按標註者的風險分數。
- 用標記去對一個人做出超出「這份回答是不是他寫的」之外的論斷。這些資料不支援關於其能力、投入或品行的推斷。
基礎率問題
如果你有 5% 的回答是從聊天機器人貼上來的,而你的規則標記了 5% 的會話,那麼被標記出來的大部分仍然可能是誠實的工作,具體取決於這條規則把兩者分開的能力有多強。在一個真正的不端行為很罕見的平臺上,一條哪怕誤報率很小的規則,產生的錯誤指控也會多過真正的捕獲。在你圍繞這些標記定政策之前,先估計一下你的基礎率。
參與者權利
刪除
刪除某一位參與者的事件流和摘要:
from potato import typing_store
typing_store.delete_for_user(task_dir, project, user_id)這會清除 typing_sessions。如果你要滿足一次完整的刪除請求,映像到 <output_annotation_dir>/<user>/user_state.json 中 typing_summaries 下的摘要必須另行刪除。
最小化
只收集能回答你的問題所需的最少資料:
keystroke_logging:
fidelity: summary # features only, no raw streams retained
include_schemas: [rationale] # instrument one field, not every box
classify_paste_source: false # skip clipboard comparison entirely留存
Potato 不會讓資料自動過期。如果你的方案承諾了一個留存視窗,到期時請自己刪除事件流。分析期結束後切換到 fidelity: summary 是一個合理的折中,既保留聚合特徵,又丟掉生物特徵層面的細節。
共享與發表
如果你把擊鍵資料作為資料集的一部分發布:
- 把使用者 id 換成研究專用的化名,且不能映射回平臺 id。Prolific 和 MTurk 的工作者 id 是識別符號,不是化名。
- 想清楚是否真的需要會話級的時間資訊,還是摘要特徵就夠了。摘要比事件流難以重新識別得多。
- 檢查你的知情同意是否覆蓋了再分發,而不只是收集。
- 貼上雜湊按會話加鹽,無法逆推,但它們確實會暴露同一段文本被貼上過兩次。請判斷這種關聯在公開發布中是否可以接受。
Potato 的匯出正是為此才需要主動開啟。export_include_typing_dynamics 和 keystrokes 匯出器都預設關閉,所以行為資料不會不小心進入資料集釋出。
各法域的注意事項
這不是法律意見。這裡只是指出哪些方面通常與之相關。
GDPR 與英國 GDPR。 足以識別一個人的時間模式屬於個人資料。如果你用它們來鎖定個人,請考慮第 22 條(自動化決策)是否適用,尤其是當一個標記會影響付款時。同意必須是具體且知情的,一份籠統的條款接受多半不夠。
美國的機構審查。 這通常屬於以人為物件的研究。有些 IRB 把擊鍵動態視作生物特徵識別符號,這可能會改變審查類別。
眾包平臺。 Prolific、MTurk 及類似平臺對監測參與者和拒絕工作各有自己的規則。在你基於一個標記拒絕任何人之前,先查一下平臺政策。有幾家要求你必須能向工作者說明拒絕的理由。
延伸閱讀
- 擊鍵記錄 - 採集了什麼、怎麼採集
- 寫作過程檢測 - 這些規則及其誤報
- 在 Prolific 和 MTurk 上眾包 - 與付費標註者合作
- 品質控制 - 注意力檢查和金標準
有關實現細節,請參閱原始碼文件。