排名始终是任何信息检索系统中最难的部分。我认为这是一个非常好的主题,但你必须尽快 - 尽快 - 确定工作范围。可能你不能开发新的红外引擎,而是建立一个基于例如apache lucene的原型。
目前有很多数据集包括stackoverflow数据转储,它为您提供了定义丰富的特征向量所需的所有信息(点数,时间,您可以挖掘上一个问题的主题等,标记的流行度)学习排名算法。在这部分工作中,您可以,例如,对特征类型进行分类(例如,用户特定的,语义特征 - 标题中的软件名称),并执行一系列实验以了解哪些特征最重要哪些特征不适用于给定数据集。
这样一个项目的第二个方向可以是如何有效地进行学习。其背后的原因是网络或社区论坛中的数据量以及论坛中的变化(如果您采用社区特定功能,这将非常重要),例如技术变更,新软件发布等。
还有许多与搜索和机器学习相关的主题。最好的想法是搜索 scholar.google.com 最近关于排名,机器学习和搜索的调查论文,以了解最先进的技术。下一步是与您的MSc主管交谈。
祝好运!
你说的一切都很好,应该做,但你忘记了最重要的部分:
证明您的算法比其他算法更好和/或更快,具有良好的实验和一些统计数据(p值,置信区间)。
如果你这样做并说服人们你的算法是有用的,你肯定不会失败:)