可能因为报的是研究员岗,所以面试的问题都很数学,太难了。
一面
矩阵连乘的算法复杂度计算
问题1:计算N个矩阵做乘法的时间复杂度。矩阵大小分别为(a0, a1), (a1, a2), ... (an-1, an)。
回答:(a_0*a_1*a_2+a_0*a_2*a_3+...+a_0*a_{n-1}*a_n)
问题2:这里面会存在一个问题,如果更换乘法顺序则会出现不同的计算复杂度,比如三个数相乘复杂度可以是 (a_0*a_1*a_2+a_0*a_2*a_3),也可以是 (a_0*a_1*a_3+a_1*a_2*a_3)。
也就是说矩阵乘法满足结合律,是否有方法使得复杂度最小?复杂度最小是多少?
【没答出来】
掷骰子的次数期望
问题:掷骰子,问能刚好产生全部6个数所需的抛掷次数的期望是多少 ?
答案:
得到第一个点期望 $ E_1 = 6/6 * 1 = 1 $;
第n次得到第二个点概率 (P = (1-5/6)^n-1 * 5/6) 期望是 $ E_2 = 1/p = 6/5 $;
同理,第三个点期望 $ E_3 = 6/4 $;
...
最后全部6个数都抛掷出来的期望是
[ E = E_1 + E_2 + ... + E_6 = 6/6 + 6/5 + 6/4 + 6/3 + 6/2 + 6/1 = 14.7 $$。
## 二面
问题:假设有一个一维世界机器人从原点出发, 机器人任意时刻有0.5的概率向左走,0.5的概率向右走, 问,时刻t位置的期望$E(S_t)$?
【随机游走的题目,都忘了啊。。。没答出来】
答案:[MIT Random Walk](https://www.mit.edu/~kardar/teaching/projects/chemotaxis(AndreaSchmidt)/random.htm)
### L1正则化和L2正则化
问题:L1正则化和L2正则化各自有什么特点?
回答:L1正则化就是在loss function后边所加正则项为L1范数,加上L1范数容易得到稀疏解(0比较多)。L2正则化就是loss function后边所加正则项为L2范数的平方,加上L2正则相比于L1正则来说,得到的解比较平滑(不是稀疏),但是同样能够保证解中接近于0(但不是等于0,所以相对平滑)的维度比较多,降低模型的复杂度。
问题:L1正则化为什么得到稀疏解?
【没说清楚】
答案:
1. 从导数的角度考虑,L1在原点处有突变,这里可被看作是一个极小值,故优化时容易走到这个最小值点——也就是 $w$ 为0处。
2. [图解法和贝叶斯先验法](https://zhuanlan.zhihu.com/p/35356992)]