GithubHelp home page GithubHelp logo

kyzyl-ool / marketplace-urabantech Goto Github PK

View Code? Open in Web Editor NEW

This project forked from timac11/marketplace-urabantech

0.0 1.0 0.0 16.38 MB

TypeScript 3.49% JavaScript 81.36% Python 4.40% HTML 6.69% CSS 4.06%

marketplace-urabantech's Introduction

Маркетплейс IT решений

N|Solid

Маркетплейс SberCloud создается в целях расширения функционала базовых облачных сервисов SberCloud (Iaas и PaaS) за счет продуктов экосистемы Сбербанка и продуктов сторонних производителей.

Видео-демонстрация решения: https://drive.google.com/open?id=14NDloMRo1A_lFOP6T2GQVpZ6AUFJGUjf

Интерфейсы пользователей:

Содержание

  1. [Проблема](#проблема)
  2. [Решение](#решение)
    1. [Разработчик](#разработчик)
    2. [Заказчик](#заказчик)
    3. [Интегратор](#интегратор)
    4. [Администраторы](#администраторы)
  3. [Монетизация](#решение)
  4. [Бизнес-процессы](#бизнес-процессы)
  5. [Техническая архитектура](#техническая-архитектура)
  6. [Киллер фичи](#киллер-фичи)
    1. [ML подборка алгоритма](#ml-подборка-алгоритма)
    2. [Оценки продукта](#оценки-продукта)
    3. [Биллинговая система](#биллинговая-система)
    4. [Сбор аналитики](#сбор-аналитики)
  7. [Установка](#установка)
    1. [Frontend](#frontend)
    2. [Backend](#backend)
    3. [ML](#ml)
  8. [Итоги](#итоги)
  9. [Будущее развитие](#будущее-развитие)
  10. [Команда](#команда)

Проблема

Разработчики (частные/команды/компании):

  • Создание продуктов, однако сложно превратить в работающий бизнес
  • Нет возможности разворачивать решения
  • Нужны клиенты для продуктов

Заказчики (микро/малый/средний бизнес):

  • Нужны персонализированные продукты, быстрые по запуску
  • Поиск инноваций и улучшения бизнес-процессов в компании

Решение

Видео-демонстрация решения: https://drive.google.com/open?id=14NDloMRo1A_lFOP6T2GQVpZ6AUFJGUjf

Интерфейсы пользователей:

N|Solid

Разработчик

N|Solid

Заказчик

N|Solid

Интегратор

N|Solid

Администраторы

N|Solid

Монетизация

SberCloud:

  • Комиссия за продажи лицензий на маркетплейсе
  • 20 % комиссии от стоимости использования образов на облаке
  • Биллинговые операции и поддержка при использовании заказчиком
  • Предоставление облачного пространства

Разработчик:

  • Использование облачного решения (Ядра/с, VM/c)
  • Подписка по времени
  • Продажа лицензий
  • Ограниченный функционал решения

Интегратор:

  • Партнерская система бонусов от Разработчика и SberCloud
  • Пакетные решения и прибавочная стоимость

Бизнес-процессы

Технологический стек

В рамках прототипа за время хакатона:

N|Solid

Глобальная архитектура в будущем:

N|Solid

Киллер фичи

ML подборка алгоритма

Чтобы определить, какие ключевые слова нужны для поиска нужных проектов, используется следующее:

  • Обученная модель, которая может извлечь ключевые слова из описания задачи.
  • Обученная модель, которая может извлечь ключевые слова из описания задач, которые может решить конкретный специалист.
  • Алгоритм, который будет соответствовать ключевым словам задачи и специальным тегам.

В нашем проекте мы используем TF-IDF для извлечения ключевых слов. TF-IDF может фактически использоваться для извлечения важных ключевых слов из документа, чтобы получить представление о том, что характеризует документ. Эти ключевые слова можно использовать как очень простое резюме документа и для анализа текста, когда мы смотрим на эти ключевые слова в совокупности. На этом этапе мы использовали библиотеку Python skikit-learn с TF-IDF.

Мы использовали набор данных Stack Overflow, который имитирует то, с чем вы можете иметь дело в реальной жизни. Вы можете найти этот набор данных в нашем репо. Файл "stackoverflow-data-idf.json" с 20 000 публикаций используется для вычисления обратной частоты документа (IDF). Этот набор данных переполнения стека содержит 19 полей, включая заголовок сообщения, текст, теги, даты и другие метаданные, которые нам не нужны для этого проекта. В нашем проекте нас больше всего интересуют тело и заголовок. Они стали нашим источником текста для извлечения ключевых слов.

Мы создали поле, которое сочетает в себе тело и заголовок. Мы использовали CountVectorizer для создания словаря из всего текста в нашем df_idf ['text'], за которым следует количество слов в словаре. Результатом является разреженное матричное представление отсчетов. Каждый столбец представляет слово в словаре. Каждая строка представляет документ в нашем наборе данных, где значения - это количество слов.

Мы передаем два параметра в CountVectorizer, max_df и stop_words. Во-первых, просто игнорировать все слова, которые появились в 85% документов, поскольку они могут быть неважными. Последним является список пользовательских стоп-слов. Вы также можете использовать стоп-слова, которые являются родными для sklearn, установив stop_words = 'english'.

Результирующая форма word_count_vector (20000,124901), так как у нас есть 20 000 документов в нашем наборе данных (строки) и размер словаря составляет 124 901.

В некоторых приложениях для анализа текста, таких как кластеризация и классификация текста, мы обычно ограничиваем размер словаря. Это действительно легко сделать, установив max_features = vocab_size при создании экземпляра CountVectorizer. Для этого проекта мы ограничили наш словарный запас до 10000. Важно: IDF всегда должен быть основан на большой корпорации и должен представлять тексты, которые вы будете использовать для извлечения ключевых слов.

Как только мы вычислим наш IDF, мы готовы вычислить TF-IDF и затем извлечь ключевые слова из векторов TF-IDF.

В нашем проекте мы извлекли ключевые слова из описания задач и ключевые слова из описаний задач специалистов. После этого у вас будет список ключевых слов которые можно использовать для подбора продуктов на платформе.

Оценки продукта

N|Solid

Биллинговая система

N|Solid

Установка

Frontend

yarn install

yarn build

yarn start

Backend

yarn install

yarn build

yarn start

ML

  • Python3.6
  • Каркас фляги (для веб-сервера) -Библиотека Skikit-learn (для машинного обучения) -HTML, CSS

Итоги

Видео-демонстрация решения: https://drive.google.com/open?id=14NDloMRo1A_lFOP6T2GQVpZ6AUFJGUjf

Интерфейсы пользователей:

Будущее развитие

В дальнейшем наша команда StartBlock.Online готова продолжить разработку данной системы на уровне проведения пилота и внедрения в реальный бизнес.

Провести полную аналитику бизнес-требований и предложить наиболее полную конфигурацию для масштабирования системы.

Реализовать полную структуру решения, используя предложенные инструменты и навыки в ML.

Команда

N|Solid

marketplace-urabantech's People

Contributors

kyzyl-ool avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.