Как стать автором
Обновить
5
15
Рузин Алексей @Ruzin

Разработчик

Отправить сообщение

Python Testing с pytest. Использование pytest с другими инструментами, ГЛАВА 7

Время на прочтение24 мин
Количество просмотров36K

Вернуться


Обычно pytest используется не самостоятельно, а в среде тестирования с другими инструментами. В этой главе рассматриваются другие инструменты, которые часто используются в сочетании с pytest для эффективного и результативного тестирования. Хотя это отнюдь не исчерпывающий список, обсуждаемые здесь инструменты дадут вам представление о вкусе силы смешивания pytest с другими инструментами.


Читать дальше →
Всего голосов 26: ↑19 и ↓7+12
Комментарии1

Нейронные сети в детектировании номеров

Время на прочтение7 мин
Количество просмотров51K


Распознавание автомобильных номеров до сих пор является самым продаваемым решением на основе компьютерного зрения. Сотни, если не тысячи продуктов конкурируют на этом рынке уже на протяжении 20-25 лет. Отчасти поэтому сверточные нейронные сети (CNN) не бьют прежние алгоритмические подходы на рынке.

Но опыт последних лет говорит, что алгоритмы CNN позволяют делать надежные и гибкие для применения решения. Есть и еще одно удобство: при таком подходе всегда можно улучшить надежность решения на порядок после реального внедрения за счет переобучения. Кроме того, такие алгоритмы отлично реализуются на GPU (графических модулях), которые значительно эффективней с точки зрения потребления электроэнергии, чем обычные процессоры. А платформа Jetson TX от NVidia так просто потребляет очень мало по меркам современных вычислителей. Наглядное «энергетическое превосходство»:
Читать дальше →
Всего голосов 67: ↑67 и ↓0+67
Комментарии30

Создание пакета Debian с нуля

Время на прочтение10 мин
Количество просмотров38K
Создание пакета Debian с нуля является своего рода волшебным процессом. Вы могли бы начать гуглить с запросом “Создание пакета Debian с нуля” и получить множество результатов, ни один из которых не стал бы тем, который Вам необходим. Несомненно, Вы найдете большой обзор команд, которые используются в Debian и, если Вы роете достаточно глубоко, Вы сможете все же найти пару команд, которые помогут создать базовый пакет Debian, но не смогут объяснить, что происходит. Более подробную информацию о том, что все же «происходит» Вы можете получить, в данном посте мы попробуем это частично затронуть.

Читать дальше →
Всего голосов 51: ↑34 и ↓17+17
Комментарии27

Ардуино С++11 библиотека для управления светодиодными матрицами

Время на прочтение2 мин
Количество просмотров13K
led matrix cascade 8x8 Сегодня я хотел бы выступить в необычном для хаба Arduino качестве и рассказать не об устройстве, а о библиотеке.
Речь пойдет о библиотеке LedMatrix (русскоязычное описание), которая умеет управлять светодиодными матрицами 8x8 на чипах MAX7219 и MAX7221.

Читать дальше →
Всего голосов 9: ↑8 и ↓1+7
Комментарии13

Как писать презентацию для вложения в письмо

Время на прочтение3 мин
Количество просмотров18K


Привет! Я продолжаю цикл (в блоге замечательного человека Михаила, владельца Текстброкера) про буквы, и что с ними можно сделать.

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

Есть два важных исключения. Первое – это когда вы говорите с большим бизнесом. Там презентация будет заботливо распечатана и положена на стол руководителю. Руководитель и получатель вашего письма – разные лица, поэтому нужна суть, которая дойдёт и до него. Второе исключение – это когда нужно укомпоновать много картинок, графиков и других штук, то есть, по факту, приложить или каталог товаров, или же схему проекта.

Главное правило презентации очень простое: если первый и второй кадр про вас, а не про получателя – она сразу летит в корзину без вопросов.
Читать дальше →
Всего голосов 19: ↑19 и ↓0+19
Комментарии12

Опыт переезда для работы программистом в Берлин (часть 2)

Время на прочтение7 мин
Количество просмотров46K
Добрый день! В первой части я рассказывал о том, как получал визу и искал жилье, а в этой расскажу, как найти работу в Германии и как это делал я. Забегая вперед, скажу, что в Берлине мне потребовалась 10 дней, чтобы получить первый оффер, который я в итоге и принял. Но приготовления были, конечно, более длительными.
Читать дальше →
Всего голосов 32: ↑31 и ↓1+30
Комментарии108

Диалог с инвестором: Живой пример и разбор ситуации

Время на прочтение10 мин
Количество просмотров23K


Cтэнфордский курс CS183B: How to start a startup. Стартовал в 2012 году под руководством Питера Тиля. Осенью 2014 года прошла новая серия лекций ведущих предпринимателей и экспертов Y Combinator:

