如何学习实验方法?什么时候相关?

数据挖掘 聚类 实验 方法
2022-02-18 10:28:15

我刚从计算机科学专业毕业,具有非常理论的背景,但没有任何数据科学或人工智能经验,我自己努力探索这两个领域。更准确地说,我尝试研究一种类似于 k-means 的玩具子空间聚类算法,并且我认为我成功地学习了基本的优化技术。

所以现在我有一些临时子空间聚类算法,而且......我被卡住了。我如何验证它?在学习期间,我学习了很多形式证明或模型检查技术,但我觉得它们在这里完全无关紧要。我读了几篇 AI 论文,似乎在 Clustering 中有很强的实验验证传统,有很多有效性度量。我的问题是它们对我来说毫无意义。我不明白他们证明了什么,甚至为什么他们是相关的。如果可能的话,我会对关于实验验证方法的一般课程非常感兴趣(如果它真的是一件事!),如果可能的话,有理论依据。

此外,我真的不知道人们在聚类算法中寻找什么好的属性。我应该针对哪些一般定理?我知道这可能是一个与我正在研究的问题太相关的问题——对类似 k-means 的算法的通用答案就足够了。

2个回答

在指标上。一种常见的技术是使用已知标签制作模拟数据。然后看看你的算法能不能重现聚类;如果它不能有问题,如果它可以仍然有问题,但你已经离开了起点。典型的度量包括 ROC 和 AUC(基本上是算法将对象 i 和 j 正确放置在同一类中的次数,以平衡误报)。

另一种策略是使用众所周知的真实数据集进行基准测试。例如经典的鸢尾花数据集。查看您的算法与其他算法相比在速度和准确性方面的表现。

至于人们在寻找什么,这可能意味着很多事情。您最好考虑一下您的算法适用于何处,在该领域找到一个应用程序,并确定它是否适合该用途。

数据科学家与数据工程师不同,因为它是“科学与工程”。

科学方法(如统计、验证、实验设计等)是数据科学家与数据工程师的区别。虽然编程技能仍然必不可少,但它是解决问题的“工具”,而不是“解决问题”本身——我们使用编程工具来收集、处理和分析数据,但巩固结果的是科学方法。

我建议您了解有关统计的更多信息。我也是计算机科学专业的毕业生,我个人从 Udacity(以及之后的其他来源)学习统计数据。我觉得这是一个不错的起点。