gpt4 book ai didi

performance - Apache Mahout 性能问题

转载 作者:行者123 更新时间:2023-12-03 01:51:44 24 4
gpt4 key购买 nike

过去几天我一直在与 Mahout 合作,尝试创建一个推荐引擎。我正在从事的项目有以下数据:

  • 1200 万用户
  • 200 万件商品
  • 1800 万个用户项 bool 推荐
  • 我现在正在试验我们拥有的全套的 1/3(即 18M 推荐中的 6M)。在我尝试的任何配置中,Mahout 提供的结果都非常令人失望。有些推荐需要 1.5 秒,而另一些则需要一分钟多的时间。我认为合理的推荐时间应该在 100 毫秒左右。

    为什么 Mahout 工作这么慢?
    我使用以下 JVM 参数在 Tomcat 上运行该应用程序(尽管添加它们并没有产生太大区别):

    -Xms4096M -Xmx4096M -da -dsa -XX:NewRatio=9 -XX:+UseParallelGC -XX:+UseParallelOldGC

    以下是我的实验的代码片段:

    用户相似度1:

    DataModel model = new FileDataModel(new File(dataFile));
    UserSimilarity similarity = new CachingUserSimilarity(new LogLikelihoodSimilarity(model), model);
    UserNeighborhood neighborhood = new NearestNUserNeighborhood(10, Double.NEGATIVE_INFINITY, similarity, model, 0.5);
    recommender = new GenericBooleanPrefUserBasedRecommender(model, neighborhood, similarity);

    用户相似度2:

    DataModel model = new FileDataModel(new File(dataFile));
    UserSimilarity similarity = new CachingUserSimilarity(new LogLikelihoodSimilarity(model), model);
    UserNeighborhood neighborhood = new CachingUserNeighborhood(new NearestNUserNeighborhood(10, similarity, model), model);
    recommender = new GenericBooleanPrefUserBasedRecommender(model, neighborhood, similarity);

    项目相似度1:

    DataModel dataModel = new FileDataModel(new File(dataFile));
    ItemSimilarity itemSimilarity = new LogLikelihoodSimilarity(dataModel);
    recommender = new GenericItemBasedRecommender(dataModel, itemSimilarity);

    最佳答案

    在 Mahout 社区通过其邮件列表提供的慷慨帮助下,我们找到了解决我的问题的方法。与该解决方案相关的所有代码都已提交到 Mahout 0.6 中。更多详情可参见相应JIRA ticket .

    使用 VisualVM,我发现性能瓶颈在于项间相似度的计算。 @Sean 使用一个非常简单但有效的修复解决了这个问题(有关更多详细信息,请参阅 SVN commit)

    此外,我们还讨论了如何改进 SamplingCandidateItemsStrategy以更好地控制采样率。

    最后,我通过上述修复对我的应用程序进行了一些测试。所有建议花费的时间都不超过 1.5 秒,其中绝大多数花费的时间都不超过 500 毫秒。 Mahout 可以轻松地每秒处理 100 个推荐(我并没有试图强调这一点)。

    关于performance - Apache Mahout 性能问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8240383/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com