Как стать автором
Обновить
-1
0

Пользователь

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

LEGO MINDSTORMS Education EV3 + MicroPython: программируем детский конструктор взрослым языком

Время на прочтение5 мин
Количество просмотров40K
Привет, Хабр! Мы уже рассказывали о платформе LEGO MINDSTORMS Education EV3. Основные задачи этой платформы — обучение на практических примерах, развитие навыков STEAM и формирование инженерного мышления. В ней можно проводить лабораторные работы по изучению механики и динамики. Лабораторные стенды из кубиков LEGO и утилиты по регистрации и обработке данных делают опыты еще интереснее и нагляднее и помогают детям лучше понять физику. Например, школьники могут собрать данные о температуре плавления и с помощью приложения систематизировать их и представить в виде графика. Но это только начало: сегодня мы расскажем, как дополнить этот набор средой программирования MicroPython и использовать его для обучения робототехнике.


Читать дальше →
Всего голосов 24: ↑24 и ↓0+24
Комментарии4

Обзор NeurIPS-2018 (ex. NIPS)

Время на прочтение20 мин
Количество просмотров4.8K
В начале декабря в Монреале прошла 32-ая ежегодная конференция Neural Information Processing Systems, посвященная машинному обучению. По неофициальному табелю о рангах эта конференция является топ-1 событием подобного формата в мире. Все билеты на конференцию в этом году были раскуплены за рекордные 13 минут. У нас большая команда data scientist’ов МТС, но лишь одному из них – Марине Ярославцевой (magoli) – посчастливилось попасть в Монреаль. Вместе с Данилой Савенковым (danila_savenkov), который остался без визы и следил за конференцией из Москвы, мы расскажем о работах, показавшихся нам наиболее интересными. Эта выборка очень субъективна, но, надеемся, она заинтересует вас.

image
Читать дальше →
Всего голосов 15: ↑15 и ↓0+15
Комментарии3

Генерация окружения на основе звука и музыки в Unity3D

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

Аннотация


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



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

Читать дальше →
Всего голосов 6: ↑6 и ↓0+6
Комментарии6

Михаил Бессмельцев с коллегой разработал новые алгоритмы для векторизации графики

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

Слева направо: оригинал, оснащённое поле (frame field) и окончательный результат. На базе зашумлённого растрового изображение в оттенках серого вычисляется оснащённое поле, выровненное по линиям картинки. На острые углы типа X- и T-пересечений накладываются векторы по обоим направлениям. Затем из этого поля извлекается топология чертежа — и производится окончательная генерация векторных кривых

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

Первые алгоритмы векторизации изображений появились в начале 1990-х годов и
использовались в инструментах для редактирования векторной графики, таких как Adobe Illustrator (Live Trace), CorelDRAW (PowerTRACE) и Inkscape. Несмотря на их широкое внедрение в промышленности, эти алгоритмы до сих пор страдают от серьёзных недостатков и находятся в активной разработке. В нескольких индустриях, где векторизация крайне необходима, включая традиционную анимацию и инженерное проектирование, она часто выполняется вручную. Дизайнеры кропотливо обводят отсканированное изображение с помощью инструментов рисования.
Читать дальше →
Всего голосов 82: ↑80 и ↓2+78
Комментарии28

Как защитить своего ребенка от мусора на YouTube и сделать кастомный плеер с белым списком каналов

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

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



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


К сожалению, я очень быстро уяснил, что детский ютуб — это просто АДОВЫЙ ТРЕШ. Про это даже на Хабре уже был перевод статьи. Детские каналы — это какие-то бездонные клоаки, наполненные вырвиглазными видео типа "разворачиваем сто киндер-сюрпризов", "дурацкие стишки с убогой 3д графикой под крикливую музыку" и "гоняем машинки в Beam NG под дурацкие комментарии". По какой-то причине все это является очень привлекательным для маленьких детей, которые бросаются кликать на такие видео как только увидят их в рекомендованных. А YouTube не позволяет управлять рекомендациями. Даже дав своему сыну планшет с включенными "нормальными" мультиками, я уже через пару минут наблюдаю, как он за два клика по рекомендациям опять находит эти чертовы шоколадные яйца и снова начинает в них залипать.


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

Читать дальше →
Всего голосов 91: ↑87 и ↓4+83
Комментарии364

Откройте для себя квантовое программирование с Quantum Katas

Время на прочтение2 мин
Количество просмотров10K
Привет, Хабр! Мы рады рассказать, что создали Quantum Katas — открытый проект, помогающий изучать квантовые вычисления и язык Q# в комфортном темпе. Кстати, все упражнения сделаны таким образом, чтобы давать feedback сразу после выполнения. Подробности под катом!

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

