Lumen

Lumen

Eager to know more, about the world, about the intelligence, and about myself.
github

2024-03-20 洞察

前言#

這是一個新的系列,如果堅持下去我會將它單獨列為一個 category。這是受到 葉弈寧 啟發的一個系列,他在自己的博客裡面每日更新 LLM 相關的論文 insights。他說他寫 insights 的啟發來自於譚院士的 博客,但譚院士的風格太過簡練,我不太想效仿。

對於我來說,論文不是我現在生活最重要的一部分。所以我的 insights 更多的是面對生活,了解自己這些方向的。

之前在 xlog 寫博客期間我有過公開每週總結的一個系列,隨後我的每週總結變成了 self monologue,也就是每日給前一天和後一天的自己寫信。這樣的內容不適合公布,但這個習慣我斷斷續續已經堅持了有半年,算是一個很不錯的 practice。

這樣的對話我會記錄很多細碎的細節,因為跟自己的對話沒有壓力,不會讓我提煉最想說的。內容的冗長也就降低了日後回顧的頻率,有悖我記錄生活的初衷 — 為了豐富我的生活,而不是為了記錄本身。

因此我現在將自己的總結重新搬回到公開空間,將適合分享的部分總結出來,每日關於我讀到有趣的東西和自己的感悟整理成一天的內容,希望借助公開的壓力讓將每日值得記住的一些內容提煉出來。

Debug 心得#

最近最核心的工作在重新折騰 thesis 的 新實驗了。有的時候真的會遇到那些表面上完全沒有思路的 bug,比如模型和 tensor 都在 cuda:0 上但是報 not on the same device 的錯。

Eugenio 之前提到過一個深度學習的 心得總結,其中一個就是 be with the data,從 data 的角度,流過你的 pipeline ,從參與者的角度看到問題。

最近很多的 debug 我都是依靠著這樣的思路,很多時候當我真的覺得前面完全沒有思路了, de 無可 de 的時候,最後的解法永遠只有跟著你的數據在往前一步,再 step in 一個 function,然後再繼續往前走。從數據的角度一步一步走到報錯出現的地方。

Meta 的低級錯誤#

前段時間看 v-jepa 的 repo,在庫內使用東西的時候一切都好,但是想要在外面調用的時候就遇到問題了。匪夷所思的是,雖然已經確認安裝了這個庫,按照 setup.py 裡面定義的庫名 jepa 卻怎麼都調用不了它。

最後發現作者在 implement 的時候沒有注意清楚 repo 的格式。對於一個 python 的項目,一般有兩種目錄方式,一種以庫名作為源文件的文件夾名,一種則是 src / 庫名 的形式。

# 方式一
example_python_project  
├── example_python_project  
   ├── __init__.py  
   └── something.py  
└── setup.py

# 方式二
example_python_project  
├── setup.py  
└── src  
   └── example_python_project  
       ├── __init__.py  
       └── something.py

這兩種方式都可以被正常的識別,其中的源碼也會 register 到 example_python_project 中去。但搞笑的是這個 meta 出品的庫選擇了兩者中間 — 他使用了 src 但沒有項目同名的子文件夾。這就導致他的所有源文件都 regieter 到 src 裡面。

而作者將錯就錯,在整個 repo 裡面都一直用的是 from src.xxx.xxx import xxx 這樣的形式,這其實估計是他誤解為一種 relative import,即從項目的根目錄開始的 import。但因為大部分的命令都是在根目錄下運行,所以他也沒有發現問題。

但這其實是一個非常不合理的操作,我在看源碼的時候也一直沒意識到這個問題,直到發現在任意地方都可以以 src.xxx.xxx 的方式引用 jepa 內的庫的時候,我才意識到原來在 FAIR 上班的人,也能在自己的項目裡面犯如此低級的錯誤。

我讀到的#

羅磊的文章《我的老婆確診肺癌,希望能得到你的幫助》,詳細記錄了自己妻子確診肺癌的過程。看著我非常的心酸,感同身受,又非常害怕類似的事情發生在我的家人身上。

因為上面的文章發現他的博客,看到了他描述自己這兩年漸漸從國內互聯網上脫鉤的 文章,我覺得和我的心態也非常相似。除了一些無關隱私的社交媒體,以及某些完全沒辦法擺脫的流氓全民社交軟體,我已經幾乎完全從國內的互聯網消失了。通過 self-host (主要方式) 和國外的替代服務,我能確保我的隱私是真的屬於我的,而不是任何人可以牟利的工具,更不能成為宵小們可以隨意取閱的東西。我非常感謝 oss movement 的存在,讓我有這樣的選擇。

#

  • 文明六的 ost 很好聽,可以聽到遠古風格的 Scarborough Fair,但這明顯是將自己的時代投影到古代去了罷了,其實是重新創造了人們對民族是一種 “自古以來” 屬性的偏見。
  • 才發現 nn.Module 不一定有 device attribute。
  • 家在弗萊堡旁邊的一個村子,每天夜裡騎車回家,到門口都可以仰頭望見滿天的星光。分不清楚心裡那一抹是落寞還是驚喜。
載入中......
此文章數據所有權由區塊鏈加密技術和智能合約保障僅歸創作者所有。