Вторая часть курса

Первая часть курса
Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Комментарии0

Постановка задачи компьютерного зрения

Время на прочтение13 мин
Количество просмотров71K

Последние лет восемь я активно занимаюсь задачами, связанными с распознаванием образов, компьютерным зрением, машинным обучением. Получилось накопить достаточно большой багаж опыта и проектов (что-то своё, что-то в ранге штатного программиста, что-то под заказ). К тому же, с тех пор, как я написал пару статей на Хабре, со мной часто связываются читатели, просят помочь с их задачей, посоветовать что-то. Так что достаточно часто натыкаюсь на совершенно непредсказуемые применения CV алгоритмов.
Но, чёрт подери, в 90% случаев я вижу одну и ту же системную ошибку. Раз за разом. За последние лет 5 я её объяснял уже десяткам людей. Да что там, периодически и сам её совершаю…

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

Тривиальная мысль. Но все ошибаются. Абсолютно все. В статье я приведу несколько примеров таких ситуаций. Когда задача поставлена плохо, когда хорошо. И какие подводные камни вас ждут в формировании ТЗ для систем компьютерного зрения.
Читать дальше →
Всего голосов 72: ↑72 и ↓0+72
Комментарии54

Иерархическая классификация сайтов на Python

Время на прочтение8 мин
Количество просмотров27K
Привет, Хабр! Как упоминалось в прошлой статье, немаловажной частью нашей работы является сегментация пользователей. Как же мы это делаем? Наша система видит пользователей как уникальные идентификаторы cookies, которые им присваиваем мы или наши поставщики данных. Выглядит этот id, например, так:

42bcfae8-2ecc-438f-9e0b-841575de7479

Эти номера выступают ключами в различных таблицах, но первоначальным value является, в первую очередь, URL страниц, на которых данная кука была загружена, поисковые запросы, а также иногда некоторая дополнительная информация, которую даёт поставщик – IP-адрес, timestamp, информация о клиенте и прочее. Эти данные довольно неоднородные, поэтому наибольшую ценность для сегментации представляет именно URL. Создавая новый сегмент, аналитик указывает некоторый список адресов, и если какая-то кука засветится на одной из этих страничек, то она попадает в соответствующий сегмент. Получается, что чуть ли не 90% рабочего времени таких аналитиков уходит на то, чтобы подобрать подходящий набор урлов – в результате кропотливой работы с поисковиками, Yandex.Wordstat и другими инструментами.
logo
Получив таким образом более тысячи сегментов, мы поняли, что этот процесс нужно максимально автоматизировать и упростить, при этом иметь возможность мониторинга качества алгоритмов и предоставить аналитикам удобный интерфейс для работы с новым инструментом. Под катом я расскажу, как мы решаем эти задачи.
Читать дальше →
Всего голосов 36: ↑36 и ↓0+36
Комментарии18

Рекурентная нейронная сеть в 10 строчек кода оценила отзывы зрителей нового эпизода “Звездных войн”

Время на прочтение11 мин
Количество просмотров159K
Hello, Habr! Недавно мы получили от “Известий” заказ на проведение исследования общественного мнения по поводу фильма «Звёздные войны: Пробуждение Силы», премьера которого состоялась 17 декабря. Для этого мы решили провести анализ тональности российского сегмента Twitter по нескольким релевантным хэштегам. Результата от нас ждали всего через 3 дня (и это в самом конце года!), поэтому нам нужен был очень быстрый способ. В интернете мы нашли несколько подобных онлайн-сервисов (среди которых sentiment140 и tweet_viz), но оказалось, что они не работают с русским языком и по каким-то причинам анализируют только маленький процент твитов. Нам помог бы сервис AlchemyAPI, но ограничение в 1000 запросов в сутки нас также не устраивало. Тогда мы решили сделать свой анализатор тональности с блэк-джеком и всем остальным, создав простенькую рекурентную нейронную сеть с памятью. Результаты нашего исследования были использованы в статье “Известий”, опубликованной 3 января.



В этой статье я немного расскажу о такого рода сетях и познакомлю с парой классных инструментов для домашних экспериментов, которые позволят строить нейронные сети любой сложности в несколько строк кода даже школьникам. Добро пожаловать под кат.
Читать дальше →
Всего голосов 82: ↑75 и ↓7+68
Комментарии48

Распознавание речи с помощью CMU Sphinx

