创新工厂地狱50题

创新工厂在组建一个人工智能的社区,据说完成3道并且通过专家评审,即可获得新社区邀请资格。专家有李开复,Hinton...
以下是我的回答和50道问题。


有时间的话一定要把这50道题答一遍,这是一个精选笔试面试集合:)

我的回答:

7. 深度神经网络(deep neural network)具体工作原理是怎样的?
深度神经网络是多重非线性变换构成的多个处理层对数据进行高层抽象的算法,或者说是通过复合多层次线性空间的偏线性特征,找到与对象体属性匹配的特征表征。具体是将原始特征通过多个隐藏层组合成为新的表征,然后去匹配目标函数,并通过反向传播算法,不断优化隐藏层系数,使得权重W和补丁bias刚好构成某个抽象的“偏线性”特征。深度神经网络优于普通的机器学习模型在于它是一种张量模型,即多层“隐藏层”和激活函数构成了“高阶特征组合”。


8.CNN(卷积神经网络)、RNN(循环神经网络)、DNN(深度神经网络)的内部网络结构有什么区别?主要用途分别是什么?
CNN的内部结构主要有三个特性 localization , sharing , pooling. 也就是它是一种基于局部特征的表征,前期保留了位置信息。并且pooling一定程度上有抗噪声和旋转干扰的能力。主要用于视觉方面图像有关的任务。
RNN主要是进行时序建模。即当前的输出不仅取决与现在的输入还跟之前之后的输入有关系。RNN内部网络是每一层不仅输出下一层的输入特征还输出隐含状态。隐藏层的更新建模了输入特征的时间依赖关系。RNN主要用于时间序列有关的任务,比如机器翻译,视频字幕生成,时序预测。
DNN是通过隐藏层和激活函数来生成高阶的信息,即原始特征的某种高阶组合来拟合目标的某种特征概念。主要用于自动产生高阶信息作为人工特征的补充。


39.用于数据挖掘的聚类算法有哪些,各有何优势?
常用的聚类算法有
1.基于分层方法,就是把给定数据集进行逐层分解(自底向上和自顶向下),直到满足某种条件。自底向上的方法,开始时每个数据都是一个组,然后通过一定的距离度量把接近的合并。优点是适用于大规模数据,比如T量级,而且不用事先指定聚类个数。

2.基于划分的聚类。将构造K个分组,每个分组代表一个聚类,这里每个分组至少包含一个数据点,每个数据点属于且仅属于一个分组。对于给定的K值,算法先给出一个初始的分组方法,然后通过反复迭代的方法改变分组,使得每一次改进之后的分组方案较前一次好,这里好的标准在于同一组中的点越近越好,不同组中的点越远越好。代表算法有:K-means,K-medoids。优点是时间和空间复杂度低。

3. 基于密度的聚类(density-based methods):其核心思想在于只要一个区域中点的密度大于某个阈值,就把它加到与之相近的聚类中去。基于密度的方法的特点是不依赖于距离,而是依赖于密度,从而克服基于距离的算法只能发现“球形”聚簇的缺点。

4.谱聚类(Spectral Clustering)先将数据转换成邻接矩阵再得出拉普拉斯矩阵,再对拉普拉斯矩阵进行特征分解,把特征向量用于Kmeans聚类。优点是有降维作用,空间复杂度低。

原问题:



1. 神经网络可以用来做任务预测。那么在任务系统中,神经网络能表示出它还需要做的任务吗?(比如打车,需要三个信息(A,B,C)。它已经得到了一个信息A,怎么让系统能走接下的几步,获得得必要的信息呢?)




2.姿态估计(pose estimation)的主流方法有哪些?优点和缺点分别是?




3. Keras,Theano,pytorch,caffe2 哪种框架更好一些,应该怎么尝试学习?




4. 如何调用caffe已经训练好的net?




5. 在所有参数都相同的情况下,同一个模型用theano,tf,pytorch实现,performance差距较大的原因有哪些?



6.神经网络可以实现连续型变量的回归预测吗?如果可以,怎么做?



7. 深度神经网络(deep neural network)具体工作原理是怎样的?



8.CNN(卷积神经网络)、RNN(循环神经网络)、DNN(深度神经网络)的内部网络结构有什么区别?主要用途分别是什么?



9. cnn是如何解决人脸或人体关键点回归问题的?



10. 如何评价rcnn、fast-rcnn和faster-rcnn这一系列方法?




11. 目标检测SSD相对于YOLO与faster-RCNN做了哪些改进?效果怎样?



12.深度神经网络(DNN)是否模拟了人类大脑皮层结构?



13.如何看待Geoffrey Hinton所说的深度学习要另起炉灶,彻底抛弃反向传播?



14.sigmod和kdd近两年的论文,在机器学习方面不容错过的神作?



15.github上有哪些值得学习的关于推荐算法的程序?



16.如何绘制caffe训练过程中的loss和accurary的曲线?



17.在图像识别领域,有没有可以移植到嵌入式移动设备的深度学习算法?



18.caffe,theano,torch,mxnet,tensorflow等诸多工具中,哪款更适合阅读源代码学习?



19.如何评价caffe2?



20.caffe的finetuning是如何更新网络参数的?



21.在 Caffe 中如何计算卷积?



22.迁移学习与fine-tuning有何异同?



23.用matlab做深度学习,有什么工具箱可以直接调用吗?



24.什么是迁移学习 (Transfer Learning)?这个研究方向发展前景如何?



25. 迁移学习中的负迁移是什么?有哪些比较好的资料说明?



26. 在NLP上,CNN、RNN、MLP等方法各有何优劣?




27.支持向量机(SVM)是什么?




28.Linear SVM 和 LR 有什么异同?




29.SVM和logistic各自适用于哪些场景?




30.使用SVM进行分类的时候怎么选择合适的核函数?




31.caffe中的deconvolution和upsample有什么区别?




32.多标签(multi-label)数据的学习问题,常用的分类器或者分类策略有哪些?




33.怎么把深度学习Caffe做成一个动态库,方便在其他应用程序中调用?




34.计算机视觉中,目前有哪些成熟的匹配定位算法?




35.有哪些机器学习、图像识别方面的入门书籍?




36.Python的各种imread函数在实现方式和读取速度上有何区别?(例如skimage.io.imread,PIL.Image.open,matplotlib.image.imread等)




37.caffe SolverParameter中的iter_size参数什么作用?




38.如何从零开始实现一个图像处理库?




39.用于数据挖掘的聚类算法有哪些,各有何优势?




40.什么是无监督学习?




41.AP算法中两个参数的交替过程怎么样通俗的理解?




42.tensorflow中的seq2seq例子为什么需要bucket?




43.如何看待Tensor Comprehensions?与TVM有何异同?




44.如何通过程序估计cache大小?




45.论文中卷积神经网络常见的示意图用什么软件来画比较容易?




46.TensorFlow有哪些令人难以接受的地方?




47.语音识别的技术原理是什么?




48.目前常用的自然语言处理开源项目/开发包有哪些?




49.Python 在网页爬虫、数据挖掘、机器学习和自然语言处理领域的应用情况如何?




50.有哪些比较好的中文分词方案?






你可能感兴趣的:(机器学习)