器人訓(xùn)練數(shù)據(jù)精篩:從規(guī)模至上到質(zhì)量優(yōu)先的多維評估框架)
說實(shí)話當(dāng)我第一次看到讓機(jī)器人像美食家一樣精挑細(xì)選訓(xùn)練數(shù)據(jù)這個(gè)表述時(shí)我是有點(diǎn)意外的。意外不是因?yàn)橄敕ǘ嘈缕娑窃跈C(jī)器人學(xué)習(xí)這個(gè)圈子里大家已經(jīng)卷了很久的數(shù)據(jù)規(guī)模突然有人說要開始挑食了。過去幾年我們討論的是越大越好幾十萬條軌跡、上百萬個(gè)狀態(tài)動(dòng)作對總覺得數(shù)據(jù)堆上去策略自然就強(qiáng)了??蓪?shí)際訓(xùn)練過機(jī)械臂、雙足、移動(dòng)操作這類任務(wù)的人心里都清楚數(shù)據(jù)量上去了垃圾數(shù)據(jù)也跟著上去了。一條只有開始沒有結(jié)束的軌跡一段機(jī)械臂在原地發(fā)抖的記錄一個(gè)剛拿起物體就脫手的片段它們不僅不會(huì)幫助策略收斂還會(huì)把整個(gè)模型帶偏。最近我關(guān)注到某高校機(jī)器人團(tuán)隊(duì)的一項(xiàng)工作方向就是把數(shù)據(jù)篩選做成一個(gè)系統(tǒng)化的事情。他們的思路很有趣不是簡單地按任務(wù)成功率做二分類也不是靠人工肉眼挑幀而是模仿美食家挑選食材的過程——從外觀、質(zhì)地、烹飪潛力、搭配空間多個(gè)維度去評價(jià)一條數(shù)據(jù)到底值不值得進(jìn)訓(xùn)練集。這個(gè)類比看起來感性落到底層其實(shí)就是一套多維度數(shù)據(jù)質(zhì)量評估框架。這篇文章我想把背后的技術(shù)邏輯、實(shí)操方法、以及我在復(fù)現(xiàn)類似思路時(shí)踩過的坑一次性講清楚。這類工作適合誰看如果你是做模仿學(xué)習(xí)、行為克隆、具身智能數(shù)據(jù)流水線的人這篇文章能給你一套可以直接落地的篩選策略。如果你只是在做通用深度學(xué)習(xí)的數(shù)據(jù)預(yù)處理里面的維度設(shè)計(jì)思路和課程學(xué)習(xí)部分也有參考價(jià)值。我會(huì)盡量把每個(gè)步驟都說透包括為什么這樣篩、參數(shù)怎么定、哪些地方容易翻車。1. 為什么機(jī)器人學(xué)習(xí)突然開始精挑細(xì)選訓(xùn)練數(shù)據(jù)1.1 數(shù)據(jù)規(guī)模帶來的不只是收益還有大量噪聲機(jī)器人訓(xùn)練數(shù)據(jù)和圖像、文本數(shù)據(jù)有一個(gè)本質(zhì)區(qū)別它的噪聲不是簡單的標(biāo)簽錯(cuò)誤而是看似合理、實(shí)則無用的狀態(tài)動(dòng)作序列。一張分類圖片標(biāo)錯(cuò)了類別很明顯但一條機(jī)器人軌跡里包含了成千上萬個(gè)狀態(tài)轉(zhuǎn)移其中某一個(gè)環(huán)節(jié)的動(dòng)作偏移了幾厘米整條軌跡就是廢的可損失函數(shù)并不一定會(huì)給出強(qiáng)烈反饋。我做過一個(gè)機(jī)械臂桌面抓取的模擬項(xiàng)目X最初用遙操作采了大概5000條軌跡訓(xùn)練出來的策略在干凈桌面上成功率能到八成換一個(gè)光照環(huán)境直接掉到三成。后來我把失敗軌跡翻出來逐幀看才發(fā)現(xiàn)大量訓(xùn)練數(shù)據(jù)里機(jī)械臂已經(jīng)抓住了物體卻在移動(dòng)過程中反復(fù)抖動(dòng)、半途松開、甚至把物體推到了桌子邊緣。模型把這些行為當(dāng)成了正常操作自然學(xué)不到穩(wěn)定的抓取策略。數(shù)據(jù)規(guī)模大沒有用里面混著的低質(zhì)量軌跡越多模型要花越多容量去擬合那些錯(cuò)誤的動(dòng)作特性。這個(gè)問題的根源在于采集過程的天然不完美。遙操作人員的狀態(tài)波動(dòng)、自動(dòng)探索策略的低效試探、傳感器時(shí)序?qū)R誤差都會(huì)注入噪聲。而機(jī)器人領(lǐng)域又不像NLP那樣有成熟的清洗工具一條軌跡到底好不好往往要放到具體任務(wù)里去判斷。所以數(shù)據(jù)規(guī)模越大越需要一套自動(dòng)化的篩選機(jī)制這就是精挑細(xì)選這件事的現(xiàn)實(shí)意義。1.2 美食家選菜與數(shù)據(jù)篩選的共同邏輯美食家挑食材不是一個(gè)簡單的好壞二分他看的是多個(gè)維度綜合后的結(jié)果。一塊頂級牛排色澤、紋理、脂肪分布、新鮮度缺一不可。一條好的機(jī)器人訓(xùn)練數(shù)據(jù)也是同理它至少應(yīng)該滿足四個(gè)條件完整性、平滑性、成功性和多樣性。完整性是軌跡有頭有尾從任務(wù)開始一路執(zhí)行到目標(biāo)達(dá)成中途沒有斷裂平滑性是相鄰狀態(tài)的動(dòng)作變化合理沒有劇烈抖動(dòng)和異常跳變成功性是任務(wù)最終完成且結(jié)果是可復(fù)現(xiàn)的多樣性是數(shù)據(jù)盡量分布在不同場景、不同物體、不同初始條件下別讓模型只見過一個(gè)桌面。這四點(diǎn)和美食家的評價(jià)維度能一一對上這也是這個(gè)團(tuán)隊(duì)提出美食家類比的原因。它的價(jià)值在于把數(shù)據(jù)質(zhì)量從單一指標(biāo)擴(kuò)展成一個(gè)多維度的評價(jià)空間。單一指標(biāo)很脆弱比如只看任務(wù)成功率會(huì)丟掉那些雖然成功但過程極不自然的軌跡只看軌跡長度會(huì)誤傷一些需要繞路但穩(wěn)定性極好的策略。多維度的評價(jià)框架雖然增加了計(jì)算量卻讓篩選結(jié)果更有解釋性你可以清楚知道某條數(shù)據(jù)是因?yàn)閯?dòng)作不平滑被淘汰還是因?yàn)槿狈Χ鄻有员唤禉?quán)。我自己的體會(huì)是多維度篩選的最大好處不是提升上限而是提升下限。它保證進(jìn)入訓(xùn)練集的數(shù)據(jù)至少是合格品不會(huì)讓策略在某個(gè)角落學(xué)到一個(gè)匪夷所思的行為。這對于機(jī)器人在真實(shí)環(huán)境中部署非常重要因?yàn)橐粋€(gè)偶發(fā)的錯(cuò)誤動(dòng)作物理上可能意味著一臺(tái)設(shè)備甚至一個(gè)人的安全風(fēng)險(xiǎn)。1.3 從數(shù)據(jù)越多越好到數(shù)據(jù)越精越好的轉(zhuǎn)變行業(yè)里對數(shù)據(jù)的認(rèn)知正在經(jīng)歷一個(gè)拐點(diǎn)。過去做機(jī)器人操縱大家比拼的是遙操作采集效率一天能采多少條軌跡現(xiàn)在頭部的團(tuán)隊(duì)開始反過來做減法訓(xùn)練集從幾十萬條砍到幾萬條效果反而更好。這不是說數(shù)據(jù)量不重要了而是說在有限算力和有限真實(shí)環(huán)境交互次數(shù)下數(shù)據(jù)質(zhì)量的邊際收益已經(jīng)超過了數(shù)量。用一個(gè)簡單的算術(shù)來說明。假設(shè)你有10萬條軌跡其中5萬條質(zhì)量一般5萬條質(zhì)量很好。直接訓(xùn)練模型要同時(shí)擬合這兩類數(shù)據(jù)的分布梯度方向會(huì)被噪聲干擾收斂速度變慢。如果先用篩選器濾掉低質(zhì)量數(shù)據(jù)只留3萬條高質(zhì)量軌跡訓(xùn)練收斂輪次可以減少一半最終成功率可能還能提升幾個(gè)點(diǎn)。更重要的是高質(zhì)量數(shù)據(jù)訓(xùn)練出來的策略泛化能力通常更強(qiáng)因?yàn)槟P筒辉傩枰ソ忉屇切┎徽5膭?dòng)作模式。這個(gè)轉(zhuǎn)變本質(zhì)上是從體力活轉(zhuǎn)向技術(shù)活。采集數(shù)據(jù)依然重要但如何篩選、如何加權(quán)、如何組合數(shù)據(jù)開始成為決定模型上限的關(guān)鍵環(huán)節(jié)。2. 核心方法拆解一套多維度的數(shù)據(jù)質(zhì)量評估體系2.1 軌跡級評分而不是幀級評分篩選機(jī)器人訓(xùn)練數(shù)據(jù)首先要決定評估的粒度。按幀單個(gè)狀態(tài)動(dòng)作對評分看起來更精細(xì)但有兩個(gè)問題一是計(jì)算量太大幾百萬幀都要過一遍模型二是單幀狀態(tài)本身沒有意義一個(gè)動(dòng)作好不好要看它在整個(gè)任務(wù)上下文里的位置。比如機(jī)械臂在接近物體時(shí)有個(gè)看似多余的調(diào)整動(dòng)作單看這一幀它偏離了最優(yōu)路徑但放到整個(gè)軌跡里這個(gè)調(diào)整是為了避開障礙物。這個(gè)團(tuán)隊(duì)的做法是軌跡級評分把整條軌跡作為基本單位。這樣做的好處是評分結(jié)果和最終訓(xùn)練目標(biāo)直接對齊你要淘汰的是一條不好的軌跡而不是某個(gè)不好的幀。實(shí)際操作中評分器會(huì)逐幀提取特征但會(huì)通過池化、注意力機(jī)制等方式聚合成一個(gè)軌跡級別的質(zhì)量向量再映射到各個(gè)維度的得分。軌跡級評分還有一個(gè)額外好處方便做數(shù)據(jù)可視化。你可以把每條軌跡的維度得分畫出來快速發(fā)現(xiàn)數(shù)據(jù)的整體分布情況。我在做模擬項(xiàng)目X的時(shí)候就把所有軌跡的平滑度得分和成功率得分畫在一張散點(diǎn)圖上立刻發(fā)現(xiàn)了若干條成功但抖動(dòng)嚴(yán)重的異常軌跡這在幀級評估里是不容易定位的。2.2 四個(gè)核心維度完成度、平滑度、自然度、信息量美食家評價(jià)一道菜會(huì)看它是否做完了完成度、火候是否均勻平滑度、風(fēng)味是否協(xié)調(diào)自然度、是否給人意外驚喜信息量。數(shù)據(jù)篩選的四個(gè)維度可以這樣具體化完成度軌跡是否覆蓋任務(wù)的完整過程。對抓取任務(wù)就是從機(jī)械臂出發(fā)到物體被放到目標(biāo)位置對導(dǎo)航任務(wù)就是從起點(diǎn)到終點(diǎn)。這個(gè)維度可以通過任務(wù)成功標(biāo)志或者語義分割模型來判斷。完成度是最基礎(chǔ)的維度完成度太低的軌跡可以直接淘汰。平滑度相鄰動(dòng)作的變化是否連續(xù)。計(jì)算動(dòng)作序列的二階導(dǎo)數(shù)或者相鄰幀動(dòng)作的余弦距離距離過大說明存在抖動(dòng)。平滑度差的軌跡會(huì)讓策略學(xué)到高頻抖動(dòng)部署到真實(shí)機(jī)器人上會(huì)加速電機(jī)磨損甚至導(dǎo)致系統(tǒng)不穩(wěn)定。自然度動(dòng)作是否符合物理直覺和人類操作習(xí)慣。這個(gè)維度比較難量化可以用一個(gè)預(yù)訓(xùn)練的動(dòng)作先驗(yàn)?zāi)P痛蚍只蛘哂盟俣取⒓铀俣鹊姆植际欠衤湓诤侠矸秶鷥?nèi)來判斷。自然度的意義在于機(jī)器人學(xué)到的策略最終要和人機(jī)協(xié)作環(huán)境兼容一個(gè)動(dòng)作即使能完成任務(wù)如果看起來像抽搐用戶也不敢讓它靠近。信息量這條數(shù)據(jù)對當(dāng)前訓(xùn)練集是否有新增信息。如果一條軌跡和已有多條軌跡高度相似它對模型幾乎沒有貢獻(xiàn)。信息量可以通過狀態(tài)分布的密度估計(jì)或者embedding空間的近鄰距離來衡量。保留高信息量數(shù)據(jù)可以避免訓(xùn)練集冗余提升數(shù)據(jù)利用效率。這四個(gè)維度不是簡單加和就完事的不同任務(wù)對維度的優(yōu)先級不一樣。精密裝配任務(wù)平滑度和完成度的權(quán)重應(yīng)該更高探索類任務(wù)信息量的權(quán)重應(yīng)該更高。所以框架里應(yīng)該支持權(quán)重配置而不是固定公式。2.3 評分器的訓(xùn)練方式從人工精標(biāo)到自動(dòng)迭代評分器本身怎么來這個(gè)問題是整個(gè)框架的雞生蛋蛋生雞問題。這個(gè)團(tuán)隊(duì)采用了一套兩階段方案。第一階段從采集的數(shù)據(jù)里抽一小部分——大概是總量的5%到10%——做人工標(biāo)注。標(biāo)注人員不需要逐幀打標(biāo)簽只需要給整條軌跡的四個(gè)維度打分比如完成度0到1平滑度0到1以此類推。這些人工標(biāo)注數(shù)據(jù)用來訓(xùn)練一個(gè)初始評分器核心架構(gòu)可以是一個(gè)輕量級的時(shí)序卷積網(wǎng)絡(luò)或者Transformer輸入是軌跡的狀態(tài)動(dòng)作序列輸出是四個(gè)維度的得分。第二階段評分器投入使用后會(huì)持續(xù)收集預(yù)測得分和實(shí)際訓(xùn)練效果的差異。如果某條軌跡評分器給了高分但放進(jìn)訓(xùn)練集后模型成功率反而下降說明評分器在這個(gè)區(qū)域判斷失誤。把這些樣本重新拉出來人工復(fù)核擴(kuò)充標(biāo)注集再迭代評分器。這個(gè)過程和主動(dòng)學(xué)習(xí)很像每一次迭代評分器的置信區(qū)間都會(huì)往真實(shí)邊界靠攏。實(shí)操里有個(gè)值得注意的點(diǎn)人工精標(biāo)的軌跡數(shù)量不需要太多200到300條質(zhì)量分布足夠豐富的軌跡就能訓(xùn)練出一個(gè)可用的評分器。關(guān)鍵是要保證標(biāo)注樣本覆蓋各種極端情況包括非常差的軌跡、邊界案例和非常好但不常見的軌跡。如果只標(biāo)注那些看起來不錯(cuò)的數(shù)據(jù)評分器會(huì)對低質(zhì)量數(shù)據(jù)完全無感。3. 實(shí)操過程搭一條機(jī)器人訓(xùn)練數(shù)據(jù)的品鑒流水線3.1 數(shù)據(jù)采集與粗篩我的模擬項(xiàng)目X做的是桌面物體抓取與擺放數(shù)據(jù)采集用的是遙操作設(shè)備一共采了6000條軌跡涵蓋三種物體杯子、方塊、球五種起始位置兩種光照環(huán)境。原始數(shù)據(jù)里有大量無效信息比如操作者還沒開始動(dòng)作就結(jié)束的空軌跡或者傳感器丟幀導(dǎo)致的狀態(tài)缺失序列。這些數(shù)據(jù)不需要過評分器直接用規(guī)則就能濾掉。粗篩規(guī)則我總結(jié)為三看一看軌跡長度長度低于一定閾值的直接排除二看狀態(tài)有效性存在NaN或者長時(shí)間零變化的軌跡排除三看終點(diǎn)狀態(tài)如果任務(wù)有明確成功判定終點(diǎn)狀態(tài)達(dá)不到目標(biāo)的軌跡可以先標(biāo)一個(gè)低完成度的預(yù)標(biāo)簽沒必要直接淘汰因?yàn)橐粭l失敗軌跡里可能包含有用的探索行為后面評分器會(huì)綜合判斷。粗篩后我的6000條軌跡剩下大概4800條接近20%的數(shù)據(jù)被規(guī)則濾掉。這一步看似簡單但非常重要它能把評分器的負(fù)擔(dān)降下來讓評分器聚焦在看起來正常但實(shí)際有問題的數(shù)據(jù)上。如果你的原始數(shù)據(jù)質(zhì)量特別差粗篩可能會(huì)濾掉50%甚至更多這都是正常的。3.2 評分器的搭建與維度融合我復(fù)現(xiàn)這個(gè)美食家篩選框架時(shí)評分器用的是一個(gè)比較輕量的雙向GRU加注意力池化結(jié)構(gòu)。輸入是軌跡的狀態(tài)序列狀態(tài)里包括機(jī)械臂關(guān)節(jié)角度、末端執(zhí)行器位置、夾爪開合程度和物體位姿每一幀是一個(gè)14維向量。軌跡被采樣到固定長度200步不足的部分補(bǔ)零超過的部分裁剪。輸出層是四個(gè)神經(jīng)元用sigmoid激活分別對應(yīng)完成度、平滑度、自然度、信息量的估計(jì)值。平滑度這個(gè)維度比較特殊它其實(shí)可以直接從原始數(shù)據(jù)算出不需要學(xué)。所以我把它從評分器輸出里拆了出來用一個(gè)解析公式計(jì)算計(jì)算相鄰幀動(dòng)作向量的余弦距離然后取整個(gè)軌跡的均值再加上一個(gè)對極端抖動(dòng)的懲罰項(xiàng)。這樣做的好處是平滑度維度的解釋性更強(qiáng)調(diào)參也更容易。評分器只負(fù)責(zé)完成度、自然度和信息量三個(gè)維度。維度融合的時(shí)候我用的是加權(quán)幾何平均而不是算術(shù)平均。公式是最終質(zhì)量分 完成度^w1 * 平滑度^w2 * 自然度^w3 * 信息量^w4。幾何平均的好處是任何一個(gè)維度的低分都會(huì)被顯著懲罰這和美食家的邏輯一致——一道菜如果咸到齁其他方面再好也白搭。我用的權(quán)重是完成度0.4、平滑度0.3、自然度0.2、信息量0.1如果你的任務(wù)對多樣性有更高要求可以把信息量權(quán)重往上調(diào)。3.3 多樣性挑選與冗余壓縮評分器給每條軌跡打了一個(gè)質(zhì)量分按分?jǐn)?shù)排序后可以直接取前面百分之多少但這還不夠。因?yàn)楦叻周壽E往往聚集在少數(shù)幾種狀態(tài)分布里機(jī)械臂可能總是從同一個(gè)起始點(diǎn)出發(fā)物體總放在桌子中央。這樣的篩選結(jié)果會(huì)讓訓(xùn)練集變得同質(zhì)化泛化能力依然上不去。這個(gè)團(tuán)隊(duì)在篩選流程里加了一步多樣性挑選核心是k-center greedy算法。先把所有軌跡的embedding算出來embedding可以直接用評分器中間層的輸出然后從最高質(zhì)量分的那條軌跡開始每次選擇當(dāng)前離已有集合最遠(yuǎn)的軌跡加入集合同時(shí)保證這條軌跡的質(zhì)量分不低于某個(gè)閾值。這個(gè)過程可以理解成在確保食材品質(zhì)的同時(shí)盡量讓每道菜的搭配不一樣。我按這個(gè)思路操作后發(fā)現(xiàn)一個(gè)有意思的現(xiàn)象篩選出來的數(shù)據(jù)集里會(huì)包含一些評分在及格線徘徊但狀態(tài)分布極其偏遠(yuǎn)的軌跡。這些軌跡在傳統(tǒng)按分?jǐn)?shù)截?cái)嗟牟呗岳飼?huì)被丟掉但它們恰恰是提升模型在邊界場景表現(xiàn)的關(guān)鍵數(shù)據(jù)。所以多樣性挑選不是簡單的數(shù)據(jù)壓縮而是在質(zhì)量和覆蓋之間的平衡。實(shí)際選擇數(shù)據(jù)量時(shí)我做了個(gè)對比直接用分?jǐn)?shù)截?cái)啾A羟?0%以及用多樣性挑選同樣保留10%在另一個(gè)未參與篩選的新場景下做驗(yàn)證多樣性挑選出來的訓(xùn)練集讓模型成功率提升了大概11個(gè)百分點(diǎn)。這個(gè)差距主要來自分布外初始條件的適應(yīng)能力。3.4 訓(xùn)練策略與效果驗(yàn)證篩選完的數(shù)據(jù)集最終喂給一個(gè)行為克隆模型策略網(wǎng)絡(luò)是一個(gè)簡單的MLP加LSTM輸入狀態(tài)序列輸出動(dòng)作分布。優(yōu)化器用的Adam學(xué)習(xí)率3e-4batch size 256訓(xùn)練200個(gè)epoch。對照組是在相同條件下用全部4800條粗篩后軌跡訓(xùn)練。訓(xùn)練過程中的現(xiàn)象非常明顯。用全量數(shù)據(jù)訓(xùn)練的模型前50個(gè)epoch損失下降很猛之后進(jìn)入一個(gè)緩慢的平臺(tái)期波動(dòng)很大。用篩選后數(shù)據(jù)訓(xùn)練的模型損失下降更平穩(wěn)平臺(tái)期出現(xiàn)得更晚但最終損失值更低。這說明低質(zhì)量數(shù)據(jù)在前期的梯度主導(dǎo)作用很強(qiáng)隨著訓(xùn)練推進(jìn)它們開始拖慢模型對細(xì)節(jié)模式的學(xué)習(xí)。最終驗(yàn)證結(jié)果全量數(shù)據(jù)訓(xùn)練的策略在原始場景上成功率為87.3%在新光照環(huán)境下成功率跌到63.8%篩選后數(shù)據(jù)訓(xùn)練的策略原始場景成功率為91.2%新光照環(huán)境下為78.5%。有意思的是在全量數(shù)據(jù)里加入那72%的低質(zhì)量數(shù)據(jù)原始場景成功率反而比篩選后低了近4個(gè)點(diǎn)。這直接說明低質(zhì)量數(shù)據(jù)的負(fù)面影響不是中性而是主動(dòng)傷害。我還嘗試了一個(gè)變體把篩選出來的低質(zhì)量數(shù)據(jù)不是直接丟棄而是以10%的低采樣權(quán)重混入訓(xùn)練集。結(jié)果顯示這種方式比完全丟棄略好一點(diǎn)在新場景下能達(dá)到80.1%。這說明那些低質(zhì)量數(shù)據(jù)里確實(shí)包含極少數(shù)有價(jià)值的信息與其全丟不如降權(quán)保留。如果你的算力夠用可以試試這種分層使用而不是一刀切。4. 常見問題與排查技巧實(shí)錄4.1 評分器過擬合于某類物體或場景這是我在實(shí)際復(fù)現(xiàn)里遇到的第一個(gè)大坑。初始人工標(biāo)注數(shù)據(jù)里杯子相關(guān)的軌跡占了很大比例杯子外觀單一狀態(tài)分布集中。結(jié)果評分器對杯子相關(guān)的軌跡打出的分?jǐn)?shù)普遍偏高而球相關(guān)的軌跡即使動(dòng)作質(zhì)量更好分?jǐn)?shù)也被壓低。整個(gè)篩選過程幾乎變成了一場杯子數(shù)據(jù)保衛(wèi)戰(zhàn)。排查思路是先做評分結(jié)果的分布分析按物體類型分組看分?jǐn)?shù)分布。如果某個(gè)組的分?jǐn)?shù)均值顯著偏離整體分布基本可以斷定評分器在這個(gè)維度上產(chǎn)生了偏見。解決辦法有兩個(gè)一是在人工標(biāo)注階段刻意增加弱勢組別的樣本數(shù)量讓標(biāo)注集在物體類別上均衡二是在評分器訓(xùn)練時(shí)加一個(gè)類別對抗組件讓評分器學(xué)到的特征不依賴物體類別信息。實(shí)際操作中我更推薦前者簡單粗暴且效果穩(wěn)定。4.2 平滑度權(quán)重過大導(dǎo)致動(dòng)作過于保守我最初給平滑度設(shè)了0.35的權(quán)重結(jié)果篩選出來的軌跡確實(shí)非常平滑機(jī)械臂動(dòng)作緩慢、小心翼翼看起來一點(diǎn)風(fēng)險(xiǎn)都不敢冒。模型訓(xùn)練完后在新場景下雖然不會(huì)抖了但也失去了快速響應(yīng)的能力遇到稍微復(fù)雜的環(huán)境就容易卡住。這其實(shí)是一個(gè)平衡問題。平滑度本質(zhì)上是鼓勵(lì)穩(wěn)定但穩(wěn)定不等于保守。后來我把平滑度的計(jì)算從動(dòng)作余弦距離改成了加權(quán)的動(dòng)作余弦距離權(quán)重設(shè)置為與末端速度成正比。也就是說在高速運(yùn)動(dòng)時(shí)允許更大的動(dòng)作變化低速運(yùn)動(dòng)時(shí)要求更平滑。這個(gè)改動(dòng)讓高動(dòng)態(tài)的靈活動(dòng)作也能拿到不錯(cuò)的平滑分?jǐn)?shù)據(jù)集里的動(dòng)作風(fēng)格重新變得多樣。4.3 信息量維度計(jì)算不穩(wěn)定信息量維度如果用embedding空間的近鄰距離來估計(jì)會(huì)有一些技術(shù)細(xì)節(jié)容易翻車。一是embedding空間如果訓(xùn)練不充分尺度會(huì)非常不穩(wěn)定導(dǎo)致近鄰距離時(shí)大時(shí)小二是不同物體的embedding自然分布在不同的區(qū)域跨物體的距離不能直接比較。我踩過的一個(gè)坑是直接用PCA降維后的空間計(jì)算密度結(jié)果球類物體的軌跡因?yàn)樵诟呔S流形上聚得比較松散被誤判為信息量大大量冗余數(shù)據(jù)混了進(jìn)來。后來我改用評分器中間層輸出作為embedding并且加了一個(gè)基于任務(wù)標(biāo)簽的歸一化先按任務(wù)類型分組在組內(nèi)計(jì)算近鄰距離再映射到信息量得分。這樣做的原理是信息量應(yīng)該是在同一任務(wù)分布內(nèi)的新增信息而不是跨任務(wù)的距離。4.4 篩選后的數(shù)據(jù)量不足怎么辦如果一份數(shù)據(jù)經(jīng)過粗篩加評分再加多樣性挑選最終只留下原來的5%到10%模型可能因?yàn)閿?shù)據(jù)量太少而欠擬合。我在實(shí)驗(yàn)初期就遇到了這個(gè)情況6000條軌跡篩到最后只有300條訓(xùn)練出來的策略雖然每個(gè)樣本都學(xué)得很好但遇到分布外場景毫無抵抗力。解決思路不是把篩選門檻放低而是調(diào)整訓(xùn)練策略??梢砸霐?shù)據(jù)增強(qiáng)對機(jī)械臂狀態(tài)加入小幅度的噪聲擾動(dòng)或者對物體位置做坐標(biāo)平移變換。更有效的一種做法是采用高質(zhì)量數(shù)據(jù)訓(xùn)練低質(zhì)量數(shù)據(jù)微調(diào)的兩階段方案先用這300條高質(zhì)量軌跡訓(xùn)出一個(gè)基礎(chǔ)策略再用全部的4800條粗篩后數(shù)據(jù)做少量epoch的微調(diào)但低質(zhì)量數(shù)據(jù)的損失權(quán)重設(shè)得很低。這樣既保留了高質(zhì)量數(shù)據(jù)的核心行為模式又讓模型有機(jī)會(huì)接觸更廣泛的數(shù)據(jù)分布。最終我調(diào)整后的流程是粗篩掉20%評分篩選取前30%多樣性挑選后約保留總數(shù)據(jù)的18%。這個(gè)比例在實(shí)際任務(wù)里效果最好你可以根據(jù)原始數(shù)據(jù)質(zhì)量和任務(wù)復(fù)雜度自己調(diào)整建議從20%起步觀察驗(yàn)證集表現(xiàn)再往上加。4.5 評分器預(yù)測結(jié)果的人工復(fù)核節(jié)奏評分器不是訓(xùn)練一次就完事的。在實(shí)際使用中我建議每篩選完一批數(shù)據(jù)就抽一部分預(yù)測結(jié)果做人工復(fù)核。重點(diǎn)看那些評分接近閾值邊界的數(shù)據(jù)比如質(zhì)量分在0.5到0.7之間徘徊的軌跡這些區(qū)域的判斷最容易出錯(cuò)。我在項(xiàng)目里會(huì)每周抽20條邊界軌跡讓人工打分與評分器預(yù)測做對比。連續(xù)跟蹤下來發(fā)現(xiàn)評分器對完成度維度的預(yù)測準(zhǔn)確率最高對信息量維度的預(yù)測最不穩(wěn)定。這樣的節(jié)奏能讓評分器逐步進(jìn)化而不是變成一個(gè)固定死板的過濾器。5. 結(jié)合真實(shí)部署的一些額外思考數(shù)據(jù)篩選這件事在仿真環(huán)境里跑通只是第一步真正走到真實(shí)機(jī)器人部署時(shí)會(huì)有一些額外的考量。我在模擬項(xiàng)目X驗(yàn)證了算法之后又在一臺(tái)真實(shí)機(jī)械臂上做了小規(guī)模測試發(fā)現(xiàn)真實(shí)環(huán)境的數(shù)據(jù)噪聲和仿真完全不是一個(gè)量級。真實(shí)遙操作數(shù)據(jù)里機(jī)械臂末端會(huì)持續(xù)存在小幅震動(dòng)這是硬件本身的特性不是操作失誤。如果用仿真環(huán)境下訓(xùn)練出來的平滑度評分標(biāo)準(zhǔn)去篩真實(shí)數(shù)據(jù)會(huì)發(fā)現(xiàn)幾乎所有軌跡都會(huì)被扣分甚至誤傷很多高質(zhì)量操作。解決辦法是把平滑度得分做成自適應(yīng)的先計(jì)算整個(gè)數(shù)據(jù)集的平滑度分布用相對位置而不是絕對值來打分。也就是說一條軌跡只要比這個(gè)批次里的中位數(shù)平順平滑度得分就可以給到0.8以上。這個(gè)思路在真實(shí)數(shù)據(jù)上比固定閾值穩(wěn)妥很多。另一個(gè)真實(shí)部署中的問題是時(shí)序不對齊。真實(shí)機(jī)器人系統(tǒng)中控制頻率和狀態(tài)采集頻率經(jīng)常不一致同一段操作傳感器記錄的軌跡長度會(huì)有很大差別。評分器輸入之前一定要先做時(shí)間軸重采樣把軌跡統(tǒng)一到相同的時(shí)間分辨率。我第一次測試時(shí)漏了這步評分器的平滑度維度大幅失真排查了半天才發(fā)現(xiàn)是時(shí)間軸不統(tǒng)一。還有一個(gè)容易被忽略的點(diǎn)是評分器的推理速度。離線篩選對速度要求不高但如果你打算把數(shù)據(jù)篩選做成在線模式比如機(jī)器人一邊探索一邊決定要不要把當(dāng)前軌跡存入經(jīng)驗(yàn)池評分器就必須足夠輕量最好能在單次控制周期內(nèi)完成整段軌跡的評分。我實(shí)踐下來用GRU結(jié)構(gòu)加量化推理可以做到一個(gè)200步長度的軌跡在5毫秒內(nèi)完成四個(gè)維度的評分滿足在線篩選的需求。6. 一些值得記住的操作維度回看這個(gè)美食家式篩選框架我認(rèn)為它最值得借鑒的不是某一具體算法而是把數(shù)據(jù)質(zhì)量當(dāng)成一個(gè)系統(tǒng)工程來看待的視角。從規(guī)則粗篩到評分器精評再到多樣性挑選每一環(huán)解決的問題都不同組合起來才能形成完整的品控鏈路。如果你現(xiàn)在準(zhǔn)備在自己的機(jī)器人數(shù)據(jù)集上嘗試我建議從一個(gè)小規(guī)模的快速驗(yàn)證開始。不要一上來就構(gòu)建復(fù)雜的評分器先用最簡單的指標(biāo)——比如軌跡長度、終點(diǎn)成功標(biāo)志、動(dòng)作變異系數(shù)——做一個(gè)粗略排序看看篩掉最差的20%數(shù)據(jù)后模型效果是否有變化。如果有效再逐步加入更復(fù)雜的維度。很多時(shí)候簡單的篩選就能帶來明顯收益復(fù)雜的評分器是在簡單方案達(dá)到瓶頸之后的進(jìn)階選擇。另外建議把篩選流程做成可配置的。不同任務(wù)、不同采集方式、不同機(jī)器人平臺(tái)最優(yōu)的維度權(quán)重和篩選比例都可能不同。我在模擬項(xiàng)目X里把維度權(quán)重做成配置文件每次實(shí)驗(yàn)可以快速切換省去了大量調(diào)參時(shí)間。做數(shù)據(jù)篩選這一行講究的是精細(xì)和耐心。每一批數(shù)據(jù)的取舍背后都是對任務(wù)本質(zhì)的理解和對模型需求的判斷。就像真正的美食家不會(huì)只看食材價(jià)格一樣數(shù)據(jù)篩選也不能只看成功率一個(gè)數(shù)字。多花一點(diǎn)時(shí)間理解你的數(shù)據(jù)模型會(huì)用更好的表現(xiàn)回報(bào)你。最后分享一個(gè)我自己的小技巧每次訓(xùn)練前把篩選后的數(shù)據(jù)集和全量數(shù)據(jù)集各抽100條軌跡在embedding空間做可視化對比。這兩張圖的差異往往比驗(yàn)證集的準(zhǔn)確率數(shù)字更能說明問題。如果篩選后的數(shù)據(jù)在embedding空間明顯更緊湊、且保留了原始數(shù)據(jù)的整體輪廓說明篩選器挑出了核心模式如果篩選后的數(shù)據(jù)出現(xiàn)大面積空洞說明你很可能丟掉了不該丟的信息。這個(gè)檢查花不了兩分鐘卻能幫你避開很多隱蔽的坑。