Обновить
256K+

Python *

Высокоуровневый язык программирования

551,18
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

Книга «Автостопом по Python»

Время на прочтение6 мин
Охват и читатели28K
image Привет, Хаброжители! Мы издали книгу, составленную на основе одноименного онлайнового руководства и содержащую наработки многочисленных профессионалов и энтузиастов, знающих, что такое Python и чего вы от него хотите.

Это руководство не предназначено для того, чтобы обучить вас языку Python (мы приведем ссылки на множество хороших ресурсов, которые помогут вам в этом), оно скорее представляет собой (безапелляционное) руководство от специалиста, где рассматриваются популярные инструменты и лучшие практики нашего сообщества. Аудитория этой книги разнообразна — от новичков до программистов Python среднего уровня, которые либо хотели бы внести свой вклад в развитие программного обеспечения (ПО) с открытым исходным кодом, либо начинают карьеру или создают компанию и собираются писать на Python (однако для рядовых пользователей Python также будут полезными часть I и глава 5).
Читать дальше →

Кроссплатформенный IoT: Использование Azure CLI и Azure IoT Hub

Время на прочтение8 мин
Охват и читатели3.8K
Представляем первую статью из цикла «Кроссплатформенный IoT». При прочтении заголовка у вас мог возникнуть вопрос: какое отношение имеет CLI к IoT Hub? Всё просто, разработчики представили модуль, который позволяет управлять операциями IoT Hub из командной строки. Под катом вы узнаете как активировать поддержку Azure IoT Hub в Azure CLI, создать и управлять им далее.


Читать дальше →

Машинное обучение и поиск темной материи: соревнование от ЦЕРНа и Яндекса

Время на прочтение5 мин
Охват и читатели8.9K

Яндекс уже несколько лет сотрудничает с ЦЕРНом. Он сделал для учёных-физиков поиск по событиям в БАК, предоставил свои вычислительные ресурсы и технологии обработки данных — в том числе Матрикснет и ClickHouse. В 2014 году Яндекс стал ассоциированным членом CERN openlab.


Школа анализа данных Яндекса принимает участие в двух экспериментах ЦЕРНа — SHiP и LHCb. Машинное обучение в наши дни становится «микроскопом» для современных учёных, которым необходимо изучать большие объемы данных и находить в них различные закономерности. В этом году ШАД совместно с лабораторией Методов анализа больших данных Вышки и Имперским колледжем Лондона организует в Великобритании международную школу, которая посвящена способам применения современных технологий в научных исследованиях.



Эксперимент OPERA — из Швейцарии в Италию (картинка взята с сайта коллаборации OPERA)


Сегодня в рамках школы начинается открытое соревнование, участники которого будут ни много ни мало искать нейтрино. Принять участие в поисках мы приглашаем всех желающих. Им предстоит обрабатывать данные с международного эксперимента OPERA. Для этого будут предоставлены исходные данные — результаты сканирования слоев фотопленок одного «кирпича» эксперимента OPERA. Соревнование состоит из двух этапов. На первом этапе участники будут искать отдельный ливень в «кирпиче», первая вершина которого известна, на втором — несколько ливней, рассредоточенных по объему «кирпича» без дополнительной информации. Победители смогут рассказать о своих решениях ученым, работающим в ЦЕРНе.

Читать дальше →

Чудесный мир Word Embeddings: какие они бывают и зачем нужны?

Время на прочтение19 мин
Охват и читатели159K

Начать стоит от печки, то есть с постановки задачи. Откуда берется сама задача word embedding?
Лирическое отступление: К сожалению, русскоязычное сообщество еще не выработало единого термина для этого понятия, поэтому мы будем использовать англоязычный.
Сам по себе embedding — это сопоставление произвольной сущности (например, узла в графе или кусочка картинки) некоторому вектору.


image

Читать дальше →

Использование нейронных сетей для распознавания рукописных цифр Часть 1

Время на прочтение4 мин
Охват и читатели23K

