有没有类似于Mahout的.NET库?你能推荐一些用于机器学习的库吗?
回答:
我不知道有类似于Apache Mahout的基于.NET构建的库,但我想你可以通过以下方法来接近(你能接近的程度取决于你试图做的事情的具体细节)。
Mahout实际上是基于Apache Hadoop实现的一系列标准机器学习算法,以使它们能够扩展到大型数据集上。因此,要在.NET环境中达到同样的效果,你需要一个分布式计算解决方案(为了保持Mahout的精神,我会使用Map/Reduce实现),以及一个机器学习库。然后你可以将学习任务的计算传递给你的Map/Reduce集群。
对于Map/Reduce实现,你有以下选择 – 有一个由MySpace开发的开源Map/Reduce实现Qizmt;还有一个尝试从Java到C#进行类对类、API对API移植的Hadoop的Hadoop.NET;最后但同样重要的是,你可以通过流式传输来使用Hadoop本身。
对于机器学习,你有以下.NET库 – 对于普通的贝叶斯推断,有微软自己的Infer.NET;另一个简单的机器学习库是Machine Learning for .NET;最后,我所知道的.NET上最全面的机器学习/数值计算库是Accord.NET。