机器学习数学基础: 数据生成器与学习器的关系

我在接触机器学习的过程中, 被一些学习器所洗脑, 如 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) 等等. 这导致了我对数据内部规律的长期忽略. 最近才开始体会到数据生成器的重要性.

1. 数据生成器

以结构化数据为例, 数据生成器的输入包括:

  1. 属性 (特征) 个数 m m m;
  2. 各个属性服从的分布 (概率密度函数);
  3. 属性之间的关系, 即联合分布 (联合密度函数);
  4. 数据量 n n n.

输出则为按照这些函数随机生成的 n × m n \times m n×m 矩阵.

说明:

  1. 如果要获得枚举值, 使用相应阈值即可 (如小于 0 为负例, 否则为正例);
  2. 一般假设各条数据独立, 生成 n n n 条数据不超过 1 条数据的 n n n 倍时间, 所以数据生成起来很快, n n n 可以非常大.

现成的招数点击如下链接: 使用python进行数据生成.

2. 学习器

以回归问题为例, 学习器的输入包括:

  1. 数据集, 一个 n × m n \times m n×m 矩阵. 也可以表示条件矩阵 X \mathbf{X} X 和标签矩阵 Y \mathbf{Y} Y, 参见 机器学习的数学基础 5: 数据集的混合表示法.
  2. 指定的决策属性, 通常是最后一个.

输出为一个函数
f : R m − 1 → R f: \mathbb{R}^{m - 1} \rightarrow \mathbb{R} f:Rm1R.

优化目标:
min ⁡ ∑ i = 1 n l ( f ( x i ) , y i ) \min \sum_{i = 1}^n \mathcal{l}(f(\mathbf{x}_i), y_i) mini=1nl(f(xi),yi).

3. 两者关系

联系如下:

  1. 生成器是一个正向的过程 (由概率密度函数到数据), 学习器是一个逆向的过程 (由数据到概率密度函数, 但一般需要对分布的类型作假设, 如高斯);
  2. 生成器属于概率的范畴, 学习器属于统计的范畴;
  3. 类似于地震波正演与反演的关系;
  4. 类似于老师出题与学生做题 (如果目标是获得相应的概率密度函数).

区别如下:

  1. 生成器可以获得大量的 (理论上为无穷) 数据, 学习器所依赖的数据量有限;
  2. 多数学习器并不去推导概率密度函数 (或相关参数), 而仅仅是建立一个模型进行预测. 所以两者之间并非真正意义的逆过程. 这导致很多学习器表面看起来就是“猜”, 缺乏理论支撑.
    2.1 k k kNN 就是不需要理论的一个典范. 当然, 它抓住了客观世界的本质: 条件属性越相似, 决策属性也应该越相似. 见: https://blog.csdn.net/minfanphd/article/details/117505221.
    2.2 决策树 ID3 的论文题目为 Inductive of decision trees, 它只是作了一定的归纳. 信息熵看起来美, 但仅仅用于启发式地选择分裂属性, 和数据内在的分布没有任何关系.
    2.3 NB 探索了属性之间的关系, 有一定的理论性. 在数值型数据的 NB 算法中, 还需要对数据分布进行假设, 这使其理论性更强. 参见 日撸代码300行(51-60天,kNN 与 NB). 条件属性之间的独立性假设简单粗暴, 但适用性强.

4. 讨论

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.

5. 小结

自己写一个数据生成器, 再写一个学习器, 你就会有更多体会.


未完待续

你可能感兴趣的:(计算机数学基础,机器学习,python)