Привет, Хабр! В этой серии статей приведу краткий перевод с английского языка первой главы книги Майкла Нильсона "Neural Networks and Deep Learning".


Перевод я разбил на несколько статей на хабре, чтобы было удобнее читать:
Часть 1) Введение в нейронные сети
Часть 2) Построение и градиентный спуск
Часть 3) Реализация сети для распознавания цифр
Часть 4) Немного о глубоком обучении


Введение


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


image

Простую интуицию — "у 9-тки есть петля сверху, и вертикальный хвост внизу" не так просто реализовать алгоритмически. Нейронные сети используют примеры, выводят некоторые правила и учатся на них. Более того чем больше примеров мы покажем сети, тем больше она узнает о рукописных цифрах, следовательно классифицирует их с большей точностью. Мы напишем программу в 74 строчки кода, которая будет определять рукописные цифры с точностью >99%. Итак, поехали!

Читать дальше →

Pygest #13. Релизы, статьи, интересные проекты из мира Python [04 июля 2017 — 17 июля 2017]

Время на прочтение2 мин
Охват и читатели8.2K
image Всем привет! Это уже тринадцатый выпуск дайджеста на Хабрахабр о новостях из мира Python.

В сегодняшнем выпуске вы найдёте интересные материалы, касающиеся оптимизации Python, его внутренностей, Django, машинного обучения и многого другого. Присылайте свои актуальные материалы, а также любые замечания и предложения, которые будут добавлены в ближайший дайджест.

А теперь к делу!
Перейти к дайджесту

Разработка скриптов-обёрток с помощью инструмента Sparrow

Время на прочтение5 мин
Охват и читатели4.9K

Доброе время суток! В данном посте я хочу рассказать как с помощью инструмента Sparrow лёгко и просто писать собственные обёртки к существующим скриптам и утилитам, а так же зачем вам это может понадобиться.

Читать дальше →

Метод BFGS или один из самых эффективных методов оптимизации. Пример реализации на Python

Время на прочтение4 мин
Охват и читатели65K


Метод BFGS, итерационный метод численной оптимизации, назван в честь его исследователей: Broyden, Fletcher, Goldfarb, Shanno. Относится к классу так называемых квазиньютоновских методов. В отличие от ньютоновских методов в квазиньютоновских не вычисляется напрямую гессиан функции, т.е. нет необходимости находить частные производные второго порядка. Вместо этого гессиан вычисляется приближенно, исходя из сделанных до этого шагов.

Существует несколько модификаций метода:
L-BFGS (ограниченное использование памяти) — используется в случае большого количества неизвестных.
L-BFGS-B — модификация с ограниченным использованием памяти в многомерном кубе.

Метод эффективен и устойчив, поэтому зачастую применяется в функциях оптимизации. Например в SciPy, популярной библиотеки для языка python, в функции optimize по умолчанию применяется BFGS, L-BFGS-B.

Читать дальше →

Делаем сервис по распознаванию изображений с помощью TensorFlow Serving

Время на прочтение12 мин
Охват и читатели35K

image

Всегда наступает то самое время, когда обученную модель нужно выпускать в production. Для этого часто приходится писать велосипеды в виде оберток библиотек машинного обучения. Но если Ваша модель реализована на Tensorflow, то у меня для Вас хорошая новость — велосипед писать не придется, т.к. можно использовать Tensorflow Serving.


В данной статье мы рассмотрим как использовать Tensorflow Serving для быстрого создания производительного сервиса по распознаванию изображений.

Читать дальше →

Вышел Upsource 2017.2 с поддержкой внешних инспекций кода, Python, NPM и многим другим

Время на прочтение2 мин
Охват и читатели4.9K
Всем привет! У нас отличные новости — вышел Upsource 2017.2! В этом релизе мы добавили ряд наиболее часто запрашиваемых возможностей, и, как обычно, улучшили уже имеющуюся функциональность. Давайте посмотрим, что попало в этот релиз.

Поддержка внешних инспекций кода

