Ранжирование всегда самая сложная часть любой из систем поиска информации.Я думаю, что это очень хорошая тема, но вы должны позаботиться о том, чтобы - как можно скорее - определить объем работы.Вероятно, вы не сможете разработать новый механизм IR, а скорее создадите прототип на основе, например, apache lucene.
В настоящее время существует множество наборов данных, включая дамп данных stackoverflow, который предоставит вам всю необходимую информацию.определить богатый вектор характеристик (количество точек, время, вы можете найти темы предыдущего вопроса и т. д., популярность тега) для своего алгоритма ранжирования машинного обучения.В этой части работы вы могли бы, например, классифицировать типы функций (например, специфичные для пользователя, семантические функции - название программного обеспечения в заголовке) и выполнить серию экспериментов, чтобы узнать, какие функции являются наиболее важными, а какие нет для данного набора данных.,
Вторым направлением такого проекта может быть эффективное выполнение обучения.Причиной этого является количество данных на веб-форумах или форумах сообщества, а также изменения на форуме (это будет важно, если вы воспользуетесь особенностями сообщества), например, изменения в технологиях, выпуск нового программного обеспечения и т. Д.
Есть много других тем, связанных с поиском и машинным обучением.Лучшая идея - поискать на scholar.google.com последние опросы о ранжировании, машинном обучении и поиске, чтобы узнать, что является современным.Следующий шаг - поговорить с вашим руководителем MSc.
Удачи!