笔记:机器学习算法概论

1.建模与问题解决流程
(1)数据处理
(2)特征工程
(3)模型选择
(4)寻找最佳参数:交叉验证
(5)模型分析与模型融合

2.机器学习工业应用领域
(1)经济相关:股市+房价
(2)能源相关:产能预测+分配与合理利用
(3)NLP相关:检索+分类+相似度
(4)互联网用户行为:CTR预测[点击通过率]
(5)推荐系统相关:电商推荐

3.机器学习常用算法
(1)无监督式学习:在未加标签的数据中,试图找到隐藏的结构
-聚类和降维:SVD + PCA + K-means
(2)监督式学习:从标签化数据集中推断出函数关系
-回归(线性+多项式)+ 决策树 + 随机森林
-分类:KNN + trees + 逻辑回归 + 朴素贝叶斯 + SVM

4.机器学习常用工具(python库)
(1)scikit-learn:包含大量常用的机器学习算法(速度不是最快但算法最全+封装性最好)
(2)gensim:自然语言处理
(3)matplotlib:绘图(可视化)
(4)pandas:数据预处理(数据清洗)
(5)XGBoost:分类和回归

5.解决问题流程
(1)数据预处理
-数据清洗:不可信的样本丢掉+缺省值极多的字段考虑不用
-数据采样:保证样本均衡
(2)特征工程
-过滤性:sklearn.feature_selection.SelectKBest
-包裹性:sklearn.feature_selection.RFE
-嵌入式:sklearn.feature_selection.SelectFromModel+Linear model,L1正则化
(3)模型参数选择
-交叉验证:sklearn.grid_search.GridSearchCV

6.模型融合
(1)Bagging
(2)Stacking
(3)Boosting(Adaboost)