Если Вы используете встроенные в TeamCity инспекции кода на базе ReSharper или IntelliJ IDEA, или пользуетесь инспекциями SonarQube, теперь Вы сможете извлечь из них дополнительную пользу. Upsource 2017.2 умеет показывать результаты такого анализа в своем UI, наряду с результатами встроенных инспекций. Рецензирование кода становится немного проще, если сразу видно, какие новые потенциальные проблемы привнесло именно это изменение.

Инспекции ReSharper в Upsource
Читать дальше →

Как мы упоролись и откалибровали кофе-машину на спектрофотометре

Время на прочтение7 мин
Охват и читатели64K


Однажды, посреди рабочего дня мы внезапно осознали, что мы больше не можем так жить. Душа требовала совершить что-то бессмысленное и беспощадное во имя науки. И мы решили откалибровать кофе-машину. Нормальные люди тыкают в дефолтную кнопку и пьют все, что вытечет из кофеварки. Чуть более продвинутые для этого открывают инструкцию и тщательно ей следуют. Может быть еще читают рекомендации обжарщика, если конечно это не прогорклые noname зерна, которые пару лет лежали на безымянном складе. Нас к нормальным можно отнести с большой натяжкой, поэтому мы решили идти своим путем. Короче говоря, под легкой кофеиновой интоксикацией от седьмой чашки эспрессо мы решили задействовать весь возможный арсенал лаборатории, чтобы получить эталонный напиток.

Добро пожаловать в мир безумия, ультрацентрифуг, спектрофотометрии кофе в специальных планшетах и небольшого количества python, pandas и seaborn, чтобы визуализировать все это безобразие.

IceCash 2.0 Web АРМ Кассира и АИС по обмену данными с кассами под Linux на Python

Время на прочтение15 мин
Охват и читатели9.5K

Как-то меня спросили: «Зачем писать то, что уже написано многократно и на более профессиональном уровне? То что ты сделаешь будет заведомо хуже и лишено грамотной поддержки». Я тогда ответил просто: «Мне хочется, чтоб под линух и чтоб код свободный. Чтоб драйвера не покупать для кассы».

Да, Линуксовая касса под GPL. В этих словах, собственно и заключается точное описание этой поделки. Это абсолютно свободный код, части которого можно легко отделить и использовать в своих разработках. Вторая версия была ответом на все нововведения в рознице. Сейчас, можно сказать, что всем этим новым требованиям касса отвечает и продолжает существовать в альтернативном пространстве самописного кодинга.

Читать дальше →

Автоматизируем десктопный GUI на Python + pywinauto: как подружиться c MS UI Automation

Время на прочтение14 мин
Охват и читатели125K

Python библиотека pywinauto — это open source проект по автоматизации десктопных GUI приложений на Windows. За последние два года в ней появились новые крупные фичи:


  • Поддержка технологии MS UI Automation. Интерфейс прежний, и теперь поддерживаются: WinForms, WPF, Qt5, Windows Store (UWP) и так далее — почти все, что есть на Windows.
  • Система бэкендов/плагинов (сейчас их двое под капотом: дефолтный "win32" и новый "uia"). Дальше плавно двигаемся в сторону кросс-платформенности.
  • Win32 хуки для мыши и клавиатуры (hot keys в духе pyHook).

Также сделаем небольшой обзор того, что есть в open source для десктопной автоматизации (без претензий на серьезное сравнение).


Эта статья — частично расшифровка доклада с конференции SQA Days 20 в Минске (видеозапись и слайды), частично русская версия Getting Started Guide для pywinauto.



Читать дальше →

Ближайшие события

