Разведочный анализ данных в Python: руководство для новичков на 2021 год

Мне часто приходится говорить, что для понимания проще нарисовать, лучше всего нарисовать. В подавляющем большинстве случаев, после того, как всё стало понятно, остальное не так и сложно, становится делом техники. То же самое и в науке о данных, и этап, на котором всё «понимается» называется Exploratory Data Analysis (EDA) или разведочный анализ данных. EDA играет важнейшую роль после получения набора данных и ставит своей целью выяснить, как с ним работать и получить требуемый результат.

Итак, в этой статье познакомлю новичков с EDA. Не волнуйтесь, всё когда-то впервые и если вы только что узнали, что EDA существует, то к концу статьи вы будете иметь четкое представление обо всех основных моментах, связанных с EDA и вместе с тем увидите пошаговые практические примеры кодирования. Давайте разбираться!
Читать далее «Разведочный анализ данных в Python: руководство для новичков на 2021 год»

Генеративная и дискриминативная модели

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

  • Классификация изображения, например, собаки или кошки, которое подпадает под дискриминативное моделирование.
  • Создание реалистичного изображения, той же собаки или кошки — задача генеративного моделирования.

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

Что нужно для взлёта?   

Базовое понимание машинного обучения и глубокого обучения — это то, с чего нужно начать. После того, как появится основа, переходите к более сложным темам, таким как генеративные состязательные сети или GAN. Если у вас есть какой-то опыт в задачах классификации изображений (дискриминация) или реконструкции изображений (генерация), то это будет значительным бонусом. Не понимать, что именно скрывается под капотом и как моделируются проблемы — это нормально.
Читать далее «Генеративная и дискриминативная модели»

Новое пополнение команды цифровой трансформации бизнеса

Вчера, 16 июня 2021, завершились защиты ВКР бакалавров образовательного направления 38.03.05 «Бизнес-информатика». Традиционно, и это надо отметить, качество представленных к защите работ в 2021 было значительно лучше, чем в 2020. Глубина проработки и практические решения, определи успех результатов ВКР на предприятиях Челябинска. Более половины из них уже внедрены. Признание результатов ВКР практиками бизнеса является лучшим подтверждением компетенций наших выпускников.
Читать далее «Новое пополнение команды цифровой трансформации бизнеса»

2:0 в пользу Бизнес-информатики

Мотивом этой записки стала мысль Уилла Гейбрика, финансового директора Stripe и члена генерального финансового совета CNBC (Will Gaybrick, Stripe CFO and a member of the CNBC Global CFO Council), высказанная им на портале CNBC в 2018 году, и которая звучит так: «Tech’s ultimate success: Software developers are now more valuable to companies than money» или в переводе на русский «Окончательный успех технологий — для компаний теперь более ценны программисты, а не деньги».

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

Тем не менее, своим самым важным ресурсом компании злоупотребляют, потому как слишком много разработчиков связаны с проектами поддержки устаревших систем и плохого программного обеспечения, и обходятся в $300 миллиардов в год, а $85 миллиардов, связаны только с наличием плохого кода.

В следующее десятилетие опыт программистов, при правильном использовании, может добавить $3 триллиона к мировому ВВП.


Читать далее «2:0 в пользу Бизнес-информатики»

Топ 5 тенденций web-разработки на Python для 2021 года

Недавний опрос 24 000 разработчиков Python в 150 странах мира, который провела компания Packt показал, что, более половины всех разработчиков Python традиционно используют его и для веб-разработки, хотя 59% разработчиков используют его в проектах Data Science! Python обогнал Java и в мире стал вторым по популярности языком программирования для Web. Уже готов богатый набор фреймворков, например, Django, Flask и Pyramid для web-разработки. Здесь мы обсудим пять тенденций, которые делают Python наилучшим выбором для веб‑разработчиков в 2021 году.
Читать далее «Топ 5 тенденций web-разработки на Python для 2021 года»

Да, вы должны понимать, что такое обратное распространение

Когда в Стэнфорде появился курс CS231n (глубокое машинное обучение), то для него намеренно и специально были разработаны задания по программированию самого низкого уровня, включающие реальные вычисления, связанные с обратным распространением ошибок. Студенты должны были реализовать прямой и обратный проход каждого слоя в необработанном виде. Естественно, некоторые ученики неизбежно жаловались на доске объявлений в классе:

«Почему мы должны описывать обратный проход, когда в реальном мире есть фреймворки такие, как TensorFlow, которые вычисляют его автоматически?»

Кажется вполне разумно, на первый взгляд, что если после окончания курса вы никогда не собираетесь писать обратные проходы, то зачем в этом практиковаться? Преподаватели ради собственного развлечения мучают студентов? Некоторые простые ответы могут привести к аргументам типа «то, что скрывается под капотом есть бесполезная интеллектуальная мастурбация и надо ли этим заниматься» или «возможно, позже вы захотите улучшить основной алгоритм», однако, есть гораздо более сильный и практичный аргумент, которому я хотел бы посвятить целый пост:

> Проблема обратного распространения — очень даже неплохая концепция.
Читать далее «Да, вы должны понимать, что такое обратное распространение»

Рецепт приготовления нейронных сетей

Года три назад в своих Записках я опубликовал историю из научно-популярной лекции «ШАМАНСТВО» В АНАЛИЗЕ ДАННЫХ доцента ВМК МГУ имени М.В. Ломоносова, д.ф.-м.н. А.Г. Дьяконова. В ней внятно объясняется слово «шаманство» по отношении к обработке больших данных и необходимость наличия у исследователя некоторого эмпирического опыта, а не только знания строгостей математики. Вопрос соотношения детерминизма и хаоса в любых природных процессах волновал меня ещё со студенческой скамьи, а что-бы преодалеть хаос в нейронных сетях и заставить их работать должным образом творец должен их одухотворить.

С тех пор много воды утекло и накопился некоторый опыт по поводу эксплуатации и приготовления нейронных сетей, а на глаза случайно попалось эссе A Recipe for Training Neural Networks Andrej Karpathy, мысли которого с некоторыми дополнениями и комментариями созвучны моим, а выпускница магистратуры пожаловалась на низкую вероятность прогноза дефектов керамических изоляторов высоковольтных линий электропередач и всё сложилось в кучку. Так и появилась эта записка с рецептом практического приготовления нейронных сетей. Начинаем… Вперёд и вниз ↓

Есть пара фактов, которые подвигли написать этот рецепт.
Читать далее «Рецепт приготовления нейронных сетей»