算法工程师路径
算法和理论基础
- 书籍
- 《统计学习基础》
- 数学基础
- 矩阵变换
- 特征值
- 统计学习
- logistic
- SVM
- 决策树
- KNN及各种聚类方法
- 优化方法
- 梯度下降
- 牛顿法
- 各种随机搜索算法
- 工程
- C
- MPI
- Python
- Hadoop
常见问题收集
算法
- LR
- LR为什么用sigmoid函数。这个函数有什么优点和缺点?为什么不用其他函数?
- L1正则为什么可以把系数压缩成0,坐标下降法的具体实现细节
- LR的损失函数。sigmoid函数由指数族分布,加上二项分布导出来的。损失函数是由最大似然估计求出的。
- 为什么损失函数有个负号。
- LR和SVM有什么不同。 SVM决策面只由少量的支持向量决定,而LR的话是所有样本都会参与决策面的更新。SVM对于异常点不敏感,而LR敏感。SVM更加健壮,决策面不受非支持向量影响。
- SVM
- SVM原问题和对偶问题关系?原问题是凸二次规划问题,转换为对偶问题更加高效。
- SVM怎么防止过拟合
- KKT条件用哪些,完整描述
- alpha系数有多少个。样本点的个数。
- 决策树
- 决策依据
- 划分依据:信息增益(信息熵的来源,等概率时熵最大)、信息增益率、基尼系数。
- 划分方法(基于信息增益的)
- C4.5比较ID3的优点。
- 决策树如何防止过拟合。剪枝,前剪枝和后剪枝。REP剪枝。C4.5悲观剪枝
- 聚类
- K-means聚类个数选择,做什么样的试验来确定K
- Kmeans中,现在给你n个样本点不在欧式空间中,无法度量距离。现在给了一个函数F,可以衡量任意两个样本点的相似度。请问Kmeans如何操作?
- 优化
- 免过拟合的方法:决策树剪枝、L2正则和L1正则
- 为什么L1正则可以实现参数稀疏
- 过拟合:在训练集表现好,在测试集表现一塌糊涂
- 过拟合的解决方法
- bagging和boosting
- NN
- RNN
- RNN原理
- LSTM
- RNN
工程
- 进程和线程
- 线程安全的理解
- 有哪些线程安全的函数
- 数据库中主键、索引和外键。以及作用
- SQL
- SQL中inner join 和outer join的区别?
- spark
- spark原理
- spark Executor memory 给16G executor core 给2个。问每个core分配多少内存
- Spark是多线程模式,怎么退化为多进程模式。
- hadoop
- 重要两点:shuffle,map、reduce分别分配资源,可以细粒度控制资源占用情况,有利于超大任务平稳正常运行。
- 数据结构
- 一个有向图,怎么检测有环
- 循环依赖这个怎么解决
- python
- Python如何定义一个私有变量
项目
- 有一堆已经分好的词,如何去发现新的词?
- 电商搜索框,每天有500W的搜索query。针对新来的一个query,给出和它最相似的100个query。
- 两个4G的文件(每个文件可能有重复),里面全都是数字。现有内存1G,求这两个文件的交集。
- 写的程序跑的非常慢,多方面分析这个问题?
- SQL中inner join 和outer join的区别?
- 10分钟内,恶意IP访问检测(10分钟内访问次数超过1024即为恶意访问)
- 有200W个FAQ,如何用分类模型做分类。用倒排索引,把FAQ的问题分词,每个词对应多个FAQ。新来的query分词,每个词对应的FAQ拉出来。再在这个里面做分类。
- 每个句子都被打上标签正向或者负向情感,如果我想得出句子中的每个词的情感倾向
- 一个景点有很多信息,位置、门票、类型等等。设计一个知识图谱。这个事情如果交给你来做,你会怎么推进
- 有100亿网页,每个网页都有一个标签。有可能一个标签对应上百万标签,有的标签只对应几个标签。要做一个数据去重,每个标签只要1个网页。
- 文本情感分类项目,文本向量用tf-idf这种有什么问题没有?不能捕获到上下文之间的联系。以后尝试用doc2vec这种。
- 上一篇 Word2Vec 笔记
- 下一篇 C/C++ 调用Python