Pull to refresh
1
0
Konstantin Burlachenko @burzzo

huge scale optimization, hpc, ai, ml, dl, cv

Send message

Спасибо за спасибо :)

Sure. You're welcome. I know people from ISO/IEEE WG21 who liked that technical note.

That post in reddit +100 likes: https://www.reddit.com/r/cpp/comments/wsnn24/technical_note_from_c1998_to_c2020/

That 'likes' are not convertible into money or academic/industry authority, but feedbacks good or bad is useful for me.

p.s. I think people who press downvotes just press incorrect button, because maybe they have been tired.

Здравствуйте. Я работаю с моделями машинного обучения и в целом разным каталогом мат моделей из прикладной математики лет 5. Высокоуровневый pipeline машинного обучения описан здесь на основе моего опыта и образования - https://sites.google.com/site/burlachenkok/articles/pipeline-in-application-level-for-ai-projects

Ваше описание неплохое.

Однако мне не ясна роль MlOps - за что они отвечают во всем пайплайне?

Раньше -а все отвечали специалисты по информатике и прикладной математике, что могут mlops взять на себя конкретно? Конфигурация разного миддлваре серверного ?

Уважаемые русские программисты и программисты из постсоветских стран. Вы этого не знаете если никогда не работали с Американцами или Китайцами - но в культуре Китая и США именно вы программисты (Тим лиды и сеньоры и начальники дивизий) отвечаете за проекты и сроки. В культурах этих стран именно хайтека проджект менеджеры это тот кто общается с заказчиками и выполняет поручения команд - съездить показать презентация проекта. Платят за это немного, но и работа не пыльная.

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

Я допускаю что бывают компании где на первом месте поиск кастомеров. И тогда проджект менеджеры рисующие диаграммы в пауер поинте становятся самыми важными.

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

Спасибо большое за комментарий. Стенфорд про науку и инженерию. И в этих вещах немного другие классификационные коды для людей кто занимается информатикой https://dl.acm.org/ccs - здесь среди академической классификации нету DevOps.

Что входит в роль девопсов или проджект менеджера или вообще какие-то социальные роли на проекте - на курсах в Стенфорде не учат в явном виде.

Учат в том числе как делать системы типа Apache Spark (так как автор этой система является проф. там - Matei Zaharia). Учат создавать механические, электрические или информационные системы и зачастую это и является целью - создание устройства или системы некоторой которая делает полезное людям с гарантиями желательно.

Как-то так :)

Спасибо большое за комментарий.

Спасибо. Не на что я не намекаю - мне нужен был пример хоть одного реального проекта где используются такие люди. У меня есть знакомые кто делает Amazon Web Services в Амазоне - я у него спрошу что делают девопс в Амазоне с этой системой

(В Яндексе много распределённых систем - но там все делают программисты и системные администраторы)

Мне тоже не понятно кто это такие хотя я вроде как опытный человек с образованием из Стенфорда https://burlachenkok.github.io/cv_kburlachenko_feb_2022.pdf

В своей практике я общался напрямую отвечая за маленькие и гигантские компоненты - но это было общение с заказчиками напрямую или иногда менеджеры проекта выполняют такую роль посредника - если роль девопс общение с заказчиком - то они дублируют прожект менеджера

Иногда под девопсами понимают наверное людей кто занимается конфигурацией билд системы. Но это тоже во всех проектах с 1 или 3 миллионами клиентов - автоматизировано.

Это термины - если откроется вам больше кто это - пожалуйста делитесь.

Возможно это системный администратор поддержки развёрнутой системы…

Я пока понять не могу

Назовите хоть один проект который этим пользуется? все сервисы Яндекса этим не пользуются, все известные мне проекты компании nvidia (штук 30) этим не пользуются, опенсорс проекты гугла этим не пользуются… что делают эти люди? Как я пока понял они собирают билды - но это в 2022 году автоматизировано.

В гугле я сам не работал - но у меня много друзей кто туда пошёл и у меня были совместные проекты с ними. Там часто программисты и site reliability engineers работают которые бдят что система работает.

Здравствуйте. А может кто-то объяснит - а что делают devops?

