3091?1442652665

【任务】 匹配算法优化迭代过程的处理 正常


湛云添加于 2015-09-17 22:34

目前匹配算法优化后,每次都需要将之前的匹配结果清空然后重新匹配。我也不断在尽量简化匹配过程,尽可能提高匹配效率。之前的过程中,启了四个匹配过程同时跑,到跟上帖子进来的速度大概花了3天。随着帖子数量不断增加,在目前有限的硬件资源情况下,迭代过程可能会需要更长的时间。据之前的统计,匹配主要耗时过程如下:

1.首先最耗时的是在入库过程。之前的匹配结果大致有2亿条,加上维护数据库索引,这个过程大概就需要50个小时以上。

2.匹配算法现在包括项目名与帖子标题、项目名与帖子标签、项目别名与帖子标题、项目标签和帖子标题、项目标签和帖子标签匹配5个过程,其中项目名因为需要先分词再匹配,相对比较耗时。

优化每次优化的迭代过程的大致想法为:

    跑一个比较粗略的匹配过程,尽可能将召回率提高到99%,每次优化后的匹配过程只基于这些匹配到了项目的帖子,这可以减少匹配过程中读帖子、帖子标签的匹配、建帖子索引的时间,也缩小了帖子索引的大小,提高匹配时的搜索效率。具体优化多少待测试。

回复(3)
  • 11?1648889181
    王涛 8年前

    1. 入库过程是指匹配结果的入库吗?如果是的话,那么分两步匹配的第二步匹配过程中需要入库的匹配结果并不会大量减少,二步策略也没法提供入库过程的耗时吧? 2.项目名的分词应该是一次完成后续不需要再重新分词啊,每次重跑匹配都要重新分词吗? 我认为需要先针对现有匹配过程进行实验分析确认,在匹配过程中到底是哪些个环节最耗时,哪些环节是可以利用上一次匹配结果而不需要再次重做的。把这两点搞清楚之后我们再有针对性的设计优化策略进行实施

  • 5?1460204756
    尹刚 8年前

    不仅是准确的预测,还包括尽可能的性能优化、效果优化

  • 5?1460204756
    尹刚 8年前

    很好的分析和思考!建议小规模实验,做出准确的时间预测后,再完整实施。

0?1470885445
登录后可添加回复
  • 当前状态 新增
  • 选定优先级 正常
  • 指派给 湛云
  • 里程碑 --
  • 开始日期 2015-09-17
  • 结束日期
  • 预计工时(H) 0.00 小时
  • 完成度 0%
  • 关联Commit

© Copyright 2007~2021 国防科技大学Trustie团队 & IntelliDE 湘ICP备 17009477号

问题和建议
还能输入50个字符 提交

加入QQ群

关注微信APP


×