收藏!微軟AI面試題有多難?這裡有一份樣卷
究竟什麼樣的AI人才能被微軟這樣的巨頭聘用呢?
是不是要碼力超群,上來就能徒手寫個AlphaGo呢?還是要眼光毒辣,當場就能構想出未來20年AI發展前景呢?
當然不是!
今天,文摘君就淘來了幾道微軟AI 面試題,同時給出了最基本的解答。(注意是最基本解答哦,歡迎在文末留言給出你認為更好的答案。)
神秘的微軟AI面試題,其實非常平易近人。一起來答答看!
合併k個數列(比如k=2)數列並進行排序
代碼如上。最簡單的方法當然就是冒泡排序法啦。雖然不是最有效的,但卻容易描述和實現。
L1/L2正則度量有什麼區別?
L1範數損失函數也叫做最小一乘法(LAD)以及最小絕對誤差(LAE)。它主要在於最小化目標值(y_i)同預測值(f(x_i))之間的絕對差值之和。
公式一
L2範數損失函數也叫做最小平方誤差(LSE)。它主要在於最小化目標值(Yi)以及預測值[f(xi)]之間差值平方之和。
公式二
對於較大的誤差誤差,L2比L1給出的懲罰更大。此外,加入L2正則後,模型係數會向0聚攏,但不會出現完全為0的情況,而L1損失函數則能使部分係數完全為0。
如何尋找百分位數?
就拿上面這道題目為例吧:過去12小時內共有1000人來過這個購物中心,請估測,截止至何時,購物中心剛好達到30%的總客流量?
我們可以通過多項式線性回歸(polynomial regression)或者平滑樣條(spline smoothing)等技巧作出下圖。
即為30%的客流量對應3000人
從Y值為3000的點畫一條水平線,當與曲線相交時,畫一條垂直線在橫軸上找到對應的時間值就可以啦。
怎麼區分好的可視化與壞的可視化?
針對這個問題,我們會有很多不同的答案。比如,一個不能很好地處理異常值(outliers)的可視化,就不是一個好的可視化。
比如說我們有一個數組,在一系列小數字中有一個很大的數據([1,2,3,4,7777,5,6,9,2,3]),當我們可視化這個數組的時候,會產生如下的圖:
右圖原始圖片;中間圖規範化值;左圖標準化值
怎樣才能更好地可視化這組數據呢?正如上圖所示,即使我們對分析值進行了標準化或者規範化,產生的折線圖依然不能很好地表示這組數組。究竟要怎麼做呢?歡迎留言發表看法。
怎樣更快地計算出逆矩陣?
比如,可以考慮Gauss-Jordan法。
如果是一個2x2的矩陣就很簡單了。
逆矩陣是:
ad-bc≠0
只需要交換a和b,取b和c的負值,然後除以方陣ad-bc。
定義方差
方差是每個數據點與整個數據集平均值之間差值的平方和。換而言之,就是數據的變化性。下面這張圖就很好地解釋了什麼是方差。
首先我們計算出每隻狗和平均身高的差值;為了計算方差,將每個差值平方後加總,再求平均值。
最後,獻上本文出現的所有代碼:
https://colab.research.google.com/drive/1DYimC5CEKeXdT15tbptifYL2v5MPkyHj
相關報道:
https://towardsdatascience.com/my-take-on-microsoft-ai-interview-questions-with-interactive-code-part-1-c271388af633
- 加入AI學院學習 -
※Gluon NLP發布:基於強大的MXNet的高級封裝!
※AI機器人競選日本市長,人工智慧真要統治人類了!
TAG:AI講堂 |