共5周:
加油!!!!!
8月19日-8月23日的工作:
1. 再全面的复习一遍ML中的算法,主要为线性回归、逻辑回归、朴素贝叶斯、k均值、支持向量机、Adaboosting、决策树(ID3和CART)、EM算法、Apriori算法、PCA和SVD、LDA分类算法、K邻近算法,共12个算法。
需要详细推导的算法或者是掌握原理的关键点为:
1) 信息熵,信息增益
2) 贝叶斯理论,朴素贝叶斯的假设,连乘的下溢的解决方案。
3) Logistic的cost Function的推导,极大似然估计。 梯度下降、上升算法,以及Logistic regression中的参数的更新。如果使用正则来避免overfitting。
4) 函数间隔,几何间隔,最大间隔分类器的推导过程。拉格朗日对偶,kernel。以及SMO的详细过程
5) Adaboosting中的分类器权重,分类错误率,数据集中数据的权重
6) 线性回归的cost Function的推导,以及最小二乘法的推导。梯度下降法更新系数,正则项避免过拟合。
7) CART中模型误差函数,以及overfitting时候的剪枝策略。
8) 距离度量
9) Apriori 中支持度,可信度定义,频繁项集的寻找,如何从频繁项集中找关联规则。Apriori原理。
10) PCA降维技术中的Sigma的推导。
11) 什么是协同过滤,SVD分解
2. 复习常用的算法和数据结构(需要复习4-5种算法):
1) 概率问题 eg. 蓄水池问题、random生成问题
2) 动态规划问题 eg. 电梯调度、子数组最大和问题(各种变异,二维,首尾相连)、LIS(传统算法与二分加速)、背包问题(01背包,完全背包,混合背包,数组分割、LCS问题(字符串相似度,LCS(子串和子字符串))
3) DFS和BFS问题 eg (电话号码对应的单词,二叉树节点的最大距离,重建二叉树,二叉树的各种遍历,深刻理解剪枝和退出条件,sudo问题)
4) 各种基础的算法(itoa atoi 快拍 堆排序,冒泡 ,希尔 ,kmp, strstr,binary search and so on )
5) 有时间在看一下分治算法。