《AI時代:碼農的涅盤重生》第95章 筆試(1)

作者:Flint8·9小時前

早晨七點半,鵬城的天空泛著灰白色的光。林晨坐在書桌前,筆記型電腦螢幕亮著,郵箱裡躺著昨晚收到的新郵件——來自一家名為“智創未來”的AI初創公司的線上筆試邀請。這是繼星雲科技之後,他收到的第二個AI相關崗位的筆試通知。

他喝了口已經涼掉的速溶咖啡,揉了揉有些發脹的太陽穴。連續幾天的備考和麵試準備,讓三十五歲的身體開始發出抗議。但心裡那股勁兒撐著——失業第128天,每一個機會都不能放過。

“智創未來”這家公司他之前研究過,規模不大,五十人左右,專注在計算機視覺和工業質檢領域。崗位是“機器學習工程師”,薪資範圍寫的是25-40K,比星雲科技稍高一些。更重要的是,崗位描述裡明確要求“有紮實的機器學習理論基礎和Python工程能力”,這正好撞在他的槍口上。

筆試時間是上午9:00-11:00,線上進行,全程攝像頭監控。林晨提前半小時就進入了系統,除錯好攝像頭和網路,將手機靜音放到客廳,書桌上只留下筆記型電腦、一支筆和幾張草稿紙。蘇婉送完樂樂上學後,輕手輕腳地關上了臥室門,給他一個絕對安靜的環境。

8:59,系統介面重新整理。倒計時開始。

林晨深吸一口氣,點選“開始答題”。

第一部分是30道選擇題,限時45分鐘。題目涵蓋機器學習基礎、機率統計、線性代數、深度學習常見模型。

第一題:“在SV,以下哪種核函式對應的特徵空間維度是無窮維”?

A. 線性核

B. 多項式核

C. 高斯核(RBF)

D. Sigid核

林晨幾乎沒猶豫就選了C。這是他在吳恩達課程裡反覆強調過的知識點——高斯核函式透過泰勒展開可以對映到無窮維特徵空間。手指點選滑鼠的瞬間,心裡稍微踏實了一點:自學的東西,真的用上了。

但接下來的題目開始變得刁鑽。

“假設你訓練了一個邏輯迴歸模型,發現訓練集準確率99%,測試集準確率只有55%。以下哪種方法最不可能解決問題”?

A. 增加正則化強度

B. 收集更多訓練資料

C. 減少特徵數量

D. 增加模型複雜度

林晨眉頭微皺。這題考的是過擬合與欠擬合的區分。訓練集準確率極高而測試集極低,明顯是過擬合。解決過擬合通常需要正則化、更多資料、減少特徵(即降低模型複雜度)。那麼“增加模型複雜度”顯然是火上澆油。他選了D。

答題過程像在時間河流裡逆流而上。有些概念明明看過,但具體細節模糊了;有些題目需要快速計算協方差矩陣的特徵值,草稿紙上寫滿公式。第22題關於Batch Norlization在訓練和推理階段的不同處理,他卡了足足兩分鐘,最後憑記憶選擇了“訓練時使用當前batch的均值和方差,推理時使用移動平均的均值和方差”。

當最後一道選擇題提交時,倒計時顯示還剩3分17秒。林晨後背出了一層薄汗。

第二部分是程式設計題,2道,限時45分鐘。

第一題:“給定一個整數陣列nu和一個目標值target,請你在陣列中找出和為目標值的那兩個整數,並返回它們的陣列下標。假設每種輸入只會對應一個答案,且不能重複使用相同的元素”。

林晨幾乎笑出來——這是LeetCode第一題“兩數之和”,太經典了。他迅速在程式碼編輯區寫下雜湊表解法,時間複雜度O(n),空間複雜度O(n)。測試用例全部透過。

第二題難度陡增:“實現一個簡單的神經網路前向傳播過程。給定輸入矩陣X(形狀為n_sales×n_features),權重矩陣W1(n_features×hidden_size)、W2(hidden_size×output_size),偏置向量b1、b2,啟用函式使用ReLU。請寫出計算過程並返回輸出矩陣”。

這題考察對神經網路底層計算的理解。林晨沉下心來,在草稿紙上畫出計算圖:

Z1 = X·W1 + b1

)1Z(ULeR = 1A

2b + 2W·1A = 2Z

用啟無層出輸設假 # 2Z = tuptuO

。鐘分21剩還間時,時提。誤錯有沒認確,遍幾了查檢覆反後完寫。配匹度維的法乘陣矩了意注,碼式程出寫格風yuN用他後然

。鐘分03時限,道1,題答問放開是分部一後最

猜你喜歡

同題材或同分類的其他作品。