Strugglingpanda / Machine-Learning_ZhouZhihua

Exercises answers to the book "machine-learning" written by Prof. Zhou Zhihua of Nanjing University

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Machine-Learning (Zhou Zhihua)(周志华《机器学习》课后练习)


My answers (i.e. ideas, code) for the book "Machine Learning (机器学习)" written by Prof. Zhou Zhihua.

ps. all the code exercises are implemented by Python in eclipse-pydev env.

for more info: welcome to my blog: PnYuan - 周志华《机器学习》习题解答 and CSDN - 周志华《机器学习》课后习题解答系列

(更新中...2017-7-25)

Ch6.Support Vector Machine (支持向量机)

练习包括(exercises include):

  • 支持向量分析实验(code here);
  • 支持向量机与BP网络/C4.5决策树对比实验(experiment of SVM/BP/C4.5)(code here);
  • 线性核SVM与LDA的关系(comparison of linear kernel SVM and LDA);
  • 高斯核SVM与RBF网络的关系(comparison of RBF kernel SVM and RBF net);
  • SVM对噪声敏感的原因(reason of noise-sensitive);
  • SVR实验(experiment of SVR)(code here);
  • 核对率回归设计(about kernel logistic regression - KLR);

Ch5.Neural Networks (神经网络)

练习包括(exercises include):

  • 激活函数选择考虑(selection of activation function);
  • Sigmoid激活函数与对率回归的联系(the relationships between Sigmoid() and Logistic Regression);
  • BP算法推导(conduction of BP algorithm);
  • 学习率分析(analysis of learning rate in NN training);
  • 标准BP算法和累积BP算法对比实验(comparative experiment of BP)(code here);
  • BP算法改进(improvement of BP algorithm)(code here);
  • RBF神经网络实现(implementation of RBF network)(code here);
  • SOM神经网络实验(experiment of SOM network)(code here);
  • 卷积神经网络实验 - 字符识别(experiment of CNN on MNIST)(code here);

Ch4.Decision Tree (决策树)

练习包括(exercises include):

  • 决策树划分选择准则;
  • 编程实现ID3算法(implementation of ID3)(code here);
  • 编程实现CART算法与剪枝操作(implementation of CART and pruning)(code here);
  • 多变量决策树生成方式(multivariate decision tree);
  • 非递归决策树生成方法(generation of decision - non-recursive approach using DFS/BFS)

Ch3.Linear Model (线性模型)

练习包括(exercises include):

  • 分析偏置项b(bias terms);
  • 证明对数似然是凸函数(convex functions);
  • 编程实现对率回归(implementation of logistic regression)(code here);
  • 实验比较k-fold_CV和LOOCV(analysis of cross-validation)(code here);
  • 编程实现线性判别分析(implementation of LDA)(code here);
  • 线性判别分析的非线性拓展(nonlinear stretching of LDA);
  • 最优ECOC编码方式;
  • 多分类到二分类分解时类别不平衡的考虑(class-imbalance)。

Ch2.Model Evaluation and Selection (模型评估与选择)

练习包括(exercises include):

  • 分层抽样(stratified sampling)划分训练集与测试集;
  • 留一法(leave-one-out)与k-折交叉验证法(k-fold cross validation)比较;
  • F1值与BEP的关联;
  • TPR、FPR、P、R之间的关联;
  • AUC推导;
  • 错误率与ROC的关系
  • ROC曲线与代价曲线(cost-curve)的对应关系;

Ch1.Introduction (绪论)

练习包括(exercises include):

  • 求版本空间(version space);
  • 析合范式(disjunctive normal form)提升假设空间(hypothesis space);
  • 噪声环境(noise)下归纳偏好(inductive bias)考虑;

About

Exercises answers to the book "machine-learning" written by Prof. Zhou Zhihua of Nanjing University


Languages

Language:HTML 60.2%Language:Python 39.7%Language:MATLAB 0.2%