我没有在Hadoop上做过任何开发,但我正在考虑为我正在研究的神经网络爱好项目进行调查。
据我所知,hadoop允许在多台机器上存储,管理和处理数据。
我想要执行代码,在每台机器上创建神经网络,训练然后将最好的网络返回给服务器。
我想知道的是,我是否可以使用Hadoop在所有机器上执行csharp或c ++代码?如果是这样,怎么办呢?
我很感激所提供的任何帮助和建议。
答案 0 :(得分:1)
绝对。看看" Hadoop MapReduce Streaming"。
这允许您的任何可执行文件用作映射器或减速器。
它的工作原理如下:
有关详细信息,请参阅本教程:https://azure.microsoft.com/en-us/documentation/articles/hdinsight-hadoop-develop-deploy-streaming-jobs/
或官方Apache文档:https://hadoop.apache.org/docs/r2.7.2/hadoop-streaming/HadoopStreaming.html
顺便说一下 - 请关闭微软的Mapreduce.SDK。这看起来很有希望,但似乎是一个死的项目。
在您的情况下,您可能希望将ANN的培训和测试实施为映射器,将评估结果写为输出。您可以手动下载和检查所有这些结果,也可以提供一个减速器,它可以选择最佳网络,并只将一个结果写入最终结果数据。