清單管理?面向機(jī)器學(xué)習(xí)中的數(shù)據(jù)集
毋庸置疑的是,數(shù)據(jù)在機(jī)器學(xué)習(xí)中起著至關(guān)重要的作用。每個(gè)機(jī)器學(xué)習(xí)模型實(shí)例都是使用靜態(tài)數(shù)據(jù)集的形式進(jìn)行訓(xùn)練和評(píng)估,這些數(shù)據(jù)集的特性從根本上影響了模型的行為: 如果一個(gè)模型的部署環(huán)境與它的訓(xùn)練或評(píng)估數(shù)據(jù)集不匹配,或者這些數(shù)據(jù)集存在不必要的誤差和偏見,那么它就不可能有良好的表現(xiàn)。當(dāng)機(jī)器學(xué)習(xí)模型應(yīng)用于高風(fēng)險(xiǎn)領(lǐng)域時(shí),如招聘和金融等領(lǐng)域時(shí),這種不匹配會(huì)產(chǎn)生特別嚴(yán)重的后果。即使在其他領(lǐng)域,不匹配也可能導(dǎo)致收益的損失。
雖然數(shù)據(jù)的可信來源已經(jīng)在數(shù)據(jù)庫領(lǐng)域得到了廣泛的研究,但是在機(jī)器學(xué)習(xí)領(lǐng)域卻不是這樣的,記錄數(shù)據(jù)集的創(chuàng)建和使用并沒有得到足夠的重視,目前還沒有標(biāo)準(zhǔn)化的機(jī)器學(xué)習(xí)數(shù)據(jù)集記錄流程。
有什么好的方法么?不妨嘗試一下清單管理。
1. 關(guān)于清單管理
在電子工業(yè)中,每個(gè)部件,無論多么簡單或復(fù)雜,都伴隨著一份描述其操作特性、測試結(jié)果、推薦使用和其他信息的數(shù)據(jù)表。同樣的,我們可以嘗試使用清單管理,每個(gè)數(shù)據(jù)集都伴隨著一個(gè)清單列表,記錄其動(dòng)機(jī)、組成、采集、用途等等。數(shù)據(jù)集的清單列表會(huì)增加機(jī)器學(xué)習(xí)的透明度和問責(zé)制,減少機(jī)器學(xué)習(xí)模型中不必要的誤差和偏見。
用于數(shù)據(jù)集的清單需要滿足兩個(gè)關(guān)鍵群體的需求: 數(shù)據(jù)集創(chuàng)建者和數(shù)據(jù)集消費(fèi)者。對(duì)于數(shù)據(jù)集的創(chuàng)建者來說,清單可以對(duì)創(chuàng)建、分發(fā)和維護(hù)數(shù)據(jù)集的過程進(jìn)行反思,包括任何潛在的假設(shè)、風(fēng)險(xiǎn)或危害,以及使用的影響。對(duì)于數(shù)據(jù)集消費(fèi)者來說,清單可以確保他們擁有所需的信息,以便在使用數(shù)據(jù)集時(shí)做出明智的決策。數(shù)據(jù)集創(chuàng)建者的透明度對(duì)于數(shù)據(jù)集消費(fèi)者來說是必要的,這樣可以充分了解選擇適當(dāng)?shù)臄?shù)據(jù)集,并避免無意中的誤用。
同時(shí),數(shù)據(jù)集的清單管理促進(jìn)機(jī)器學(xué)習(xí)結(jié)果有更大的重用性,無法訪問數(shù)據(jù)集的開發(fā)者可以利用清單中的信息創(chuàng)建具有類似特征的替代數(shù)據(jù)集。
2. 面向數(shù)據(jù)集生命周期的清單
數(shù)據(jù)集生命周期包括: 動(dòng)機(jī)、組成、采集、預(yù)處理/清理/標(biāo)記、使用、分發(fā)和維護(hù)。面向數(shù)據(jù)集的生命周期,可以嘗試簡歷清單列表。需要注意的是,清單中的內(nèi)容并非適用于所有數(shù)據(jù)集,那些不適用的選項(xiàng)可以跳過。
2.1 數(shù)據(jù)集的創(chuàng)建動(dòng)機(jī)
創(chuàng)建數(shù)據(jù)集的理由是創(chuàng)建的動(dòng)機(jī),自檢清單可能包括:
- 創(chuàng)建數(shù)據(jù)集的目的是什么?
- 預(yù)期面向什么問題?
- 有沒有什么具體的任務(wù)?
- 誰創(chuàng)建了數(shù)據(jù)集,代表哪個(gè)實(shí)體(實(shí)例例如,公司、機(jī)構(gòu)、組織) ?
2.2 數(shù)據(jù)集的組成
數(shù)據(jù)集的創(chuàng)建者在數(shù)據(jù)采集之前明確的清單列表,要了解對(duì)數(shù)據(jù)集的消費(fèi)者提供所需要的信息,以便在是否使用數(shù)據(jù)集時(shí)做出明智的決定。需要注意的是,如果涉及個(gè)人信息,要關(guān)注《個(gè)人信息保護(hù)法》,以及其他的法律法規(guī)的限定。
- 組成數(shù)據(jù)集的實(shí)例代表什么(例如,文檔、照片、人物、國家等) ?
- 是否存在多種類型的實(shí)例(例如,電影、用戶和評(píng)級(jí)之間的交互,可能是節(jié)點(diǎn)和邊) ?
- 總共有多少個(gè)實(shí)例 ?
- 數(shù)據(jù)集是否包含所有可能的實(shí)例,還是來自更大集合的實(shí)例樣本(不一定是隨機(jī)的) ?如果數(shù)據(jù)集是一個(gè)樣本,那么較大的集合是什么?樣本能否代表較大的集合嗎?如果是,要描述如何驗(yàn)證這個(gè)代表性。如果不能,要描述原因。
- 每個(gè)實(shí)例由哪些數(shù)據(jù)組成?原始數(shù)據(jù)(例如,未處理的文本或圖像)還是特征數(shù)據(jù)呢?
- 是否有與每個(gè)實(shí)例相關(guān)聯(lián)的標(biāo)簽或?qū)ο?
- 單個(gè)實(shí)例中是否缺少信息?如果是,描述這個(gè)信息是缺失的(例如,因?yàn)樗遣豢捎玫?。
- 個(gè)別實(shí)例之間的關(guān)系是否明確(例如,社交網(wǎng)絡(luò)鏈接等) ?
- 是否有推薦的數(shù)據(jù)拆分(例如,訓(xùn)練、開發(fā)/驗(yàn)證、測試) ?如果是,描述這些拆分背后的理由。
- 數(shù)據(jù)集中是否有任何錯(cuò)誤、噪音源或冗余? 如果有,描述是哪些。
- 數(shù)據(jù)集是自包含的,還是鏈接到外部資源(例如,網(wǎng)站或其他數(shù)據(jù)集) ?如果鏈接到或依賴于外部資源,a)是否保證這些資源在一段時(shí)間內(nèi)將繼續(xù)存在并保持不變; b)是否存在完整數(shù)據(jù)集的官方版本(即,包括數(shù)據(jù)集創(chuàng)建時(shí)存在的外部資源) ; c)是否存在外部數(shù)據(jù)集資源的使用限制(例如,許可或費(fèi)用) ?說明所有外部資源和與之相關(guān)的任何限制,以及鏈接。
- 數(shù)據(jù)集是否包含可能被視為機(jī)密的數(shù)據(jù)(例如,受醫(yī)患保密性保護(hù)的數(shù)據(jù)等) ?
如果數(shù)據(jù)集與人有關(guān),還可能包括:
- 數(shù)據(jù)集是否識(shí)別人群(例如,按年齡、性別) ?如果是,描述如何識(shí)別的,并在數(shù)據(jù)集中提供它們各自分布的描述。
- 是否有可能從數(shù)據(jù)集中直接或間接地(即與其他數(shù)據(jù)結(jié)合)識(shí)別個(gè)人(即一個(gè)或多個(gè)自然人) ?
- 數(shù)據(jù)集是否包含任何可能被視為敏感的數(shù)據(jù)(例如,政治觀點(diǎn)或身份或地點(diǎn)的數(shù)據(jù); 金融或健康數(shù)據(jù); 生物特征或基因數(shù)據(jù); 政府身份識(shí)別形式,如身份證等) ?
2.3 采集
數(shù)據(jù)獲取過程,可以人們創(chuàng)建具有類似特征的替代數(shù)據(jù)集,可能包括:
- 如何獲得與每個(gè)實(shí)例相關(guān)聯(lián)的數(shù)據(jù)?這些數(shù)據(jù)是否可以直接觀察到(例如,原始文本、電影評(píng)級(jí)) ,或者從其他數(shù)據(jù)(例如,詞性標(biāo)簽、年齡或語言)中間接推斷/導(dǎo)出?如有關(guān)數(shù)據(jù)是間接從其他數(shù)據(jù)推斷/得出,有關(guān)數(shù)據(jù)是否經(jīng)過驗(yàn)證/核實(shí)?
- 采用了哪些機(jī)制或程序來收集數(shù)據(jù)(例如,硬件設(shè)備或傳感器、人工管理、軟件程序、軟件 api) ?如何驗(yàn)證這些機(jī)制或程序?
- 如果數(shù)據(jù)集是一個(gè)較大集合中的樣本,那么采樣策略是什么(例如,確定性的、具有特定采樣概率的概率) ?
- 數(shù)據(jù)收集的時(shí)間跨度是多少?這個(gè)時(shí)間段是否與與實(shí)例(例如,最近抓取的舊文章)相關(guān)聯(lián)數(shù)據(jù)的創(chuàng)建時(shí)間段相匹配?
- 是否進(jìn)行過任何道德審查程序 ?
如果數(shù)據(jù)集與人員有關(guān),還可能包括:
- 是直接從有關(guān)個(gè)人那里收集數(shù)據(jù),還是通過第三方或其他來源(例如網(wǎng)站)獲取數(shù)據(jù)?
- 是否向有關(guān)個(gè)人通報(bào)了數(shù)據(jù)收集的情況?如果是,通知是如何提供的,并提供一個(gè)鏈接或其他訪問點(diǎn),或以其他方式通知的本身。
- 有關(guān)個(gè)人是否同意收集和使用他們的數(shù)據(jù)?如果是,提供一個(gè)鏈接或其他訪問點(diǎn),或以其他方式復(fù)制個(gè)人的同意確認(rèn)。
- 如果獲得同意,是否向同意的個(gè)人提供了今后撤銷其同意或用于某些用途的機(jī)制?如果是,提供一個(gè)鏈接或其他接入點(diǎn)。
- 是否對(duì)數(shù)據(jù)集的潛在影響及其對(duì)數(shù)據(jù)主體的使用進(jìn)行了分析?如果是,分析包括結(jié)果、鏈接或任何支持文檔的其他訪問點(diǎn)。
2.4 預(yù)處理/清洗/標(biāo)記
數(shù)據(jù)集的消費(fèi)者需要了解處理過程,以確定”原始”數(shù)據(jù)是否可以與其所選任務(wù)兼容的方式進(jìn)行了處理。清單包括:
- 是否對(duì)數(shù)據(jù)進(jìn)行了預(yù)處理/清理/標(biāo)記(例如,離散化、標(biāo)記化、詞性標(biāo)記、特征提取、實(shí)例刪除、缺失值處理) ?
- 除了預(yù)處理/清理/標(biāo)記的數(shù)據(jù)之外,還保存了“原始”數(shù)據(jù)嗎?如果是,提供一個(gè)鏈接或其他接入點(diǎn)的“原始”數(shù)據(jù)。
- 用于預(yù)處理/清理/標(biāo)記數(shù)據(jù)的軟件是否可用?如果可以,提供一個(gè)鏈接或其他接入點(diǎn)。
2.5 用途
數(shù)據(jù)集的應(yīng)用邊界是什么?通過明確這些任務(wù),數(shù)據(jù)集的創(chuàng)建者可以幫助數(shù)據(jù)集消費(fèi)者做出明智的決定,從而避免潛在的風(fēng)險(xiǎn)或危害。
- 數(shù)據(jù)集是否已用于某些任務(wù)? 如果是,簡述一下這些任務(wù)。
- 是否有一個(gè)存儲(chǔ)鏈接到所有使用數(shù)據(jù)集的論文或系統(tǒng)?如果有,提供一個(gè)鏈接或其他接入點(diǎn)。
- 數(shù)據(jù)集可以用于什么(其他)任務(wù)?
- 數(shù)據(jù)集的組成或者數(shù)據(jù)集的收集和預(yù)處理/清理/標(biāo)記的方式是否會(huì)影響未來的使用?
- 是否有不應(yīng)該使用數(shù)據(jù)集的任務(wù)? 如果有,說明一下。
2.6 分發(fā)
數(shù)據(jù)集的分發(fā)要么在數(shù)據(jù)集所代表的組織內(nèi)部分發(fā),要么在外部分發(fā)給第三方,清單可能包括:
- 數(shù)據(jù)集是否會(huì)分發(fā)給數(shù)據(jù)集所代表的組織之外的第三方(例如,公司、機(jī)構(gòu)、組織) ?
- 數(shù)據(jù)集將如何發(fā)布(例如,網(wǎng)站上的下載鏈接、 API、 GitHub等) ?數(shù)據(jù)集是否有一個(gè) DOI 數(shù)據(jù)集?
- 數(shù)據(jù)集什么時(shí)候分發(fā)?
- 數(shù)據(jù)集是否會(huì)根據(jù)版權(quán)或其他知識(shí)產(chǎn)權(quán)許可使用條款分發(fā)?如果是,描述許可證和/或使用條款,并提供鏈接或其他接入點(diǎn)。
- 是否有任何第三方對(duì)與實(shí)例相關(guān)的數(shù)據(jù)施加基于 ip 的或其他限制?
- 是否對(duì)數(shù)據(jù)集的分發(fā)管制或限制?
2.7 維護(hù)
不要有人生,沒人養(yǎng)。關(guān)于數(shù)據(jù)集的維護(hù)計(jì)劃,清單可能包括:
- 誰將支持/托管/維護(hù)數(shù)據(jù)集?
- 如何聯(lián)系數(shù)據(jù)集的所有者或管理者(例如,電子郵件地址) ?
- 是否有勘誤表? 如果有,提供鏈接。
- 是否會(huì)更新數(shù)據(jù)集(例如,更正標(biāo)記錯(cuò)誤、添加新實(shí)例、刪除實(shí)例) ?如果,多久更新一次,由誰更新,以及如何通知數(shù)據(jù)集的消費(fèi)者 ?
- 如果數(shù)據(jù)集與人有關(guān),是否對(duì)保留與實(shí)例有關(guān)的數(shù)據(jù)有適用的限制?如果有,這些限制如何執(zhí)行?
- 數(shù)據(jù)集的舊版本是否會(huì)繼續(xù)得到支持/托管/維護(hù)?
- 如果其他人希望擴(kuò)展/增強(qiáng)/構(gòu)建/貢獻(xiàn)數(shù)據(jù)集,是否有一種機(jī)制讓他們這樣做?這些貢獻(xiàn)是否得到驗(yàn)證/核實(shí)?
3.數(shù)據(jù)集清單管理的作用與影響
數(shù)據(jù)集的清單管理不能提供一個(gè)完整的解決方案來減輕不必要的偏見或潛在的風(fēng)險(xiǎn)。創(chuàng)建者可能無法預(yù)測數(shù)據(jù)集的每一種可能的用途,當(dāng)創(chuàng)建與人相關(guān)數(shù)據(jù)集的時(shí)候,可能需要與多領(lǐng)域的專家合作,才能較好地收集數(shù)據(jù)。
為數(shù)據(jù)集進(jìn)行清單管理必然會(huì)增加數(shù)據(jù)集創(chuàng)建者的成本。盡管清單有較多一次性問題的選項(xiàng),但創(chuàng)建清單的過程總是需要時(shí)間,組織的基礎(chǔ)設(shè)施和工作流程需要修改,同樣是開發(fā)成本。清單列表和工作流可能會(huì)對(duì)動(dòng)態(tài)數(shù)據(jù)集造成問題,頻繁更新數(shù)據(jù)集的清單可能會(huì)有較大的成本。
盡管如此,數(shù)據(jù)集的清單管理促進(jìn)了數(shù)據(jù)集創(chuàng)建者和數(shù)據(jù)集消費(fèi)者之間更好的溝通,還使數(shù)據(jù)集創(chuàng)建者能夠區(qū)分透明度和可靠性??偟膩碚f,對(duì)數(shù)據(jù)集進(jìn)行清單管理應(yīng)該是利大于弊的。