Время на прочтение4 мин
Количество просмотров83K
CMU Sphinx сейчас является крупнейшим проектом по распознаванию человеческой речи. В инструментарий входят следующие программы и библиотеки:

  • Pocketsphinx — небольшая программа, которая принимает на вход произвольные акустические модели, грамматики и словари, а также звуковой поток(либо звуковой файл, либо сам берет поток с микрофона). На выходе получается распознанный текст. Написана на C, работает быстро.
  • Sphinxbase — библиотека необходимая для работы Pocketsphinx
  • Sphinx4 — гибкая библиотека для распознавания, написана на Java.
  • Sphinxtrain — программа для обучения акустических моделей.

Для работы со CMU Sphinx важно запомнить несколько определений и понять их отличия.

  • Акустическая модель — отвечает за сопоставление звуку произнесенной фонемы. Акустическую модель для русского языка можно скачать на сайте проекта. Русская акустическая и языковая модели. А также словарь.
  • Словарь — это файл, в котором написаны сопоставлены лексемы и фонемы (слово и его транскрипция). Например, калькулятор (k ay ll k u ll ja t ay r). Он необходим для преобразования фонем, распознанных акустической моделью в лексемы.
  • Грамматика — это формальные правила, которые описывают простые правила построения предложений. Лексемы, полученные на предыдущем шаге пытаются сопоставиться с грамматикой и если удачно, то выводится результат.
  • Языковая модель — это статистическая модель языка. Она описывает вероятности слов и их комбинаций. Таким образом распознавание лексем — это максимизация правдоподобности распознанной фразы.

Чем сложнее язык, чем обширней правила и размер словаря, тем хуже точность распознавания. Поэтому, для минимизации ошибки, имеет смысл создания упрощенных правил, которые будут описывать конкретную задачу.
Читать дальше →
Всего голосов 22: ↑20 и ↓2+18
Комментарии2

Black Swift: зачем мы его сделали

Время на прочтение7 мин
Количество просмотров126K
Как уважаемые хабровчане знают, вот уже почти год мы разрабатываем маленький компьютер (примерно с SD-карточку), работающий под OpenWRT, со встроенным Wi-Fi, USB, Ethernet, азартными играми и доступными женщинами. Дмитрий dzhe уже несколько раз писал про него — и, в общем, с каждым разом собирал в комментариях один и тот же вопрос: а зачем вы вообще его делаете? Ну ведь есть же Raspberry Pi, стоит он столько же, есть VoCore, Carambola, Edison, в конце концов, — зачем нужен ещё один «нанокомпьютер»?

Пожалуй, надо наконец на этот вопрос ответить — заодно отметив этим ответом появление у нас своего корпоративного блога (спасибо, Хабр!), а также запуск отдельного веб-сайта, посвященного только этому проекту.



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

Читать дальше →
Всего голосов 122: ↑120 и ↓2+118
Комментарии228

Как нормальные пацаны заходят в Мегу: 7 магазинов за месяц

Время на прочтение6 мин
Количество просмотров125K

Мы в Меге Химки, фото одного из наших тайных покупателей на независимой проверке

Привет!
Тут рассказывали, что Мега — это невозможно. Скажем так, наш опыт показывает немного обратное. И, чтобы не плодить иллюзии, расскажу чуть подробнее.

Во-первых, надо понимать, что Мега — это настоящий Клондайк. Если знать и уметь. Причина очень простая — реально много людей (не каждый торговый центр так может), все они ориентированы на шоппинг и очень платёжеспособны, плюс очень правильная и отточенная инфраструктура, порядки. Что, собственно, из плюсов может становиться минусами, если вы не развились до нужного уровня.

У нас с весны открыт магазин в Химках, полтора года работает магазин в Нижнем Новгороде, был магазин в Меге Уфы. В декабре мы открыли ещё 7 магазинов в Мегах.
Читать дальше →
Всего голосов 242: ↑219 и ↓23+196
Комментарии148

Параллельное программирование с CUDA. Часть 1: Введение

Время на прочтение11 мин
Количество просмотров127K

Еще одна статья о CUDA — зачем?


На Хабре было уже немало хороших статей по CUDA — раз, два и другие. Однако, поиск комбинации «CUDA scan» выдал всего 2 статьи никак не связанные с, собственно, алгоритмом scan на GPU — а это один из самых базовых алгоритмов. Поэтому, вдохновившись только что просмотренным курсом на Udacity — Intro to Parallel Programming, я и решился написать более полную серию статей о CUDA. Сразу скажу, что серия будет основываться именно на этом курсе, и если у вас есть время — намного полезнее будет пройти его.
Читать дальше →
Всего голосов 29: ↑26 и ↓3+23
Комментарии36

Интерактивное голосовое редактирование текста с помощью новых речевых технологий от Яндекса

Время на прочтение11 мин
Количество просмотров96K
Сегодня наше приложение Диктовка для интерактивного написания и редактирования текста голосом появилось в AppStore и Google Play. Его главная задача — продемонстрировать часть новых возможностей комплекса речевых технологий Яндекса. Именно о том, чем интересны и уникальны наши технологии распознавания и синтеза речи, я хочу рассказать в этом посте.