12 лет занимался разработкой проектов в том числе в acronis, Яндексе, nvidia, huawei под разные платформы под разное кол-во кастомеров в проектах от 3000 строк под 5 млн строк кода. Где используется 0 научных статей до 20 на проекте.

Но я никогда не слышал про devops. По крайней мере за 2006 до 2020 я никогда не сталкивался с такими людьми вовсе. Не в старапах, не в больших компаниях, не в средних компаниях. Не в рф культуре не в культуре сша, не в культуре Китая.

Если цель девопсов получить связь с пользователями то вот такие инструменты используются повсеместно на практике

  • Трекеры багов (если проект открытый)

  • Форумы

  • Прямая связь с кастомерами с помощью почты (но для этого сбора используются менеджеры проектов - они должны бегать по клиентам и как-то систематизировать требования)

  • Внутренние тестеры проверяющиеся софт на баги

  • Снятие метрик или логов с пользователей если установлена обратная связь с пользователями с помощью автоматической обратной связи (если не нарушается приватность и как это организовать зависит от проекта)

    Если же цель обновление версий программного обеспечения

  • Это делается для стендэлоун приложений схемами принятыми в конкретной операционной системе.

  • Если речь идет про большую распределённую систему с кучей веб-сервисов — то это решают программисты внутри компании как обновлять веб-сервисы или скрипты или программы. Но это договоренность по сути + скрипты которое это делают. Это важно - но это решается как обновлять (при понимании как работает компьютер и вычислительные сети) за неделю вроде как самими программистами по крайней мере на моей практике все заканчивалось скриптов до 2000 строк которое все раскладывает и проверяет. Это важно сделать один раз - но в моей практике это делают сами программисты.

    если цель наладить сборки и проведение анализа кода

    То это делают вроде как программисты сами опять таки. Владеющие или изучившие или создавшие инструменты для сборки или анализа кода.

    может девонской - это администраторы развёрнутых систем которые следят что все веб-сервисы работают правильно в распределенной системе? Или настраивающие инструменты сборки программного обеспечения?

    Буду благодарен если тот кто сталкивался с людьми девопс - расскажут про их роли.

    Наверное просто в моей жизни - эти люди назывались по другому

    Спасибо.

From 2020 about MBA: https://www.youtube.com/watch?v=Y6P8qdanszw

В США и Китае давно уже (лет 20) главные в любой организации технические инженеры и учёные. Менеджерам которые организуют больше нужны только для организации - зарплаты у них маленькие, но работа не пыльная.

В РФ они считали себя более главными, где между 2005-2015, но реально в Хайтеке у них власти вообще никакой нет.

Я работаю программистом (не веб) около 10-12 лет. Отвечу как бывший студент МГТУ Баумана и как удалённый студент Стенфордского университета скажу вам:

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

Про понедельник
В чём вы правы

Развиваться — это и означает увы учиться придётся всю жизнь. Это отмечал и Ленин, и Энштейн, и почти все профессии требуют учиться всю жизнь. И вы правы про программирование, про которое не всё так просто.

Более того как таковой области сейчас нет. Есть масса областей ACM ***.

