我在接触机器学习的过程中, 被一些学习器所洗脑, 如 k k kNN, 决策树, Naive Bayes (NB), Supoort vector machines (SVM), Back-propagation artificial neural networks (BP-ANN), Matrix factorization (MF). 学习器的评价指标往往是分类精度 (accuracy)、回归误差 (mean absolute error, MAE; root mean squared error, RMSE) 等等. 这导致了我对数据内部规律的长期忽略. 最近才开始体会到数据生成器的重要性.
以结构化数据为例, 数据生成器的输入包括:
输出则为按照这些函数随机生成的 n × m n \times m n×m 矩阵.
说明:
现成的招数点击如下链接: 使用python进行数据生成.
以回归问题为例, 学习器的输入包括:
输出为一个函数
f : R m − 1 → R f: \mathbb{R}^{m - 1} \rightarrow \mathbb{R} f:Rm−1→R.
优化目标:
min ∑ i = 1 n l ( f ( x i ) , y i ) \min \sum_{i = 1}^n \mathcal{l}(f(\mathbf{x}_i), y_i) min∑i=1nl(f(xi),yi).
联系如下:
区别如下:
EM 算法、概率矩阵分解 Probabilistic matrix factorization, PMF 都用到了 maximal likelihood, 是数理统计的招数.
我们在做机器学习理论分析的时候, 必须要增加一些基础假设, 否则条件不够, 没法推导. 参见 http://www.fansmale.com/publications.html 中
39 Yan-Xue Wu, Xue-Yang Min, Fan Min, Min Wang. Cost-sensitive active learning with a label uniform distribution model. International Journal of Approximate Reasoning. (2019-02) 49-65.
46 Min Wang, Yao Lin, Fan Min, Dun Liu. Cost-sensitive active learning through statistical methods. Information Sciences. (2019) 460-482.
自己写一个数据生成器, 再写一个学习器, 你就会有更多体会.
未完待续