Пара слов, чтобы вы понимали, о чём пойдёт речь. Яндекс уже давно предоставляет бесплатное мобильное API, которое можно использовать, например, для распознавания адресов и голосовых запросов к поиску. За этот год мы смогли довести его качество почти до того же уровня, на котором такие запросы и реплики понимают сами люди. И теперь мы делаем следующий шаг — модель для распознавания свободной речи на любую тему.

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

Обо всём этом, а также о некоторых других возможностях SpeechKit: об активации голосом, автоматической расстановке пунктуационных знаков и распознавании смысловых объектов в тексте — читайте ниже.
Читать дальше →
Всего голосов 116: ↑113 и ↓3+110
Комментарии104

«One Last Thing» — документальный фильм о Стиве Джобсе (2011 год), профессиональный русский перевод

Время на прочтение1 мин
Количество просмотров13K
image

«Одна последняя вещь» (One Last Thing) — документальный фильм о Стиве Джобсе, выпущенный в 2011 году. В фильм включено неизвестное интервью Стива Джобса, данное в 1994 году, а также интервью со Стивом Возняком, Рональдом Уэйном, Дином Хови, Россом Перо. Перевод на русский язык — канал GTV.

Читать дальше →
Всего голосов 76: ↑55 и ↓21+34
Комментарии84

Маверики в деле

Время на прочтение3 мин
Количество просмотров766
image

Don't worry about what anybody else is going to do… The best way to predict the future is to invent it.

Эта книга — воплощение вдохновения.

Она дает «крылья» или мощнейший «пинок под зад», кому как больше нравится.

Авторы исследовали и выделили общие черты трех дюжин компаний, которые благодаря своей оригинальности и креативности разделили всю отрасль на две половины: себя и всех остальных.
Читать дальше →
Всего голосов 20: ↑12 и ↓8+4
Комментарии15

3 в 1: Обсуждения, задачи, документация

Время на прочтение4 мин
Количество просмотров4.9K

В нашей команде работает более 30 человек. Мы разрабатываем масштабируемые решения для web. Живем в Томске, Санкт-Петербурге и в Москве. Для организации совместной работы над задачами мы использовали task-трекер. Во время проектов создавались ценные наработки и нужно было организовать работу со знаниями. Мы пробовали различные wiki-системы. Оказалось, что большая часть наших знаний создается при решении текущих задач. Мы сталкивались с проблемами:
  • Заносить и вести все задачи в task-трекере неудобно, и поэтому сотрудники все время переходят на общение через мессенджеры.
  • Много знаний оседает в e-mail и месенджерах. Перенос знаний из переписки в task-трекер и wiki отнимает много сил и времени.
  • Если при планировании проекта в wiki была записана вся концепция проекта, то с каждым днем различий между информацией в wiki и реальным положением дел становится все больше, и поддержка базы знаний становится неоправданно трудоемкой.
Решая эти проблемы, мы разработали собственную методологию и среду совместной работы. Так родился новый проект. В этой статье хотим рассказать о нем. Для начала посмотрим на то, как организована совместная работа в команде.
Читать дальше →
Всего голосов 43: ↑38 и ↓5+33
Комментарии35

Ричард Фейнман: удовольствие делать открытия

Время на прочтение1 мин
Количество просмотров11K


Первая часть программы Horizon (BBC, 1981) с Ричардом Фейнманом. О красоте, об отце, о названиях и именах, об алгебре, о наблюдениях и униформе. Это интервью во многом пересекается с книгой "Вы, конечно, шутите, мистер Фейнман", поэтому по большей части монолог касается жизни ученого, его взгляде на жизнь и тому, как такой взгляд развился и кто на него повлиял.
Читать дальше →
Всего голосов 177: ↑170 и ↓7+163
Комментарии30

Работа и жизнь в Дубае. Мой опыт

Время на прочтение3 мин
Количество просмотров9.4K
В процессе общения в личке с Londoner после его поста, а также вопросов, которые начали задавать после моего комментария появилось желание рассказать о том, как мне живется и работается в Дубае (ОАЭ) и ответить на все поставленные вопросы.

Готовы ли Вы рассматривать ОАЭ как страну для постоянного проживания? Уж очень много восточной специфики, или я не прав?


Что касается Дубая в частности и ОАЭ в целом, то да… Я рассматриваю этот город как место постоянного проживания) Собственно тут, я уже проживаю год (без малого). И собираюсь оставаться как можно дольше.
Дальше больше...
Всего голосов 146: ↑129 и ↓17+112
Комментарии174
1
23 ...

Информация

В рейтинге
394-й
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность