「你今天怎麼這麼早?」
實驗室門口。
段維剛走上來就看到程競星已經站在走廊上了。
手裡抱著筆記本,靠在牆邊等著。
像是到了有一會兒了。
他低頭看了一眼手錶。
早上八點整,周日。
他差點以為自己看錯時間了。
程競星站直身體,攏了攏肩膀上背包帶子,「我吃完早飯過來的。」
段維噎了一下,他不是這個問題。
「你們昨天不是下午才來,怎麼上午就來了?」
「昨天晚上關師兄給我發了一些數據,我回去看了一下,有點想法,想趁熱打鐵驗證一下。」程競星說得很自然。
段維掏出鑰匙開門,心裡大概知道原因了。
這位程學妹怕是心裡急著想驗證自己的想法,等不到下午。
他推開門的時候側頭看了她一眼。
心想倒是個做科研的好苗子。
科研最需要的就是這種能沉下心又有求知精神的人。
「進來吧。」他推開實驗室的門用下巴示意了一下。
程競星走進去,在門邊的隔間熟練地穿上實驗服。
然後前往自己的工位坐下。開機、打開代碼、加載數據。
她打開關師兄昨晚發給她的表格,還有窗口數據。
把每一列外部變量和窗口噪聲水平做了相關分析,確認了幾組關聯。
又將這些外部變量和窗口噪聲之間確實存在統計相關性。
她在鍵盤上敲了二十多分鐘,把那套貝葉斯融合框架的代碼寫了出來。
寫完代碼後又花了十分鐘檢查了一遍。
確認沒有邏輯漏洞。
然後選中了昨天效果最差的W7窗口作為第一個測試對象。
W7隻有十一個數據點。
噪聲強度大、尾部偏厚。
是整組數據里處理難度最高的窗口。
她把程序準備好,手指放在回車鍵上停了一瞬,然後按了下去。
實驗室的門又響了。
林曼等人陸陸續續來了。
看到段維在,他們一點也不意外。
但看到程競星也在,他們紛紛露出驚訝的神色。
「你今天來得真早。」林曼挽了一圈有點長的袖口。
沈巧琦也看向程競星,挑了下眉。
「關師兄昨天給了我點數據,所以我先過來驗證一下。」程競星頭也不抬解釋。
林曼瞭然地點頭,「辛苦你們了。」
「還好。」程競星沒覺得辛苦,相反覺得老師這次的安排太好了。
這次參與實驗也幫她完善了腦子裡的仿真模型。
這是一次不可多得的經驗呢。
「加油。」林曼握了下拳頭,給她加油打氣。
程競星笑了下。
兩人走開了。
屏幕上的畫面也變了。
代碼跑完了。
清洗後的信噪比從原始數據的1.5提升到了6.1。
比前一天只靠數據驅動的方法又提升了將近一個單位。
更關鍵的是。
清洗前後網絡結構圖的對比差異非常明顯。
清洗前的圖裡充滿了模糊的偽邊。
清洗後那些噪聲連接消失了。
剩下來的連接基本上和程競星根據理論推演預想的結構一致。
她盯著屏幕上的結果看了一會兒。
然後拿起筆記本,在噪聲分離那一頁上畫了一個完整的流程圖。
把數據驅動加先驗融合的清洗流程從頭到尾梳理了一遍。
她在圖的下方寫了一行結論:貝葉斯融合框架在異質性噪聲條件下表現穩定,可擴展至全量數據,已完成W7驗證。
又加了一行備註:待測試:全量數據流水線集成。
她把代碼保存好,把實驗結果截圖存進一個文件夾里。
「喝咖啡嗎?」一杯咖啡放在她面前。
程競星轉頭,看到不知什麼時候來的關明傑。
「喝。」
免費的咖啡,不喝白不喝。
她伸手接過紙杯,指尖觸到溫熱的杯壁,微微低頭抿了一大口。
加了冰的液體滑過舌尖。
猝不及防的苦味瞬間鋪滿整個口腔。
沒有半分甜意,澀感順著舌根往喉嚨沉下去。
苦得她眉尖幾不可察地蹙了一下。
苦味過後,又浮起一層淡淡的焦香。
那股鈍重的困意像是被這股苦澀猛地敲散。
舌尖還殘留著揮之不去的焦苦餘味。
後調卻透出一點綿長醇香。
她心裡恍然,難怪那麼多人喜歡喝咖啡。
「好喝吧,這是冰美式。」關明傑湊了過來。
程競星點了點頭,「是挺好喝的。」
「下次再給你買。」關明傑說著,看向她的電腦屏幕,眼睛眯起,「你這個……」
程競星沒說話,一口一口喝著咖啡。
關明傑後背挺直了些許,拿過滑鼠,看著上面的窗口。
「你這是把異質性噪聲下的數據清洗問題解決了?」
「嗯。」程競星點頭。
段維早注意到這邊的情況,走了過來。
「怎麼了?」
「你看這個。」關明傑示意他看電腦。
段維湊近看了一眼,沉默了幾秒。
關明傑在旁邊替他總結:「
我們之前的預處理流程,是從數據內部估計噪聲,從裡面反推噪聲特徵,很容易被假信號騙。」
「但她把這套邏輯翻過來了,先把那些本來被丟在實驗記錄表里的髒信息撿回來了。」
他指了指屏幕上那張外部變量的表格。
「儀器多久沒校準、樣本放了多久、試劑是哪批的。」
「這些以前最多在排查問題時人工參考一下,從來沒有被正式納入數學模型。」
「但她把它們編碼成先驗分布,跟數據驅動的噪聲估計做貝葉斯融合。」
「相當於清洗不再是盲猜,而是有了外部錨點。」
他翻到W7窗口的對比圖:
「你再看這個。」
「W7這種死窗口,我們之前基本是放棄的,樣本太少、噪聲太大,根本沒法用。」
「但她把清洗做完之後,信噪比從1.5拉到了6.1。」
「1.5是什麼概念?信噪比小於2的數據,信號和噪聲基本混在一起,跟沒有差不多。」
「她直接從沒法用的狀態搶救回來一個完整的窗口。」
段維沒有說話,但他在翻那些圖表的時候目光明顯放慢了。
他翻到網絡結構對比圖的時候停住了。
清洗前的圖裡布滿了模糊的偽邊和噪聲連接,密密麻麻像一團被攪亂的線。
清洗後的圖乾淨了很多。
剩下來的連接集中在那幾個他知道真實存在調控關係的節點對之間。
這個結果比他預想的好太多了。
最關鍵的是最後那句『待測試:全量數據流水線集成』。
她不是做了一個一次性的腳本,而是搭了一個可擴展的框架。
昨天解決了變點檢測,今天解決了噪聲清洗。
這兩者還是打通的。
變點檢測輸出的窗口邊界,直接餵給噪聲清洗模塊,清洗完的輸出再往網絡推斷模塊送。
段維把咖啡杯放在了桌面上,轉頭看著程競星。
「你那個清洗方法,等穩定了能不能集成到我們這邊的預處理流程里?」
「可以。」程競星點頭,「等我弄完。」
她接著說:「目前還有一個全量數據的集成測試沒跑,跑完沒問題就可以封裝成模塊用。」
段維點了點頭,回到自己的工位上,然後轉頭問關明傑。
「你這個學妹是從哪裡找來的?」
「她弄的這個東西一旦穩定下來,我們整個組的預處理環節都可以換血了。」
關明傑端著咖啡杯,笑眯眯地回了一句:「厲害吧。」