Загрузка данных
1. Определение типов данных
Для создания комплексного профиля кандидата система агрегирует данные из трех независимых источников, что позволяет избежать оценки только по одному критерию.
Текстовые данные (неструктурированные): Текст резюме, сопроводительные письма, описания проектов в портфолио. Содержат семантику опыта, стек технологий, описание достижений.
Структурированные данные (результаты тестов): Оценки за hard-skills тесты (например, баллы на платформах вроде HackerRank), результаты психологических/логических опросников, время прохождения тестов, требуемый уровень ЗП, стаж в годах.
Цифровой след (полуструктурированные):
Платформы разработчиков (GitHub/GitLab): Частота коммитов, языки репозиториев, количество форков/звезд, активность участия в Open Source.
Профессиональные сети (LinkedIn, Habr): Подтвержденные навыки от других пользователей, наличие рекомендаций, профильные статьи.
2. Система хранения и обработки данных
Пайплайн данных (ETL) строится так, чтобы обеспечивать безопасность персональных данных и высокую скорость поиска.
Сбор и предобработка:
Парсинг: Использование библиотек оптического распознавания (OCR) для PDF/картинок и экстракторов текста для DOCX.
Анонимизация (Data Masking): Удаление из текстов ФИО, пола, возраста, фото и национальности с помощью NER-моделей (Named Entity Recognition) до этапа скоринга для исключения предвзятости.
Хранение:
Data Lake (S3-хранилище): Хранение сырых файлов (оригиналы резюме) на случай ручной проверки рекрутером.
Реляционная БД (PostgreSQL): Хранение структурированных профилей (id кандидата, баллы за тесты, годы опыта, ссылки на соцсети).
Векторная БД (Milvus или FAISS): Хранение векторных представлений (эмбеддингов) текстов резюме и текстов вакансий. Это позволяет системе быстро находить кандидатов по смыслу (семантический поиск), а не по точному совпадению ключевых слов.
3. Выбор ИИ-модели и метрики оценки
Задача решается не одной моделью, а пайплайном (ансамблем) из двух разных архитектур.
Архитектура пайплайна:
NLP-модель (архитектура Transformer, например, BERT или RoBERTa): Используется для извлечения признаков. Сверточные сети (CNN) здесь не подходят, так как мы работаем не с изображениями, а с контекстом языка. NLP-модель понимает семантику: она переводит текст резюме и текст вакансии в векторы и вычисляет их косинусное расстояние (степень смыслового совпадения).
Градиентный бустинг (CatBoost или XGBoost): Выступает в роли финального классификатора/ранжировщика. На вход бустингу подаются все собранные данные: оценка совпадения текста от NLP-модели + баллы за тесты + метрики из GitHub. Деревья решений лучше всего справляются с такими разнородными табличными данными. На выходе модель выдает вероятность (от 0 до 1) успешного прохождения интервью.
Метрики оценки качества:
Precision (Точность): Доля релевантных кандидатов среди всех, кого ИИ пометил как "подходящих". Критически важная метрика, так как ложные срабатывания (False Positives) тратят впустую дорогое время техлидов и HR на собеседования со слабыми кандидатами.
Recall (Полнота): Показывает, какую долю действительно сильных специалистов алгоритм смог найти в общей базе. Защищает от того, чтобы ИИ не пропустил таланты с нестандартно написанным резюме.
F1-score: Гармоническое среднее между Precision и Recall. Оптимизация этой метрики позволяет соблюсти баланс (не звать всех подряд, но и не отбраковывать хороших специалистов).
ROC-AUC: Используется для оценки качества ранжирования кандидатов в списке (чтобы лучшие всегда были наверху выдачи).
4. Интеграция в процессы HR и взаимодействие с рекрутерами
ИИ внедряется по принципу Human-in-the-Loop (человек в контуре управления). Система не принимает финальных решений о найме, она выступает интеллектуальным фильтром.
API-интеграция в ATS (Applicant Tracking System): Модуль интегрируется в рабочую среду HR (Huntflow, E-Staff или внутреннюю ERP).
Визуализация (XAI - Explainable AI): Рекрутер видит список откликов, отсортированный по ИИ-скорингу (в виде "светофора": зеленый — высокий мэтч, желтый — средний, красный — отказ).
Интерпретируемость: Возле оценки кандидата система выводит объяснение (например, через SHAP-values). Рекрутер видит теги: "Плюсы: Опыт работы с PostgreSQL (4 года), высокий балл логического теста. Минусы: Отсутствует опыт с Kubernetes, заявленный в вакансии". Это формирует доверие к алгоритму.
5. Анализ выгод и ограничений
Выгоды:
Снижение Time-to-Hire: Мгновенная первичная обработка тысяч откликов 24/7.
Повышение качества найма: ИИ учитывает объективные данные тестов и цифровой след, а не только "красиво написанный текст" резюме.
Снижение субъективности: У алгоритма нет "плохого настроения" или усталости в конце рабочего дня.
Ограничения и риски:
Этические (AI Bias): Модель обучается на исторических данных компании. Если ранее рекрутеры (люди) системно отказывали определенным группам кандидатов (например, женщинам в IT или возрастным специалистам), ИИ выявит эту закономерность и начнет дискриминировать их автоматически. Требуется жесткий аудит обучающей выборки.
Юридические (GDPR / 152-ФЗ): Парсинг цифрового следа (GitHub, соцсети) требует явного юридического согласия кандидата на автоматизированную обработку его персональных данных и профилирование. Кроме того, по закону кандидат имеет право оспорить решение, принятое исключительно алгоритмом.
Технические (Adversarial attacks): Хитрые кандидаты могут использовать метод "белого текста на белом фоне" (вписывать ключевые слова невидимым шрифтом в резюме), чтобы обмануть парсеры и искусственно завысить свой скор. Система обработки должна конвертировать всё в plain-text для защиты от таких манипуляций.