Как мы ловим Deadlock`и на PostgreSQL и чиним их

Время на прочтение7 мин
Охват и читатели101K

Предисловие


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

Всё это неизбежно приводит к дедлокам. Так вот, хочу вам поведать историю о том, как мы эти периодические проблемы держим в допустимых рамках.


Читать дальше →

Интервью с программистом из Тинькофф Банка Андреем Степановым о языке Python и ML

Время на прочтение5 мин
Охват и читатели25K
Серию интервью с докладчиками PyCon Russia продолжает разговор с разработчиком-аналитиком из Тинькофф Банка Андреем Степановым. Мы поговорили с Андреем о месте Python в инфраструктуре банка, о машинном обучении и о технологии распознавания речи.


Читать дальше →

Линейное программирование в python силами библиотеки scipy

Время на прочтение4 мин
Охват и читатели22K
В своей первой публикации мне хочется рассказать о том, как можно быстро и просто решить задачу линейного программирования с помощью замечательной библиотеки scipy. Для подобных задач в python есть так же pulp, но для новичков в scipy более понятный синтаксис.

Зачем может понадобиться линейное программирование на практике? Как правило, с его помощью решают задачу минимизации функции f(x) (или обратную задачу максимизации для — f(x) ).

Здесь я не буду приводить теоретические выкладки (можно посмотреть тут), а рассмотрю конкретный пример.

Итак, задача.

У нас есть 8 фабрик, которые каждую неделю производят некоторое количество продукции. Нам нужно распределить продукцию по 13 магазинам так, чтобы максимизировать суммарную прибыль, при этом разрешается закрывать нерентабельные магазины.
Читать дальше →

Интервью с разработчиком из Venmo Ниной Захаренко о языке Python и не только

Время на прочтение5 мин
Охват и читатели5K
Продолжаем серию интервью с докладчиками конференции PyCon Russia, которая пройдёт 16-17 июля в 95 км от Москвы.

Под катом — короткое интервью c Ниной Захаренко (Портленд, США), старшим инженером-программистом в Venmo, ранее — в Reddit и HBO. Нина рассказала, как начала писать на Python, какие проблемы есть у Python-сообщества и почему она ждет своё выступление на PyCon Russia.


Читать дальше →

Программный сбор данных о котировках

Время на прочтение8 мин
Охват и читатели121K
Заголовок обязывает перейти непосредственно к программному коду… Но, думаю, все же необходима вводная часть. А зачем, собственно, это нужно?

Эффективные действия на бирже связаны с тщательным анализом происходящего на рынке. Что кроется за динамикой цифр, котировок?
Читать дальше →

Автоматизация IP-сети. Часть2 – Мониторинг скорости открытия Веб страниц

Время на прочтение3 мин
Охват и читатели10K
image alt Продолжаем серию статей по доступной автоматизации в IP-сети. У каждого из инженеров, работающих с сетью Интернет, так или иначе периодически возникает потребность измерения скорости загрузки Веб странницы. Для этого существует множество инструментов, один из них это утилита wget. Например, для измерения скорости загрузки можно из консоли (Unix/Linux) воспользоваться такой командой:

[root@localhost ~]# wget -E -H -p -Q300K --user-agent=Mozilla --no-cache --no-cookies --delete-after --timeout=15 --tries=2 habrahabr.ru 2>&1 | grep Downloaded
Downloaded: 7 files, 411K in 0.3s (1.22 MB/s)

Следует отметить, что ограничение Q300K достаточное чтобы понять скорость загрузки, особенно если сетевая задержка до сайта более 10мс. При этом результаты скорости будут не очевидны если количество скаченной информации меньше 100K.

Но что, если есть потребность отслеживать скорость загрузки ресурса на постоянной основе? Вопрос можно попробовать решить при помощи небольшого скрипта, системы мониторинга (умеющей запускать скрипты) и гидроизоляционного скотча.
Читать дальше →

Спасёт ли Python от казни?

Время на прочтение3 мин
Охват и читатели17K
Доброго времени суток! При просмотре экшн-фильмов (фильмов с хорошо продуманными динамичными сценами) иногда закрадывается в голову: а реально ли это в действительности? Например, мог ли автомобиль перевернуться на маленькой скорости, как быстро можно раскачаться на верёвке без начальной скорости над пропастью…

image

Что говорит на это физика? Интересно ли писать на бумажечке и потом хвастаться клочком с формулами и парой-тройкой векторов? Давайте сделаем это безопасно и наглядно.
Читать дальше →