Ответы пользователя по тегу Рекомендательные системы
  • Как правильно выносить данные аналитики в отдельное хранилище?

    Рекомендательные системы, как правило, необязательно выдают данные в реальном времени. Поэтому я предлагаю другой вариант работы с данными:
    некоторый фоновый процесс будет получать какие-то метрики из API сервиса и будет временно хранить данные в Mysql в количестве, достаточном для пакетной отправки в ClickHouse. Другой процесс будет периодически производить запросы в ClickHouse, а результаты рекомендаций хранить в Mysql. Таким образом, все запросы из API сервиса можно обрабатывать обращаясь только к Mysql.
    Ответ написан
    Комментировать
  • Сбор и обработка данных по APIs на NodeJs?

    Создать дополнительный процесс для сбора данных, запускаемый либо через планировщик задач, либо как демон. Будет собирать инфу в БД, а оттуда считывать службой API.
    Ответ написан
    Комментировать
  • Как реализовать рекомендательную систему по формуле Байеса?

    Согласно описанию стоит задача классификации.

    На входе дан вектор
    - тип кузова
    - цвет кузова
    - дорожный просвет

    На выходе
    - рекомендовать/не рекомендовать (да/нет, т.е. 1.0/0.0)

    Это можно описать многомерной функцией F(x1, x2, .., xN) = в идеале хотелось бы 0.0 или 1.0, а на практике - где-то между ними (типа, низкая/средняя/высокая вероятность рекомендации).

    Входные параметры могут быть качественными (характеристика объекта: пол человека, должность), количественными (дискретными -1, 0, 1, 2 и непрерывными -30.2°C .. 44.6°C). Подробнее в www.pm298.ru/shkala3.php (Классификация данных и измерительные шкалы)

    Рассмотрим каждый параметр.

    Цвет - довольно ёмкое понятие, а не просто HTML код #FE33CC (magenta в RGB). Упрощая, математически цвет можно представить как сочетание тона (все цветовые оттенки в палитре), насыщенности (пёстрый/тусклый) и интенсивности света (светлый/тёмный) - цветовое пространство HSL. Для осмысленных результатов по формуле преобразования нужно получить три этих составляющих и работать с ними отдельно.
    Оттенок измеряется в радианах, от 0 до 2 пи, или в нормированном промежутке от 0.0 до 1.0.
    Насыщенность и интенсивность цвета - от слабого до сильного - масштабируются также в промежутке 0.0 до 1.0.
    Мне кажется, что с цветом человеку сложнее всего определиться, так как он влияет на него психо-физиологически.

    Тип кузова - номинальный тип (нет значения очерёдности).
    Номинальные типы - это вектор, состоящий из значений классов да/нет. Когда выбран определённый класс, то он имеет значение максимума, т.е. 1.0 (да), а остальные устанавливаются в 0.0 (нет).
    Таким образом, если обозначить типы кузова как A (купе),B (седан) и C (кабриолет), то в форме вектора они будут представлены как [A, B, C].
    Например, выбрав тип "седан", вектор имеет значения [0.0, 1.0, 0.0].

    Дорожный просвет - непрерывный тип в исходных данных. Его нужно преобразовать в категории (мал., сред., выс.) - аналогично представлению типа кузова.

    Гораздо более весомым параметром в выборе машин является, по-моему, ценовая категория (лучше не более 3-4-х категорий).
    Скорее всего, пол человека (номинальный тип) также может влиять на выбор авто м/ж, 0/1.

    Полагаю, что не только нейронные сети справятся с этим заданием.
    Ответ написан
    Комментировать