newsence
歡迎

你的個人知識庫

從開放網路上發現值得讀的內容,收藏真正重要的。AI 為你摘要、串連、整理你所知道的一切。

口說英語,心想他物

Lesswrong·大約 3 小時前

我意識到當我使用英語與 Claude 進行氛圍編程時,我實際上是在思考 Python 的底層結構,就像 C++ 工程師在撰寫程式時會想像機器碼一樣。

C++ 編程界有一句格言,大意是:「是的,你是在 C,但你在寫的同時腦中在構思機器碼。」我以前覺得這純屬胡扯,根本沒人會這麼做。難道我應該一邊想像自己在寫機器碼,一邊想像自己在構思二進制?然後再想像自己在構思電晶體?

噢,既然我實際上並不使用編譯型語言,那我是否應該在寫 Python 的時候,腦中構思著 C++ 引擎,以此類推?

直到有一天,我在進行「氛圍編程」(vibe-coding)時,我意識到我正在用英文寫作,但腦子裡想的是 Python。或者類似的東西。我並非真的在腦中構思每一行 Python 代碼,但我確實在構思我向 Claude 描述的程式結構,並加入額外的細節來塑造那個結構。

酒吧哲學兄弟

這篇文章實際上是關於如何在酒吧裡與那些「哲學兄弟」進行理性的對話。

人們喜歡用英文(或其他人類語言)交談,是因為我們的嘴巴無法發出大腦內部使用的任何「神經語」(neuralese)聲音。有時,例如在數學中,我們可以讓我們選擇的語言與我們討論的結構保持微不足道的同構(isomorphic)。但大多數時候我們做不到。

考慮一下那個絕對荒謬的「白馬非馬」悖論,其中「白馬非馬」被解讀為以下陳述:

<mjx-container jax="CHTML" display="true" width="full"> <mjx-math> <mjx-mi><mjx-c class="mjx-c7B"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c48"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c6F"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c72"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c73"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c65"></mjx-c></mjx-mi> <mjx-mo space="4"><mjx-c class="mjx-c7C"></mjx-c></mjx-mo> <mjx-mi space="4"><mjx-c class="mjx-c43"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c6C"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c6F"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c72"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c28"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c68"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c29"></mjx-c></mjx-mi> <mjx-mo space="4"><mjx-c class="mjx-c3D"></mjx-c></mjx-mo> <mjx-mi space="4"><mjx-c class="mjx-c57"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c68"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c69"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c74"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c65"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c7D"></mjx-c></mjx-mi> <mjx-mo space="4"><mjx-c class="mjx-c2260"></mjx-c></mjx-mo> <mjx-mi space="4"><mjx-c class="mjx-c7B"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c48"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c6F"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c72"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c73"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c65"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c7D"></mjx-c></mjx-mi> </mjx-math> </mjx-container>

而「白馬是馬」這句話則被解讀為:

<mjx-container jax="CHTML" display="true" width="full"> <mjx-math> <mjx-mi><mjx-c class="mjx-c68"></mjx-c></mjx-mi> <mjx-mo space="4"><mjx-c class="mjx-c2208"></mjx-c></mjx-mo> <mjx-mi space="4"><mjx-c class="mjx-c48"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c6F"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c72"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c73"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c65"></mjx-c></mjx-mi> <mjx-mo space="4"><mjx-c class="mjx-c27F9"></mjx-c></mjx-mo> <mjx-mi space="4"><mjx-c class="mjx-c43"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c6C"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c6F"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c72"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c28"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c68"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c29"></mjx-c></mjx-mi> <mjx-mo space="4"><mjx-c class="mjx-c3D"></mjx-c></mjx-mo> <mjx-mi space="4"><mjx-c class="mjx-c57"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c68"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c69"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c74"></mjx-c></mjx-mi> <mjx-mi><mjx-c class="mjx-c65"></mjx-c></mjx-mi> </mjx-math> </mjx-container>

我經常以「因果圖」(causal graphs)的語言來思考。英文並不擅長討論因果圖。它沒有專門的詞彙來表達「A 與 B 包含相同的資訊」、「A 與 B 是同一個節點」、「A 是 B 的抽象化」、「A 是 B 因果上游的節點」。

我記得有一次在酒吧和一個搞哲學的傢伙聊到「意識」。我想我當時說了類似「某種計算結構導致了意識」之類的話,我的意思是「意識是應用於某些計算結構的標籤」,但他卻理解為「某種計算結構的存在是意識上游的一個節點」。這造成了巨大的困惑。

我把這裡的問題稱為「甲蟲問題」。

甲蟲問題

維根斯坦提出了一個思想實驗。假設有一個社會:

  • 每個人都有一個盒子。
  • 每個人都用「甲蟲」這個詞來指代盒子裡的東西。
  • 每個人都可以看自己的盒子。
  • 沒有人可以看別人的盒子。

在這種情況下,「甲蟲」這個詞的含義完全是社會建構的。維根斯坦在這裡有些誇張了:如果我跟你說話,而你對你的甲蟲做了一些操作(撇開黃色笑話不談)並報告結果,我確實可以根據你的回覆獲得一些關於你的甲蟲的資訊。甲蟲與我們兩人都產生了因果糾纏。這只是談論事物的一種不太有效率的方式。

即使我們兩人的甲蟲一模一樣,我們也可能需要一段時間才能讓它們的朝向一致——我稱之為觸角的部分,你可能稱之為腿;我稱之為翅鞘的部分,你稱之為甲殼。以此類推。

不公平地舉一個例子。我個人在與牛津有效利他主義(EA)/長線主義(longtermist)圈子的人交談時,對此感受尤為深刻。我知道他們是聰明人,能夠組織論點,但他們發展出了一套我完全無法滲透的語言。我需要花很長時間才能弄清楚他們到底在說什麼。噢,原來你的甲蟲放反了,所以跟我的對不上

更糟糕的是,我認為很多人實際上並不像我那樣以因果圖的方式思考。當我試圖閱讀關於道德現實主義(moral realism)的文章時,這個問題就會出現。當有人提出一個「立場獨立」(stance-independent)的理由去做某事時,我根本無法將其映射到我心理語言中存在的任何概念上。你說你的甲蟲有毛和爪子,還一直發出「喵喵」聲是什麼意思?你確定嗎?

解決方案

呃……我沒什麼解決方案。甲蟲問題需要時間來理清。我曾經在一份論文測試中得到過這樣的反饋:「你的想法似乎很混亂。」而我想的是:「老兄,你的草稿才混亂呢!」我不認為我能做得更好,除非花時間當面把甲蟲問題磨合清楚。

不過,如果對甲蟲問題有更好的概念,或許會有所幫助。我至少可以把它指出來。也許將來我會帶著一個完美的甲蟲解決方案回來。

編者註:本文是作為 Doublehaven(與 Inkhaven 無關)的一部分撰寫的。

◆◆◆◆◆|◆◆◆◆◆|◆◆◇◇◇
◆◆◆◆◆|◆◆◆◆◆|◆◆◇◇◇

參與討論

https://lesswrong.com/posts/ry9bz8aQcxDcu6HjR/talk-english-think-something-else