Machine learning 如何测试机器学习或统计NLP算法实现包?

Machine learning 如何测试机器学习或统计NLP算法实现包?,machine-learning,Machine Learning,我正在测试几种机器学习算法的实现,检查它们是否能够像论文中描述的那样高效工作,并确保它们能够为我们的统计NLP(自然语言处理)平台提供强大的功能 你们能告诉我一些测试算法实现的方法吗? 1) 什么方面? 2) 怎么做? 3) 我必须遵循一些基本步骤吗? 4)当使用不同的编程语言时,我必须考虑分集特定的情况吗? 5) 我必须理解算法吗?我的意思是,如果我真的知道算法是什么以及它是如何工作的,它能提供任何帮助吗 基本上,我们使用C或C++实现算法,工作的Env是Linux/UNIX。我们的测试方法只

我正在测试几种机器学习算法的实现,检查它们是否能够像论文中描述的那样高效工作,并确保它们能够为我们的统计NLP(自然语言处理)平台提供强大的功能

你们能告诉我一些测试算法实现的方法吗? 1) 什么方面? 2) 怎么做? 3) 我必须遵循一些基本步骤吗? 4)当使用不同的编程语言时,我必须考虑分集特定的情况吗? 5) 我必须理解算法吗?我的意思是,如果我真的知道算法是什么以及它是如何工作的,它能提供任何帮助吗

基本上,我们使用C或C++实现算法,工作的Env是Linux/UNIX。我们的测试方法只关注黑盒测试和测试函数的输入/输出。我渴望改进它们,但我现在没有更好的主意


太棒了!!LOL

对于许多机器学习和统计分类任务,度量质量的标准度量是。大多数已发布的算法都会对这些度量做出某种声明,或者您可以自己实现它们并运行这些测试。这将为您所期望的质量提供一个良好的指示性度量

当你谈论一个算法的效率时,这通常是关于一个算法的时间或空间性能的一些陈述,根据其输入的大小或复杂度(通常表示为)。大多数已发布的算法都会报告算法的时间和空间特性的上限。您可以将其用作比较指标,尽管您需要了解一点计算复杂性,以确保您没有欺骗自己。您也可以通过手动检查程序代码来获取这些信息,但这可能不是必需的,因为这些信息几乎总是与算法一起发布的

最后,了解算法始终是一个好主意。它使您更容易知道作为该算法的用户,您需要做什么以确保获得最佳的结果(事实上,还可以知道您得到的结果是否合理),并且它将允许您应用质量度量,如我在本答案第一段中建议的那些度量