Приложение для бизнес-проекта в формате стартапа.
Идея в том, что пользователи будут делать запросы в приложение, и сравнивать цены на нужные айтемы косметики в удобном для них формате.
В рамках решения:
У заказчика есть сайт на тильде, с ним интегрирована внутренняя CRM-система. Для рассылок уже имеется unisender, но он используется только для массовых рассылок.
Для защиты курсов и хранения ключей используется infoprotector.
Из технической команды - один человек, который ведет тильду.
Ограничение на первичное время решения - 4 часа.
Необходимо автоматизировать рассылку в кротчайшие сроки.
Узнать о решенииПортал для удаленного получения услуги банкротства.
Имеет личный кабинет, чат с администрацией, ряд анкет и страниц загрузок файлов, есть функции для автоматической генерации документов.
- Парсинг постов целевой группы ВК
- Градация по интересующим аудиторию темам (по просмотрам / общему количеству действий)
- Выявление интересующих аудиторию тем через регрессионный анализ текста (мешок слов + линейная регрессия)
- Выявление предрасположенности аудитории читать лонгриды
- Мониторинг распределения активности аудитории по времени
- Генератор текста в стиле паблика на основе цепей маркова (полезно для поиска идей для постов, либо как отдельная юмористическая рубрика)
- Визуальное оформление при помощи Dash, можно вывести на внешний сайт
В программу загружаются сырые данные от респондентов в формате таблиц, и на выходе получаются все значимые корреляции.
- Определение типов шкал происходит методом decision trees.
- Определение шкалы Ordinal происходит по словарю (его можно дополнять / изменять в случае необходимости)
- Определение множественных ответов / свободных вопросов / шкал nominal / scale происходит автоматически
- Есть возможность для контроля работы программы (например, сколько столбцов было отброшено в рамках поиска, какие столбцы вошли в какие группы)
- В зависимости от сочетания типов шкал используются различные метрики корреляций (Пирсон, спирман, хи-квадрат)
(исходя из тестов, Accuracy для Bitcoin - 64%, precision (точность) - 66%, recall (полнота) - 85%. На период создания алгоритм предсказал падение биткоина по новостям недельной давности в момент, когда несколько недель был стабильный рост. С другими криптовалютами не работает из-за нехватки данных для обучения). Подходит для работы с криптовалютами, так как высокая цена ошибки в отрицательном классе.
Состоит из веб-скреппера нескольких сайтов (новостных и со статистикой валют, в том числе сайтов с java script) и предиктивной модели, работающей через регрессионный анализ и Random forest (анализ дисперсии).
Для веб-скрепинга сайтов с java script использовался модуль selenium, для сайтов без JS – BeautifulSoup.
Есть функция предсказания на следующую неделю и на следующий день.
- Использовалась нейросеть на основе HyperGAN
- Обучающая выборка – 15 000 шаблонных мемов
- Датамайнинг происходил при помощи парсера групп ВК
- Обучение происходило на видеокарте GTX max-q 1060, разрешение картинок – 125х125
- В качестве итога получили машинные абстрактные мемы
https://github.com/NullOneResearch/simple_trained_models - первая модель
Была дана база данных с различной статистикой по городам США, исходя из статистики требовалось построить предиктивную модель для предсказания уровня преступности на тысячу человек населения. Использовалась линейная регрессия.
Mean squared error на тестовой выборке - 0.019051, высокая точность предсказания
https://github.com/NullOneResearch/simple_trained_models - вторая модель
(не удалось обучить на линейной модели или Lasso из-за недостаточного количества данных)
Для реализации использовались библиотеки sklearn, numpy, pandas, matplotlib
https://github.com/NullOneResearch/simple_trained_models - третья модель
Recall: 88.9%
Precision: 99.3%
Определяет, является ли сообщение спамом. Обладает весьма высокой точностью. Максимизирован Precision, чтобы был минимальный шанс False Positive, то есть, чтобы был минимальный шанс того, что обычное сообщение пометится как спам. Также была использована модель мешка слов.
В модели использовался алгоритм Random Forest для определения тональности сообщения (негатив/позитив).
auc: 0.907
Получилось добиться весьма высокой точности при определении.
Программа автоматически получает данные со статистикой с сайта, выбирает нужные столбцы, проводит статистические вычисления, формирует и высылает отчет на почту, подставляя в письмо нужное имя из базы данных.
Для веб-скрепинга использована библиотека BeautifulSoup.
В том числе с визуальной составляющей. Автоматическая обработка «сырой» базы данных
Была дана база телефонных номеров ИП. Задача состояла в том, чтобы номера автоматически приводились в единый вид, в целях использования при обзвоне и проведения аналитики. Задача была выполнена при помощи библиотеки Pandas.