如何进行探索性数据分析以选择合适的机器学习算法

机器算法验证 机器学习 探索性数据分析
2022-01-17 11:48:44

我们正在通过机器学习研究机器学习:概率视角(Kevin Murphy)。虽然文本解释了每种算法的理论基础,但它很少说在哪种情况下哪种算法更好,并且当它这样做时,它没有说如何判断我处于哪种情况。

例如,对于内核的选择,我被告知要进行探索性数据分析以衡量我的数据有多复杂。在简单的二维数据中,我可以绘制并查看线性或径向内核是否合适。但是在更高维度上做什么呢?

更一般地说,人们在选择算法之前说“了解你的数据”是什么意思?现在我只能区分分类与回归算法,线性与非线性算法(我无法检查)。

编辑:尽管我最初的问题是关于普遍的经验法则,但我被要求提供有关我的特定问题的更多信息。

数据:每行代表国家/地区月份的面板(总共约 30,000 行,覆盖约 15 年的约 165 个国家)。

响应: 5 个感兴趣的二元变量(即当月是否发生抗议/政变/危机等)。

特征:~ 400 个变量(连续的、分类的、二元的)详细说明了前 2 个国家月的一系列特征(可以创建更长的滞后)。我们只使用滞后变量,因为目标是预测。

示例包括汇率、GDP 增长(连续)、新闻自由水平(分类)、民主、邻居是否有冲突(二元)。请注意,这 400 个特征中有很多是滞后变量。

2个回答

这是一个宽泛的问题,没有简单的答案。在 CMU,我教授了一个为期 3 个月的关于这个主题的课程。它涵盖了以下问题:

  1. 使用预测来了解变量和整体分布结构之间的相关性。
  2. 如何通过连续建模残差来建立回归模型。
  3. 确定何时将非线性交互项添加到线性模型。
  4. 如何在 knn 与决策树与逻辑分类器之间做出决定我浏览了许多 UCI 数据集,并展示了如何在运行它们之前判断哪个分类器会获胜。

遗憾的是,该课程没有视频或教科书,但我做了一个总结课程要点的演讲。我不知道任何涵盖相同领域的教科书。

您可以在数据中检查一些内容。

1 - correlation between variables
2 - categorical variables or continuous variables?
3 - relation between number of samples and number of variables
4 - are the samples independent or is it a time series? 

根据这些要点以及要从数据中提取的信息类型,您可以决定使用哪种算法。