1.机器学习算法
- 西瓜书
- 神经网络: neural-networks-and-deep-learning-zh
- 优点:准确率高,可并行计算,逼近复杂的非线性关系,做特征提取
- 缺点:需要大量参数,解释性差,训练时间长
- 种类:CNN(卷积),RNN(循环),DNN(全连接神经元)
- GBDT, GBDT和随机森林比较,GBDT总结
- xgboost,公式推导,原始ppt,xgboost与gbdt区别,参数调优,运行方法
- 神经网络算法:owlqn, SGD, Momentum
- 神经网络分类损失函数
- 激活函数,激活函数作用
- logistic regression,logistic和朴素贝叶斯的区别,LR和softmax关系
- 多分类auc计算
- GeoHash核心原理解析
- 决策树缺失值处理
- 聚类-kmeans
- 聚类-dbscan聚类算法
- 聚类-社区发现Louvain算法 , 算法讲解
- 生成模型vs判别模型
- 标准线性回归,最小二乘求解,为啥线性回归使用最小二乘?
- 概率校准--calibration
- ROC, AUC
- 跳出局部最小值的方法
2.概率和线性代数
3.自然语言处理
- 统计语言模型
- N元文法模型:《数学之美》page54
- 工程技巧,平滑方法:page60
- 分词
- 基于字符匹配:最长词匹配,歧义词和未登录词处理不好
- 基于统计:相邻的字同时出现的次数越多,就越可能构成一个词。 隐马尔科夫模型 + N-gram
- 文本相似度计算
- word2vec
4. 工程知识
-
特征选择
-
r2:方程的确定系数,表示X对Y的解释程度,取值在[0, 1]之间,越接近1表示对Y的解释程度越好 算法具体
-
正则化:把额外的惩罚加到已有模型上,防止过拟合并提高泛化能力
- L1范数:让特征稀疏,很多w变为0
- L2范数:岭回归,改善过拟合,让每个w都很小
- 通俗易懂的好文章 4. L1,L2不同效果的原因
-
规则引擎
-
爬虫
- from sgmllib import SGMLParser
-
推荐系统
-
防止过拟合
- 使用简单的模型 2. 降维 3. L2范数 4.算法本身(svm松弛变量,决策树剪枝)5.增加样本(例如复制图片) 6.drop out 7. early stop
-
归一化原因
- 过大或过小的数值可能导致计算浮点的上溢或下溢
- 不同的数值范围导致不同属性对模型的重要性不同,对优化造成困难,训练时间变长
- 机器学习常用方法(正则)都假设属性取值在以0为均值的附近