Kaggle – наша экскурсия в царство оверфита

Время на прочтение19 мин
Количество просмотров37K
Kaggle — это платформа для проведения конкурсов по машинному обучению. На Хабре частенько пишут про неё: 1, 2, 3, 4, и.т.д. Конкурсы на Kaggle интересные и практичные. Первые места обычно сопровождаются неплохими призовыми (топовые конкурсы — более 100к долларов). В последнее время на Kaggle предлагали распознавать:


И многое-многое другое.

Мне давно хотелось попробовать, но что-то всё время мешало. Я разрабатывал много систем, связанных с обработкой изображений: тематика близка. Навыки более лежат в практической части и классических Computer Vision (CV) алгоритмах, чем в современных Machine Learning техниках, так что было интересно оценить свои знания на мировом уровне плюс подтянуть понимание свёрточных сетей.

И вот внезапно всё сложилось. Выпало пару недель не очень напряжённого графика. На kaggle проходил интересный конкурс по близкой тематике.Я обновил себе комп. А самое главное — подбил vasyutka и Nikkolo на то, чтобы составить компанию.

Сразу скажу, что феерических результатов мы не достигли. Но 18 место из 1.5 тысяч участников я считаю неплохим. А учитывая, что это наш первый опыт участия в kaggle, что из 3х месяц конкурса мы участвовали лишь 2.5 недели, что все результаты получены на одной единственной видеокарте — мне кажется, что мы хорошо выступили.

О чём будет эта статья? Во-первых, про саму задачу и наш метод её решения. Во-вторых, про процесс решения CV задач. Я писал достаточно много статей на хабре о машинном зрении(1,2,3), но писанину и теорию всегда лучше подкреплять примером. А писать статьи по какой-то коммерческой задаче по очевидным причинам нельзя. Теперь наконец расскажу про процесс. Тем более что тут он самый обычный, хорошо иллюстрирующий как задачи решаются. В-третьих, статья про то, что идёт после решения идеализированной задаче в вакууме: что будет когда задача столкнётся с реальностью.


Читать дальше →
Всего голосов 66: ↑65 и ↓1+64
Комментарии32

Внезапный диван леопардовой расцветки

Время на прочтение8 мин
Количество просмотров83K
Если вы интересуетесь искусственным интеллектом и прочим распознаванием, то наверняка уже видели эту картинку:


А если не видели, то это результаты Хинтона и Крижевского по классификации ImageNet-2010 глубокой сверточной сетью

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

Это вообще довольно любопытный результат, если задуматься. Потому что… скажем, вы знаете, как отличить одного большого пятнистого котика от другого большого пятнистого котика? Я, например, нет. Наверняка есть какие-то зоологические, достаточно тонкие различия, типа общей стройности/массивности и пропорций тела, но мы же все-таки говорим о компьютерном алгоритме, которые до сих пор допускают какие-то вот такие достаточно глупые с человеческой точки зрения ошибки. Как он это делает, черт возьми? Может, тут что-то связанное с контекстом и фоном (леопарда вероятнее обнаружить на дереве или в кустах, а гепарда в саванне)? В общем, когда я впервые задумался над конкретно этим результатом, мне показалось, что это очень круто и мощно, разумные машины где-то за углом и поджидают нас, да здравствует deep learning и все такое.

Так вот, на самом деле все совершенно не так.
под катом пятна
Всего голосов 148: ↑145 и ↓3+142
Комментарии141

A/B тест — это просто

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


A/B тестирование — это мощный маркетинговый инструмент для повышения эффективности работы вашего интернет-ресурса. С помощью A/B тестов повышают конверсию посадочных страниц, подбирают оптимальные заголовки объявлений в рекламных сетях, улучшают качество поиска.

Мне часто приходится сталкиваться с задачами организации A/B тестирования в различных интернет-проектах. В этой статье хочу поделиться необходимыми базовыми знаниями для проведения тестов и анализа результатов.
Читать дальше →
Всего голосов 28: ↑24 и ↓4+20
Комментарии13

27 отличных open source-инструментов для веб-разработки

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


Перевод 27 Amazing Web Development Tools for the Past Year (v.2018)

В 2017-м мы сравнили около 7 500 open source-инструментов для веб-разработки, из которых выбрали 27 лучших (0,4%). Это крайне конкурентный список, в который вошли инструменты, библиотеки и проекты, опубликованные в течение 2017-го. Mybridge AI оценивает их качество на основании популярности, заинтересованности и новизне. Чтобы было понятно, у выбранных продуктов среднее количество звёзд на Github — 5260.

