> А какой типичный случай использования? Я собираю теги, описывающие о чём эта статья, скармливаю catboost и он перечисляет статьи с похожими тегами?
Не уверен, что правильно понял этот сценарий. Кажется, здесь вам вообще не нужен catboost. Если у вас есть описание всех статей с их тегами, то catboost не нужен. Можно проще.
В этом случае, возможно, можно рассмотреть задачу многоклассовой классификации: у вас есть набор данных в котором каждая строка: статья и список тегов. Необходимо для новой статьи подобрать подходящие теги на основе предыдущих данных. К тому же в catboost уже есть возможность работы с текстовыми признаками (текст статьи)
> Какие именно данные обычно собирают для катбуста, что бы он мог предложить похожую статью которая понравится пользователю читающему текущую статью?
Далее пример "в лоб". В проде лучше так не делать, как мне кажется.
Например, у вас есть набор данных как в предыдущем примере (статья + набор тегов) для
каждого пользователя и в каждой строке есть признак того, что статья "понравилась" пользователю:
article_id | article | science | nature | movie | user_id | like |
1 | text | 1 | 0 | 0| 42 | 1 |
1 | text | 1 | 0 | 0| 146 | 0 |
Обучаете бинарный классификатор на этих данных (признаки - article, science, nature, movie, user_id, таргет - like)
Сразу хочу сказать, что это очень приблизительный подход только для примера. На деле надо смотреть на данные.