В издательстве ДМК Пресс вышла новая переводная книга по машинному обучению - "Построение систем машинного обучения на языке Python" (оригинал - "Building Machine Learning Systems with Python"). Как следует из названия, все примеры в книге построены на Python - одном из главных конкурентов R в области "науки о данных" в настоящее время. Тем не менее, для понимания описанных примеров знание Python не обязательно - читателю достаточно иметь опыт программирования на любом другом языке и некоторую подготовку в статистике.

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


7 Комментарии

Анонимный написал(а)…
Здравствуйте Сергей,
спасибо вам за очередную полезную новость.
Возможно вопрос немного не по формату Вашего блога, но раз уж Вы подняли тему о Python, хочу воспользоваться случаем и поинтересоваться о вашем мнении относительно альтернативных языков программирования, которые используется в Анализ Данных. По Вашему мнению, какие преимущества у R по сравнению с Python и набирающую популярность Julia?
Sergey Mastitsky написал(а)…
Спасибо за вопрос, но, честно говоря, не хотелось бы начинать сравнение R с Python здесь, поскольку, как показывает опыт подобных дискуссий на других сайтах, всё это грозит быстро превратиться в "священную войну" :)
Если очень кратко, то мое мнение таково: нужно просто четко понимать, что разные инструменты (здесь - языки) предназначены для выполнения разных задач. R - это язык изначально созданный статистиками для статистиков, и отсюда все то огромное разнообразие методов анализа и способов визуализации данных, которое мы имеем в "экосистеме R". Несмотря на эти преимущества, никому не придет в голову писать production-код на R, потому как этот язык просто не предназначен для этого. Python же - язык общего назначения, на котором такой код писать можно. Сучетом того, что сейчас есть несколько активно развивающихся Python-пакетов для анализа данных, этот язык становтся очень привлекательным для создания полноценных приложений, включающих статистические модели и т.п. компоненты. Вот, собственно, и вся разница. Для решения той или иной задачи нужно просто использовать подходящий случаю инструмент. Так и с Julia - она отличается быстродействием и потенциально хороша для работы с "большими данными" (хотя и для R теперь есть отличные решения, вроде H20). Но я лично сомневаюсь, что для Julia (да и для Python тоже) когда-нибудь будет написано столько же пакетов, сколько написано для R.

Ссылки по теме: спросите у Гугла "r vs python"
Unknown написал(а)…
Сергей ваш ход мыслей мне понятен, однако. В вашей статье " В Лондоне прошла конференция "Эффективные применения языка R - 2015" вы пишите "Одним из приглашенных докладчиков был Джо Ченг (Joe Cheng) из RStudio - главный разработчик фреймворка Shiny. Помимо приведения примеров использования Shiny для создания аналитических веб-приложений, Джо рассказал также о некоторых планах по расширению возможностей Shiny. В частности, он и его коллеги сейчас работают над тем, что они называют "Shiny Gadgets". По сути, это будет набор функций, предназначенных для облегчения работы аналитика при выполнении разведочного анализа данных. Например, работая в RStudio, можно будет построить интерактивную диаграмму рассеяния, выделить на ней интересующую нас область, приблизить ее для детального рассмотрения и затем нажатием одной кнопки создать отдельную таблицу, содержащую данные из этой области."
Ис чего следует, что Язык R в применении Shiny имеет право существование не только на "экспериментальные" разработки, но и на вполне промышленные технологии.
Сергей или я не правильно понимаю ваши слова?
12 написал(а)…
Например, работая в RStudio, можно будет построить интерактивную диаграмму рассеяния, выделить на ней интересующую нас область, приблизить ее для детального рассмотрения и затем нажатием одной кнопки создать отдельную таблицу, содержащую данные из этой области."
Так это уже и сейчас сделано, и работает
Sergey Mastitsky написал(а)…
Дмитрий, язык R более, чем имеет "право на существование", но как таковой он не задумывался для работы с большими объемами данных и вычислениями в близком к реальному времени. См. мой комментарий выше - у каждого инструмента, включая R, есть свое назначение и круг задач, для которых его можно использовать.
Sergey Mastitsky написал(а)…
Алексей, речь идет о том, что Shiny Gadgets (название, кстати, может измениться) станут частью Shiny, из чего следует, что соответствующие опции можно будет использовать в том числе и в Shiny-приложениях. Применение в RStudio - это только один из возможных примеров (который я привел просто потому, что его привел Джо Ченг).
Анонимный написал(а)…
Сергей, так я и про Shiny,
там уже это есть, вот например:
http://shiny.rstudio.com/gallery/plot-interaction-selecting-points.html
аналогично и с зумом, может не очень удобно, но тем не менее.
Но если сделают более удобнее, то будет вообще супер.
Новые Старые