Вот например Д.Фридмен говорит в начале что программирование сегодня это не glamorous field как было раньше (https://www.youtube.com/watch?v=8hupHmBVvb0&t=74s).

Как вы можете развиваться. Есть бесплатные курсы от Стенфорда (ITunes university), есть курсы МФТИ, есть MIT OpenCourse — смотрите и развивайтесь, есть stackechange и более лёгкая quora — общайтесь и развивайтесь.

В чём вы не правы:
— Вам рано или поздно потребуется консультация профессора или аспиранта. Интернет — это помойка
— Рано или поздно вам потребуется поддержка психологическая чтобы сделать в короткий срок проект в 50K строк
— Вы подумайте про других людей. Вы готовы чтобы вашего кота оперировал ветеринар-самоучка. Нет. Мир сильно забюрократизирован. Я сталкиваюсь, что на ЗАПАДЕ ОТСУТСВИЕ PhD НЕ ДАСТ ВАМ ПРАВО ЗАНИМАТЬСЯ ИССЛЕДОВАНИЯМИ несмотря на наличие проектов.
— Бизнесс для зарабатывания денег, вуз для развития вас в первую очередь.

Про вторник
Я вам советую учить то что от чего вас «качает». Так же есть некоторые зависимости между разделами математики — поэтому если вы будете изучать математику по онлайн курсам вузов — там вы найдёте требование. Если вы хотите читать только книги, что же — хорошие книги пишут в вузах, но они доступны для покупку или там скачивания.
Если вы можете найти хорошую книгу прочитать её (e.g. обычная вузовская книга по дифурами)
А после этого читать более трудные книги (необычные тяжелые книги в.И.Арнольда) — то это просто супер.

В чём вы не правы
Если вы собираетесь просто изучать по книжкам это даёт общую картину, но
— собеседование в какой-нибудь Google заставит вас перефигачить какую-то идею полностью и вы должны понимать области применимости все того о чём вас будут спрашивать.
— жизнь так не работает что решаются типовые примеры. Есть задача — и вы должны соотнести её с разделом математики например.
— если вы изучаете «по википедии» математик — там ошибка почти в каждом предложении. Изучайте математику по вузовским книжкам

Про среду
Вы всё правильно говорите. Есть два режима в жизни и во всяких динамических системах моделирющую жизнь — explore and exploit. Вам надо изучать, но и работать чтобы не потерять навык.
Я вам советую — вы рано или поздно столкнётесь со старым. Каждый раз сталкиваясь с ним — смотрите под новым углом.

*Про Четверг*
Самостоятельнасть хорошо, у ваших дедушек и бабушек не было интернета. Но доверяйте статьям из домена *.edu они содержат практически всегда корректную информацию.
Если аспект технологии — доверяйте офиц. документации и форуму компании.

Если вы задаёте вопрос всем учителям и они отваричваются — проблема в вас, научитесь задавать вопросы. Вопросы вам придётся задавать всю жизнь.

Ну если вы задаёте вопрос всем учителям и только один из 6 отвечает — проблема в учителях, которые вас окружают. Ищите другое место.

Гугл не знает ответы на вопросы — это полнотекствовый поиск по 150 000 000 000 документам. Лучше используйте специализированные форумы типа stackexchange или quora или сайты факультетов вузов.

* суббота*
Если вы что-то не знаете — спрашивайте человека, не будьте вежливыми не молчите, спрашивайте. Вот например что Stephen P.Boyd говорит про то что не стоит быть вежливым:
youtu.be/bf1264iFr-w?t=571

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

Так что для будушего вашего у вас два больших плана
1. Вам придётся получить высшее образование
2. Вам придётся сделать стартап, провалиться, сделать старап провалиться, и сделать стартап и не провалиться.
Это называется работа над ошибками, а не гнев. Я вообще за то чтобы делать мир лучше и я добрый человек. Я указал ошибки которое надо исправить… Больше мне писать не куда, так как отсутсвует координаты обратной связи. Вот что действительно вызывает гнев — так это комьюнити здесь, где вместо спасибо, я получил "-4". Если знаете куда отправить это — то дайте электронную или реальную почту.
Если с уважением относитесь так и пишите всегда добавляя префиксы. Проецировании операции нет. Я призываю к стилю такого написания всех без исключения.
Мне скинули метриалы yadi.sk/d/yEXkABC_353Zmh

Я пролистал слайды. У меня есть замечания общего характера:
— отсутсвует имя автора слайдов
— отсутсвует способ обратной связи
— отсутсвует библиография

Таким отношением к материалам вы позорите имя МФТИ, так как этому кажется учат всех культурных людей.

Далее по слайдам есть небольшие ошибки, но всё же ошибки:

1.1, 1.2 — ноуты про Python не содержат никаких ссылок. Лучше сослать на книгу Гвиноо Ван Россума, она хороша и отлично написана.

1.3, стр.6 — определение выпуклой функции некорректное. «функция выпуклая если её область определения является выпуклым множеством, и выполняется упомянутое неравенство».

Человек который мне скинул это (Наталья) считает, что я придираюсь. Но для меня это уже и так упрощенное определение, и покрывает только функции R->R. Надо быть точнее, и желательно давать ссылки на книжки. (авторитетные книжки это книжка С.Бойда и Б.Т.Поляка)

Все ваши ошибки из-за отсутсвия ссылок на первоисточники, если бы они были у вас не было бы такого кол-во неточностей!

«2.2 Matricy_i_osnovnye_matrichnye_operacii»
«Обращение возможно только в случае квадратных невырожденных матриц» — некорректно или по крайней мере не полно.

«Мы рассматриваем обращение только для случая квадратных матриц. В этом случае обращение возможно только в случае невырожденных матриц»

«My major complaint about lin.algebra classes-they concentrated on square matrices a lot, which mostly in engineering have no use» — S.Boyd

Понятие собственного вектора — в принципе нормально рассмотрено, и случай поворота в 2D правильный. Я буквально на днях задавался вопросом про собст. значения оператора который ортогональный (https://www.quora.com/What-are-orthogonal-matrix-eigenvalues)

3.2 про оптимизацию слайды
«Глобальный минимум так и остается не найденным. Решить эти проблемы позволяют методы случайного поиска»

— с такими словами происходит у людей потеря общей картины.
А общая картина что общая постановка оптимизационной задачи не может быть решена.
Я видел в лекциях Б.Поляка такой простой пример:
(X^N+Y^N — Z^N)^2=0
X,Y,Z — натуральные
n — натуральное число

Т.е. мы составили оптимизаци. задачу. Если бы мы её всегда могли бы решить «просто» — мы решили бы «просто» Великую Теорему Ферма

С. Бойд всегда начинает выступления с того, что в общем случае задача оптимизации не может быть решена. (e.g. — youtu.be/uF3htLwUHn0?t=725)

«Сингулярное разложение — определено однозначно для любой матрицы» — некорректно,
«Сингулярное разложение — определено однозначно для любой ненулевой матрицы» — корректно

В общем ошибки в каждом ноуте. Надо сидеть и исправлять. Обратитесь к докторам наук по соответсвующим наукам или разделам математики.

Для улучшения ноутов вам надо обратиться к соответсвующим проф. из университетов и заплатить им денег за консультацию.

В нашей (русской или советской) культуре не datascience, не ml не являются наукой, в нашей культуре такого рода области называют «методы».
«товарищ Andrew Ng» — пишите лучше проф. А то вы по-хамски людей называете.
Как меня учил один проф. по выпуклой оптимизации, С.Бойд — «Не относитесь к этому слишком серьёзно» Можете забить на эти распределения и построить своё эмпирическое по имеющимся данным и всё равно придётсся сделать гипотезу про хвосты плотности распределения. p.s. Диаграмма с тем что data science — включает всё на свете — клоунада да и только.
Спасибо за статью.

Мне нравится робототехника, но в России нельзя найти работы на hh.ru по этой области.
Если вы хотите чтобы эта «машина» завелась у нас в стране мне кажется надо не начинать эту «войну» в которой роботы забирают работу в людей. А начинать надо с тех областей где просто бесспорно надо использовать роботов — там где людям опасно физически находится, или не очень приятно.
Для вычисления площади плоских фигур можно использовать численный «метод ячеек» — разбить область на квадраты или прямоугольные ячейки. Что делать с граничными ячейками — (1) можно истинную границу заменить хордой. (2) Можно вообще граничные ячейки не учитывать.

Если вы упорно хотите посчитать, площадь фигуры ограниченной кусочно непреррывными кривыми аналитическим методом — то замечательным инструментов для этого служит использование формулы Грина для многосвязной области. Она позволит вам посчитать площадь лоской области (с внутренними дырками) и изучается в курсе «Кратные и криволиненйые интегралы». См. «VII Гаврилов Иванова Морозова Кратные и криволинейные интегралы.Элементы теории поля», изд-во МГТУ им Н.Э.Баумана, стр. 295
Спасибо. В заголовке сказано что это перевод, но раздела с библиографией (лично я считаю это самой важной вещью как с точки зрения того кто пишет, так и того кто читает) в явном виде нет. Оригинальная статья это как я понимаю — http://weijr-note.blogspot.ru/2017/01/2017-is-not-just-another-prime-number.html. Не так ли?

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Date of birth
Registered
Activity