Нужен алгоритм автоматической классификации профессий?
Есть сайт, где люди указывают у себя в профилях профессию или род занятий. К примеру, «повар в ресторане японской кухни», «администратор клининга» или «водитель-экспедитор». Возникла необходимость классифицировать эти профессии до более общих, то есть по сути собрать людей в группы по профессии и присвоить каждому свою группу. Для моих примеров — «повар», «администратор» и «водитель». Профессий может быть две. К примеру, какой-нибудь «моторист» в идеале должен быть и «мотористом» и «автослесарем».
Нужен алгоритм такой классификации.
Сейчас я делаю в меру понимания и знаний. Я составил список общих профессий из примерно 1200 штук и к каждой из них — список ключевых слов, которые могут характеризовать профессию. Затем построил из этого индекс в поисковом движке Sphinx и подбираю профессию, играя с выкидыванием «незнакомых» индексу слов. Sphinx нужен для учёта морфологии.
Чувствую, что техника такой классификации может быть проще и точнее, пытался гуглить, но ничего внятного не нашёл.
Помогите, пожалуйста, ключевыми словами для гугла и буду особенно благодарен за куски кода с объяснениями логики.
Предлагаю сделать так: составьте фиксированный список из профессий, а если человек в этом списке свою не нашел, то пусть добавляет. В итоге не надо будет ничего интуичить.
Если он добавляет сам, то нужна модерация, после этого другие пользователи смогут выбирать эту профессию, так вы получаете еще и наполнение базы профессий.