BIGO 面试题
python
python中的不可变数据类型,不允许变量的值发生变化,如果改变了变量的值,相当于是新建了一个对象,而对于相同的值的对象,在内存中则只有一个对象,内部会有一个引用计数来记录有多少个变量引用这个对象;可变数据类型,允许变量的值发生变化,即如果对变量进行append、+=等这种操作后,只是改变了变量的值,而不会新建一个对象,变量引用的对象的地址也不会变化,不过对于相同的值的不同对象,在内存中则会存在不同的对象,即每个对象都有自己的地址,相当于内存中对于同值的对象保存了多份,这里不存在引用计数,是实实在在的对象。”
5. 深浅拷贝,引用,程序查错
6. python什么数据是可比较的,什么是不可比较的
7. python2跟python3的区别 https://blog.csdn.net/qq_39521554/article/details/80855086
8. python3中基类怎么运作的
9. “==”的具体实现机制
10. python2和python3的区别(print, raw_input, xrange, 整除除法)
11. 类的继承和基类
12. __new__和__init__(__new__会实例化类,在__init__之前调用,__init__初始化实例)
13. 装饰器,@property
14. mutable和immutable(后来有详细地问 a="abc", a+="d" / a=[1], a.append(2) 时的内存变化引导我)
11. 类的继承和基类
12. __new__和__init__(__new__会实例化类,在__init__之前调用,__init__初始化实例)
13. 装饰器,@property
14. mutable和immutable(后来有详细地问 a="abc", a+="d" / a=[1], a.append(2) 时的内存变化引导我)
C++部分
7.C++中虚析构函数的作用、static的作用和特点
8. 虚函数,STL相关
虚函数
9. C++中什么是左值什么是右值
左值引用和右值引用
10. 指针传递和引用传递
11. 进程和线程
线程间通信
有哪些线程锁(生产消费者模型)
10. 指针传递和引用传递
11. 进程和线程
线程间通信
有哪些线程锁(生产消费者模型)
数学题部分
2.请你讲一下矩阵的特征值和特征向量的含义?以及在深度学习中的应用? https://www.matongxue.com/madocs/228.html
4. 圆周上找三个点、构成锐角三角形的概率
5.计算圆内弦长的期望(期望计算公式)
6. 给四个点的坐标,判断四个点是不是能够构成菱形
深度学习、机器学习
- resnet 和resnext 发展历程、优缺点 https://blog.csdn.net/GL3_24/article/details/94884645
- mobelNet https://zhuanlan.zhihu.com/p/70703846
- 超分辨率评价指标、计算公式
- 超分辨率问题设计深度网络上的注意事项和主要关注点,超分辨率问题和别的问题有什么区别。
- 从结构原理上对比超分最先进的网络特点以及优缺点
- PCA原理和执行步骤 https://zhuanlan.zhihu.com/p/77151308
- 了解的图像纹理描述方法(讲了LBP等)https://blog.csdn.net/heli200482128/article/details/79204008
- 手写了三层神经网络的反向传播...
- l1和l2损失,泛化误差,L1和L2正则,梯度下降原理,优化器和正则化关注点的差异性(原问题忘了,大概是这个),SVD原理数学推导, 降维方法还有哪些,并做推导,现场编程(在数组中找出和等于一个数的所有组合,leetcode原题),TF和torch的区别,如何去压缩模型,OpenCV用过哪些API,会GPU编程吗
- SVM的数学公式以及推导过程
- SVM拉格朗日乘子的原理
-
- KKT条件内容和原理
- SVM的软间隔
- 合页损失函数
- 批正则化BN的原理和作用,在训练和测试时有什么不同
- dropout的原理和作用,在训练和测试时有什么不同 https://blog.csdn.net/songyunli1111/article/details/89071021
- 处理数据集不平衡问题
- 什么是梯度消失,什么情况导致梯度消失,处理梯度消失的方法
- 什么是梯度爆炸,梯度爆炸的处理方法 https://zhuanlan.zhihu.com/p/33006526?from_voters_page=true
-
- 超分辨率中像素提升用的什么办法,亚像素卷积层的原理
- 图像质量评价指标PSNR、SSIM,结构相似度的计算公式
- pytorch模型训练过程中net.train()和net.eval()的区别,造成区别的原因
- BN层的作用,BN层是在哪个维度上操作的
- vgg和resnet的区别
- CNN在框架中的实现方式
- 给一个特征图,已知步长,卷积核大小和padding,求输出特征图大小
- 逻辑回归损失函数怎么得来的,极大似然估计的形式
- 线性回归的模型参数怎样计算(梯度下降法,最小二乘法)
- 最小二乘法和极大似然估计的关系 http://blog.sina.com.cn/s/blog_4b12446d010191ri.html
- Relu和Sigmoid的优缺点说一下
- ResNet的优缺点说一下
- 交叉熵和KL散度的联系 https://blog.csdn.net/b1055077005/article/details/100152102
- WGAN怎么解决模式崩塌问题的
- 1.评价标准,精确率,召回率2.mAP计算方式3.目标检测有一个类别AP很低怎么办
- XGBoost思想,具体怎么做的,怎么选取特征的
- dcn可变形卷积
- 亚像素卷积,一般上采样会有哪些问题
- 为什么超分没有用L2 loss
- AUC怎么计算
- ResNet结构
- .ROC曲线,他的横坐标和纵坐标,如果正负样本不均匀ROC曲线会变吗
- 网络结构的演进,从AlexNet到DenseNet
- SVM的具体实现机制,整个流程
- 各种分类网络简述,mobilenet具体实现
- RCNN→Fast RCNN→Faster RCNN的内容
- SVM的目标,用到的数学方法(其中具体问了KKT条件是什么和为什么),有哪些trick(其实是问的核函数),还问了松弛因子和惩罚因子
-
1、讲项目,问除了论文里的方向还对哪些方向有了解2、卷积底层的实现方式,在caffe里这个方法叫什么名字(im2col)3、pytorch 中train和eval下有什么不同4、BN计算的维度; dropout在训练和测试时不同,怎么保证测试结果稳定5、vgg和resnet6、卷积后特征图大小的计算公式,卷积的计算量,depth-wise的计算量,空洞卷积了解吗7、除了梯度下降,线性回归还能怎么求解8、逻辑回归怎么推导出来的9、极大似然估计
-
编程题
- 从一个低字节的int型变量中分别提取每个字节的数据(&0x000F然后后移4位,当时脑子一片空白,什么都不记得了)
- 从两个排序好的数组中找出中位数(合并数组,分奇偶求中位数,也很简单)
- 进阶版的翻转字符串
- 编辑距离
- 二维数组从左往右递增,从上往下递增
- 最大连续字序列的和与积,求和的说了一下思路,求积是手撕的
- top-k小的数
- leetcode 358
- 顺时针打印矩阵
- 数组中只出现一次的数
- leetcode 53
- 递增序列和为S的两个数