Open source-инструменты могут почти даром повысить вашу продуктивность. Также вы можете чему-то научиться, читая исходный код и создавая что-нибудь на основе этих проектов. Так что рекомендуем уделить время и поэкспериментировать с инструментами из нашей подборки, возможно, какие-то из них прошли мимо вас.
Читать дальше →
Всего голосов 70: ↑55 и ↓15+40
Комментарии10

Нейросеть Giraffe за 72 часа научилась играть в шахматы на уровне международного мастера ФИДЕ

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


Студент Имперского колледжа Лондона Мэтью Лай (Matthew Lai) разработал компьютерную программу Giraffe, которая трое суток играла в шахматы сама с собой — и смогла извлечь все предметно-ориентированные знания, необходимые для игры на уровне международного мастера ФИДЕ. Для этого ей достаточно вычислительных ресурсов нормального компьютера. Обучение нейросети происходило 72 часа в 20 тредов на машине с двумя 10-ядерными процессорами Xeon E5-2660.
Читать дальше →
Всего голосов 38: ↑35 и ↓3+32
Комментарии25

Модель прогнозирования временных рядов по выборке максимального подобия: пояснение и пример

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

Предисловие


Это моя модель. Я ее придумала, программно реализовала, изучила особенности и описала. Полученное описание защитила как диссертацию по теме «Модель прогнозирования временных рядов по выборке максимального подобия». Разработанная модель относится к классу статистических моделей прогнозирования и строит прогноз временного ряда на основании фактических значений того же ряда. Подробнее о классификации я писала ранее. Одна из модификаций модели позволяет учитывать влияние внешних факторов на прогноз.


Файлы с реализованным примером можно скачать в архиве.


UPD 07.03.2019: Доступна обновленная версия примера для MATLAB 2015b с комментариями на английском языке.

Определим вопросы и ответы
Всего голосов 16: ↑15 и ↓1+14
Комментарии20

Классификация методов и моделей прогнозирования

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

Я занимаюсь прогнозированием временных рядов уже более 5 лет. В прошлом году мною была защищена диссертация по теме «Модель прогнозирования временных рядов по выборке максимального подобия», однако вопросов после защиты осталось порядочно. Вот один из них — общая классификация методов и моделей прогнозирования.


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


В чем разница между методом и моделью прогнозирования?


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


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


Совокупность метода и модели образуют полный рецепт!


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

Yargy-парсер и библиотека Natasha. Извлечения структурированной информации из текстов на русском языке

Время на прочтение12 мин
Количество просмотров83K
В 2020 году библиотека Natasha значительно обновилась, на Хабре опубликована статья про актуальную версию. Чтобы использовать инструменты, описанные в этом тексте, установите старую версию библиотеки pip install natasha<1 yargy<0.13.

Раздел про Yargy-парсер актуален и сейчас.


Есть стандартная задача извлечения именованных сущностей из текста (NER). На входе текст, на выходе структурированные, нормализованные объекты, например, с именами, адресами, датами:



Задача старая и хорошо изученная, для английского языка существует масса коммерческих и открытых решений: Spacy, Stanford NER, OpenNLP, NLTK, MITIE, Google Natural Language API, ParallelDots, Aylien, Rosette, TextRazor. Для русского тоже есть хорошие решения, но они в основном закрытые: DaData, Pullenti, Abbyy Infoextractor, Dictum, Eureka, Promt, RCO, AOT, Ahunter. Из открытого мне известен только Томита-парсер и свежий Deepmipt NER.

Я занимаюсь анализом данных, задача обработки текстов одна из самых частых. На практике оказывается, что, например, извлечь имена из русского текста совсем непросто. Есть готовое решение в Томита-парсере, но там неудобная интеграция с Python. Недавно появилось решение от ребят из iPavlov, но там имена не приводятся к нормальной форме. Для извлечения, например, адресов («ул. 8 Марта, д.4», «Ленинский проезд, 15») открытых решений мне не известно, есть pypostal, но он чтобы парсить адреса, а не искать их в тексте. C нестандартными задачами типа извлечения ссылок на нормативные акты («ст. 11 ГК РФ», «п. 1 ст. 6 Закона № 122-ФЗ») вообще непонятно, что делать.

