Алгоритм поиска резюме - PullRequest
       6

Алгоритм поиска резюме

1 голос
/ 13 октября 2010

Я строю сайт вакансий - да, их пока недостаточно. Одна из проблем, с которой я столкнулся в своем исследовании, заключается в том, как сопоставить соответствующие резюме с заинтересованными рекрутерами. Самым скучным решением, о котором я подумал, является использование текстового анализа для анализа резюме по указанным тэгам рекрутерам, что имеет недостаток: резюме может быть заполнено скрытыми ключевыми словами или модными словами. Тогда интересно выяснить, как обойти это. Что было бы более интересным способом решения этой проблемы? (Может быть, какой-то алгоритм машинного обучения? Тогда тебе тоже придется тренировать этого зверя.)

Так что я пока не знаю, как я это сделаю. Я буду рад любым предложениям, которые вы могли бы предложить.

Ответы [ 4 ]

2 голосов
/ 13 октября 2010

Разобрать произвольное текстовое резюме в слова.Удалить стоп-слова (и, или, но, и т. Д.).Сохраните оставшиеся слова в базе данных вместе с резюме.

Сначала вам понадобится специалист по предметам, который будет оценивать резюме по запросу рекрутеров.Эксперт оценит, скажем, 0-100, насколько хорошо каждое резюме соответствует заданному запросу.Как только этот процесс загружен, вы можете использовать один из классических алгоритмов сопоставления, чтобы выбрать резюме, которые кажутся близкими к тем, которые были хорошо оценены экспертами.

Вероятно, начните с простого N ближайшегоСоседи и переход к более изощренным, таким как Анализ главных компонентов или Разложение по сингулярным значениям позже.

Вы можете найти подробные обсуждения и код для реализации этих алгоритмовна форуме Netflix Prize

2 голосов
/ 13 октября 2010

Не позволяйте кандидатам писать простое резюме. Вместо этого создайте форму с различными полями (полученными степенями (какие учреждения?), Ожидаемой зарплатой, уровнем опыта / навыков в конкретной технологии, типом работы (договорная, постоянная), расстоянием работы от определенного адреса и т. Д.). Точно так же создайте форму с различными соответствующими областями для работодателей. Создайте эти формы таким образом, чтобы было возможно сопоставление одной формы с другой. Оставьте как можно больше полей необязательными. Затем используйте алгоритм, который наиболее подходит для соответствия этим формам. Таких алгоритмов должно быть два: один, с помощью которого кандидат может искать работу, другой работодатель может искать кандидатов.

1 голос
/ 13 октября 2010

Ключ заключается в том, чтобы не беспокоиться о сопоставлении, а вместо этого об идеальной сортировке.Это был ключ к Google - любой мог найти 1 000 000 хитов - они выяснили верхний.

Честно говоря, если я наберу Java, я действительно ожидаю (хочу), чтобы резюме содержало Java в нем -как ты считаешь меня лучшим кандидатом?

0 голосов
/ 13 октября 2010

Кандидату может быть предложено ввести данные в поля, но проблема в том, что он может использовать слово, похожее на слово интереса, которое может быть пропущено, например, для HTML, он может ввести HyperTextMarkupLanguage. Таким образом, система должна быть такой, чтобы она училась на неопознаваемых жаргонах, этого можно достичь, используя синоним слов к интересующим словам. Например, я хочу получить кандидата, который знает язык сценариев, а не искать «язык сценариев». Я могу получить для него синонимы, такие как perl, python, ruby, и использовать его для сравнения полей. Но для этого требуется каждый раз вводить данные в новый сценарий язык подходит.

Если вы ненавидите вводить данные в систему, вы можете запросить в Интернете, скажем, Википедию, чтобы узнать, что это за язык Perl, и проанализировать его. Это делает систему адаптируемой даже к новым технологиям, поскольку все мы знаем, что технология постоянно развивается, поэтому быть полезным.

...