• Как лучше построить архитектуру ML-сервиса?

    @Vitsliputsli
    Если подразумевается высокая нагрузка:
    Т.к. параллелизм, то сервис лучше писать на Go, Python тут плохой вариант.
    А вместо rest лучше grpc, если для модели нужно много данных.
    Ответ написан
    2 комментария
  • Как лучше построить архитектуру ML-сервиса?

    Maksim_64
    @Maksim_64
    Data Analyst
    Мало информации, конечно. Я обычно использую dash. Он позволяет создать полноценное веб приложение. Для взаимодействия с пользователем. Есть большое коммунити например я использую компоненты для создания красивого интерфейса и взаимодействия. Насчет одновременного доступа не проблема, каждая сессия пользователя изолирована. В доках есть раздел галерея там большие и крутые проекты выложены на github, то есть можно много чего подсмотреть. Есть и платные компоненты. Все что по ссылкам это бесплатно и для продакшен уровня достаточно.

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

    А так в небольшие сроки можно крутое приложение, как по дизайну (фронт) так и по функционалу сделать. И все в рамках одного языка даже фронт.
    Ответ написан
    Комментировать
  • Как лучше построить архитектуру ML-сервиса?

    @Everything_is_bad
    Ну так стандартно, fastapi кладет запрос в какую либо очередь сообщений и ждет ответа, ML-модель, обычно запущенная отдельный сервисом, читает из этой очереди, обрабатывает и подобным образом передает обратно в fastapi. Это базовое, дальше уже начинаются работы по развитию, относительно возникающих требований, настройка таймутов и отмены работ, усложнение REST API, от простого запрос - ответ, к например, запрос - создание фоновой задачи - периодической проверки ее выполнения, масштабирование через создание нескольких сервисов с моделью и т.п, и т.д.
    Ответ написан
    Комментировать
  • Почему Python adf работает хуже чем R adf?

    Maksim_64
    @Maksim_64
    Data Analyst
    1. По поводу скорости, даже на дефолтных параметрах функции выглядит подозрительно. 10 минут подозрительно. Что влияет на скорость, параметр maxlag, это параметр на сколько максимально наблюдений назад смотрит алгоритм при проведении теста. по умолчанию он равен. 12 * (количество наблюдений / 100 )**(1/4), в вашем случае это 101 наблюдение. Если уменьшить это значение тест выполнится быстрее. Нужно ли это делать? это зависит от контекста проблемы. Например если бы это была финансовая ts с дневной частотой то maxlag = 101, не имеет никакого смысла его можно было уменьшить скажем до 10 а то и еще меньше.

    2. Относительно python vs R. Если брать какие то специфические моменты в особенности тесты, библиотеки R попросту на порядок превзойдут библиотеки python (на сегодняшний момент). Но при создании проекта это далеко не все. Создать поддерживаемую базу кода на python значительно легче чем на R. Коммунити python значительно больше это значит, где будет python а где R скажем через 5 лет, сколько новых фреймворков появится какая новая инфраструктура будет создана и т.д. R крутой нишевый инструмент. И если смотреть на короткие готовые решения скажем в области анализа ts он попросту круче. Если строить проект который включает в себя анализ ts, многие однозначно выберут python.
    Ответ написан
    Комментировать
  • Как добиться знания и понимания в математике?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Я в школе изучал математику без доказательств. Тоесть мне просто было достаточно авторитета автора учебника. И мне - инженеру по софту сегодня и этого более чем достаточно. Для кого вообще доказательства очевидны? Вот несколько лет назад была доказана большая Теорема Ферма (за пруфами - поищите сами) но оказалось что она идет просто следствием из другого более сложного доказательства которое понимает не очень много людей на планете Земля.

    Может быть где-то стоит остановиться и принять теорему на веру и спокойно пользоваться ею как средневековый механик пользуется маятником и шестерёнками особо не погружаясь в механику и сопромат (которого еще не было). Наверное в этом и есть высшая инженерная философия.

    Инженер - не математик. Инженер просто берет и приспосабливает имеющиеся знания на основании практики и здравого смысла. Ну можно еще добавить немного селекции (генетические алгоритмы) просто как основу для улучшения того что уже есть.
    Ответ написан
    Комментировать
  • Как добиться знания и понимания в математике?

    @LuchS-lynx
    инженер-ПТО
    Я не претендую на истину в последней инстанции и не планирую что то доказывать, а так же я не знаю Вас, Ваш бэкграунд и багаж знаний. Все написанное ниже есть лишь мои мысли и могут быть, как любое частное мнение, неверным или не полным.

    Где-то я читал, что в своё время, в двух сильнейших математических школах (СССР и Франция), обучали двумя подходами: во Франции делался значительный уклон на зубрёжку и большой объём практики, а в СССР – на понимание. Не большой знаток истории математики, поэтому вы поправьте, если посчитаете нужным, но выбирая между ними, я бы хотел сосредоточиться на понимании.

    СССР, когда формулировал подходы к обучению в 1920-х годах, опирался на опыт РИ. Фактически образование делилось на 2 ветки:
    1. Образование для того что бы синтезировать новые знания. Это Университетский подход, этому учили в Университетах страны.
    2. Образование для решения текущих задач. Когда упор делался на детерминировании задачи и поиска методики или адаптации методики под ее решение. Это Институты и Техникумы страны, просто у одних упор был больше на теорию, у других больше на практику.

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

    Соответственно математика бывает прикладной и фундаментальной, соответственно это разные подходы для литературы.

    Как правильно писали выше, сейчас открыть что-то новое в классической области очень сложно, возможно здесь теории почти все открыты, но вот на стыке наук - открытия случаются, т.к. мы имеем компьютеры которые позволяют нам автоматизировать действия, то вперед выходят графы, матрицы, ИИ и все прочее что работает как с большими данными, так и позволяет скрещивать нескрещиваемое и дальше банальным перебором идет проверка на разумность/возможность решений. Полученные варианты задним числом обосновывают или даже запускают в продакшен и прочие современные слова просто потому что это работает. Сегодня мы все немножечко конструкторы, а не ученые. Просто каждый перебирает и объединяет/комплектует варианты на своем уровне.
    Ответ написан
    Комментировать
  • Как добиться знания и понимания в математике?

    vitaly_74
    @vitaly_74
    Не по делу: У вас есть высшее образование? - именно на вышке учат учиться, если конечно вы учились, и было стремление.
    По делу: поставьте себе конкретную задачу. Например у меня была задача "предсказать следующее число, на основе исторических данных" это называется регрессия, следовательно начинаю дальше читать про это понятие выбирать формулы, читать науч. Статьи, начинаю разбираться в распределениях и пр.
    Далее уже применяю полученный мат. Аппарат для решения своей задачи.
    А если бы просто учил всю мат статистику, мне кажется до сих пор бы не допер до решения.
    Я говорю это к тому что поставьте себе задачу и ее решайте, постепенно углубляясь в то что вам необходимо. Иначе короблю без цели все ветра будут попутны.
    Ответ написан
    4 комментария