Год назад Дима Веселов начал проект Natasha. С тех пор код был значительно доработан. Natasha была использована в нескольких крупных проектах. Сейчас мы готовы рассказать о ней пользователям Хабра.
Natasha — это аналог Томита-парсера для Python (Yargy-парсер) плюс набор готовых правил для извлечения имён, адресов, дат, сумм денег и других сущностей.
В статье показано, как использовать готовые правила из Natasha и, самое главное, как добавлять свои с помощью Yargy-парсера.
Читать дальше →
Всего голосов 87: ↑86 и ↓1+85
Комментарии33

Как уже снова не получить телефон (почти) любой красотки в Москве, или интересная особенность MT_FREE

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

UPD0 14.03 8:21 — Телефон больше не получить. Остальные интересные данные пока остались.


UPD1 14.03 10:39 — Дабы не очернять ребят из саппорта MaximaTelecom: Сообщил о ней я окольными путями, но раз пять переспросил и уточнил, дошло ли моё письмо до адресата — короче говоря, убедился, что оно у эфемерного (имена просили молчать) ответственного за вафли лица в метро. Я признаю, что это тупо, но цепочка "проблема в мосметро" → "у меня уже были связи со всяким мос, надо позвонить им" мне показалась весьма и весьма логичной в момент обнаружения уязвимости.


UPD2 14.03 15:40 — Уязвимость была найдена в uid Antxak — суть в том, что в uid лежит md5 телефона без соли. Снова можно искать телефоны.


Пример намайненного телефона

image


UPD3 14.03 18:55 — Уязвимый хэш в uid был заменен на тот же, что и в телефоне. Пока не раскололи последний.


UPD4 15.03 20:51 — Значения и ключи почти всех полей были заменены на предположительно обфускованные.

Читать дальше →
Всего голосов 131: ↑130 и ↓1+129
Комментарии102

Оценка премии опционов — аналитические формулы vs моделирование

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

Введение


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

Находясь под впечатлением прочитанных не так давно историй взлетов и метаморфоз рынков деривативов — прежде всего, фьючерсных и опционных контрактов, я заинтересовался нетривиальным ценообразованием опционов. Мне открылось, что, хотя интернет полон рерайтов статей, толкующих знаменитую формулу Блэка-Шоулза, практических инструментов — web-сайтов, технологических программ или банальных руководств для программиста — не математика, по данному вопросу в интернете недостает. Пришлось вспомнить азы тервера и адаптировать строгие математические описания в популярном, понятном, прежде всего, мне самому, формате.
Читать дальше →
Всего голосов 31: ↑30 и ↓1+29
Комментарии10

AlphaGo Zero совсем на пальцах

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

19 октября 2017 года команда Deepmind опубликовала в Nature статью, краткая суть которой сводится к тому, что их новая модель AlphaGo Zero не только разгромно обыгрывает прошлые версии сети, но ещё и не требует никакого человеческого участия в процессе тренировки. Естественно, это заявление произвело в AI-коммьюнити эффект разорвавшейся бомбы, и всем тут же стало интересно, за счёт чего удалось добиться такого успеха.

По мотивам материалов, находящихся в открытом доступе, Семён sim0nsays записал отличный стрим:


А для тех, кому проще два раза прочитать, чем один раз увидеть, я сейчас попробую объяснить всё это буквами.

Сразу хочу отметить, что стрим и статья собирались в значительной степени по мотивам дискуссий на closedcircles.com, отсюда и спектр рассмотренных вопросов, и специфическая манера повествования.

Ну, поехали.
Читать дальше →
Всего голосов 65: ↑63 и ↓2+61
Комментарии52

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

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



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

10 интересных нововведений в JUnit 5

Время на прочтение7 мин
Количество просмотров73K
В минувшее воскресенье Sam Brannen анонсировал выход JUnit 5! Ура!


Поздравляю всех участников @JUnitTeam а также всех, кто использует JUnit в своей работе! Давайте посмотрим, что же нам приготовили в этом релизе.
Посмотрим
Всего голосов 20: ↑20 и ↓0+20
Комментарии9

Подборка: 10 полезных инструментов для интернет-маркетолога

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


В работе интернет-маркетолога важно тратить время эффективно и оставаться собранным. В новом материале я собрала десять удобных инструментов, которые помогут генерировать идеи, писать качественные тексты, самостоятельно создавать картинки, отслеживать упоминания бренда, улучшать рекламу и проводить исследования.
Читать дальше →
Всего голосов 8: ↑7 и ↓1+6
Комментарии1

Информация

В рейтинге
Не участвует
Откуда
Baden-Württemberg, Германия
Зарегистрирован
Активность