Search
Write a publication
Pull to refresh
67
0
Сергей Подлесный @sergeypid

Мышиное обучение

Send message

Параллельный парсинг большого количества HTML-страниц с помощью Apache Ignite (GridGain) в 200 строк кода

Reading time12 min
Views31K
Периодически у меня появляются задачи обработать большое количество файлов. Обычно это конвертирование из одного формата в другой: XSLT-трансформация, парсинг, конвертация картинок или видео. Для решения этих проблем я приспособил фреймворк GridGain In-Memory Data Fabric. Он дает возможность делать distributed computing, MapReduce, распределенные кэши и очереди, распределенную файловую систему в памяти, перемещение кода к данным, job stealing, ускорители для Hadoop и многие другие модные ныне вещи. И все это легко и под разные операционки. Вы легко можете все это пощупать под виндовс.

Попробую рассказать о своем опыте использования на примере простенькой задачи.
Читать дальше →

Семантические технологии просто и доступно на примере родословных

Reading time7 min
Views19K
Программа, способная к логическим выводам в рамках поставленной задачи, может казаться техническим чудом и воплощением Скайнета. Но, как можно убедиться ниже, на сегодняшний день создать такую программу на языке Python не составит труда, если использовать семантические технологии. Мы остановимся на наглядном примере онтологий — родословных — и для любого члена семьи в родословной сможем выводить его родственные отношения произвольной сложности (она ограничена вычислительными ресурсами). К примеру, на фамильном древе семьи Романовых ниже показан внучатый двоюродный племянник (first cousin twice removed) российского императора Петра II.

image

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

Видеонаблюдение и аналитика Macroscop в деталях

Reading time8 min
Views34K
Видеонаблюдение стало неотъемлемой частью нашей жизни. В течение дня мы попадаем в объективы десятков камер видеонаблюдения и уже не замечаем этого.

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

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

Из-за растущего спроса на решения на базе программного обеспечения Macroscop, для удобства подбора конфигурации, мы открыли новую модель сервера для видеонаблюдения STSS Flagman VX123M.4-012LH. В конфигураторе сервера можно выбрать все необходимые лицензии.

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

Некоторые репозитории в помощь изучающим и преподающим Python и машинное обучение

Reading time13 min
Views64K


Привет сообществу!

Я Юрий Кашницкий, раньше делал здесь обзор некоторых MOOC по компьютерным наукам и искал «выбросы» среди моделей Playboy.

Сейчас я преподаю Python и машинное обучение на факультете компьютерных наук НИУ ВШЭ и в онлайн-курсе сообщества по анализу данных MLClass, а также машинное обучение и анализ больших данных в школе данных одного из российских телеком-операторов.

Почему бы воскресным вечером не поделиться с сообществом материалами по Python и обзором репозиториев по машинному обучению… В первой части будет описание репозитория GitHub с тетрадками IPython по программированию на языке Python. Во второй — пример материала курса «Машинное обучение с помощью Python». В третьей части покажу один из трюков, применяемый участниками соревнований Kaggle, конкретно, Станиславом Семеновым (4 место в текущем мировом рейтинге Kaggle). Наконец, сделаю обзор попавшихся мне классных репозиториев GitHub по программированию, анализу данных и машинному обучению на Python.

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

Быстрая разработка отчетов на Java: дауншифтинг с «1С: Предприятие»

Reading time4 min
Views18K
Приветствую уважаемых читателей.

Как и обещал в первой статье Быстрая разработка CRUD на Java: дауншифтинг с «1С: Предприятие», продолжаю описание своих OpenSource проектов, реализующих аналогичную 1С: Предприятию функциональность.

На сей раз, это СКД — система компоновки данных, и моя разработка FlexReporting (ссылка на GitHub).
В чем суть этого механизма? Это некий realtime — ROLAP инструмент, который на лету трансформирует «плоские» данные в иерархические отчеты.

На самом деле, есть много любителей поспорить, что СКД это не «тру» OLAP, но я бы напомнил, что такая вещь как агрегаты, заранее рассчитывающие и хранящие многомерные данные по всем (или по заданным) сочетаниям измерений оборотных регистров накопления — а это весомый аргумент для использования этой аббревиатуры. Впрочем, от споров по терминологии очень хотелось бы уклониться.

Вот так это выглядит в 1С ERP 2.0:



Функции СКД (и моей разработки) — дать пользователю источник данных, а уж он пусть как хочет играется с настройками отчета:

1. Задает, в какой последовательности будут выводиться данные, какие группировки будут по вертикали, какие по горизонтали.
Например: склад, товар, менеджер и т.д.
2. Задает набор показателей, и агрегатные функции (сумма, среднее, количество, минимум, максимум и проч.), которые будут к ним применяться.
Например: сумма(стоимость), среднее(количество_товара), максимум(дата_отгрузки).

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

Google Cloud Endpoints на Java: Руководство. ч. 1

Reading time15 min
Views24K
Google Cloud Endpoints — это надстройка над Google App Engine (GAE) для создания API для веб и мобильных приложений, делающая разработку проще и включающую в себя «из коробки» защиту от DoS-атак, OAuth 2.0 аторизацию, веб-интерфейс для тестирования API, SSL, атоматическую масштабируемость (сайт не упадет под хабра-эффектом), а также возможность использования сервисов доступных в Google App Engine (отсылка и прием электронной почты и XMPP-сообщений, загрузка данных из Интернет (URL Fetch service), задачи по расписанию (Task Queues and Scheduled Tasks) и др.)

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

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

Фреймворк Objectify предоставляет удобные стредства для работы со базой данных встроенной в GAE, а модуль angular-google-gapi для подключения веб-приложения на AngularJS c авторизацией пользователей.

Под катом много картинок и текста, и предполагается, что читатель знаком с Java Servlets.
Читать дальше →

Шпаргалка Java программиста 2: Триста пятьдесят самых популярных не мобильных Java opensource проектов на github

Reading time39 min
Views172K
Что это и зачем оно надо: Как известно, главное преимущество Java мира в том в нем существует огромное количество open-source проектов на на все случаи жизни, однако найти нужный на github'e не так просто, так как описание проекта часто мало информативно, зачастую сложно даже понять этот проект для Android'a или нет. В этой статье я автоматически и полуавтоматически собрал Java проекты, убрал старые и проекты только для Android'a, выбрал 350 набравших больше всего звезд, разделил по категориям и перевел описания.

Если вы хотите убедиться что базы данных пишут не только на C, найти проекты для работы с большими данными или нейронными сетями, пишите свой язык программирования для JVM и хотите посмотреть как это уже сделано или же просто хотите узнать какие новые возможности можно найти в Java мире open-source то это статья вам, думаю, может пригодится.

В чем смысл серии статей 'Шпаргалки Java программиста'
За время работы Java программистом я заметил, что как правило программисты постоянно и планомерно используют от силы 10-20% от возможностей той или иной технологии, при этом остальные возможности быстро забываются и при появлении новых требований, переходе на новую работу или подготовке к техническому интервью приходится перечитывать все документации и спецификации с нуля. Зато наличие краткого конспекта особенностей тех или иных технологий (шпаргалок) позволяет быстро освежить в памяти особенности той или иной технологии.


Другие статьи серии: часть 1. JPA и Hibernate в вопросах и ответах

Update: Внимание, актуальная версия со много большим количеством ссылок, находиться теперь в моем github'e проекте useful-java-links, по этой ссылке.


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

Deephack: хакатон по глубокому обучению с подкреплением, или как мы улучшали алгоритм Google Deepmind

Reading time6 min
Views13K
С 19 по 25 июля проходил хакатон Deephack, где участники улучшали алгоритм обучения с подкреплением на базе Google Deepmind. Цель хакатона — научиться лучше играть в классические игры Atari (Space Invaders, Breakout и др.). Мы хотим рассказать, почему это важно и как это было.

Авторы статьи: Иван Лобов IvanLobov, Константин Киселев mrKonstantin, Георгий Овчинников ovchinnikoff.
Фотографии мероприятия: Мария Молокова, Политехнический музей.

Почему хакатон по обучению с подкреплением это круто:
  • Это первый в России хакатон с использованием глубокого обучения и обучения с подкреплением;
  • Алгоритм Google Deepmind — одно из последних достижений в области обучения с подкреплением;
  • Если вас интересует искусственный интеллект, то эта тема — очень близка к этому понятию (хотя мы сами и не хотели бы называть это ИИ).


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

Распознавание непрерывного рукописного текста в режиме off-line

Reading time4 min
Views49K
Предисловие

Как известно, задача распознавания непрерывного рукописного текста в режиме off-line пока считается нерешённой.

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

О программе

Программа полностью обучаемая. Процесс обучения выглядит просто:
Читать дальше →

Стратегическая цель: завоевание дальнего космоса

Reading time7 min
Views89K
image

Стенограмма выступления Сергея Переслегина на TEDx «Vorobyovy Gory», март 2011.

Роль космических исследований с точки зрения футуролога и военного историка.
Читать дальше →

3D-сенсор на Nexus 10

Reading time2 min
Views102K


Помимо уже известных новинок на Google I/O на конференции была показана действительно эффектная разработка от компании PrimeSense — трехмерный мобильный сенсор Capri 3D — которая привносит в понятие «дополненная реальность» действительно впечатляющие возможности. Также можно предположить, что вскоре к уже имеющемуся скучноватому арсеналу «фич» на смартфонах добавится нечто новое.

По сути, речь идёт о рабочем прототипе планшета, собранном на базе Nexus 10, которое может в реальном времени и с высокой точностью сканировать окружающее пространство, создавая тем самым трехмерную модель объектов. Нечто подобное уже сравнительно давно умеет делать приставка Kinect (при этом, за обеими разработками стоит одна и та же компания — PrimeSense), однако тут речь идёт и значительном уменьшении размеров 3D-сенсора Capri и наличии готовых образцов программ, которые умеют демонстрировать его возможности не только для игр.

Лучше всего, конечно, представление о работе Capri даёт видео, снятое журналистами Engadget в каком-то тёмном коридоре на Google I/O.
Узнать подробности

Жонглирование. Теория. Практика

Reading time5 min
Views43K
Настороженно отношусь к непрофильным топикам, но решил написать этот по следующим причинам:
  • У жонглирования есть своя теория — стройная и математически привлекательная!
  • Мы живем не только работой. Жонглирование — отличное развлечение и разминка после долгого сидения за компом.
  • В пятницу приятно немного расслабиться и почитать не очень серьезные статьи. К тому же, будет чем заняться на выходные, особенно если у вас не было определенных планов.

Теория


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

Мини-компьютеры: MK802, CuBox, Raspberry PI

Reading time2 min
Views99K
Тема микрокомпьютеров однозначно пошла на взлет. Про сборку Maximite я уже писал.

За последнее время удалось пощупать еще несколько мини машин, правда несколько иного класса, чем Maximite, построенных на ARMах.
Читать дальше →

Нейронные сети с рефлексией

Reading time3 min
Views31K
Недавно меня пригласили выступить на TEDx, я постарался популярно рассказать о современном положении дел в ИИ, и помимо этого изложил суть тех нейронных сетей, над которыми мы сейчас работаем (см. видео).



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

Структура сети

За основу была взята широкоизвестная сеть Хопфилда, но в нее помимо основных связей от каждого нейрона к каждому (которые технически можно считать связями с задержкой в один такт), были добавлены дополнительные связи с задержками более 1го такта (практически исследовались задержки на 2-8 тактов).
Читать дальше →

Плакаты на IT тематику

Reading time1 min
Views29K
Почитывая «Банду четырех», всё чаще думаю как хорошо было бы иметь отдельный плакат на стену в офисе, резюмирующий и объясняющий шаблоны проектирования. Как здорово было бы не держать все их в голове, а имея проблему, взглянуть и найти подходящее решение. Но найти подходящий постер оказалось не так то просто, да и тот оказался не идеальным.
Читать дальше →

В Гарварде собирают роботов как детские книжки-раскладушки

Reading time1 min
Views1.7K
В Гарвардской лаборатории микроробототехники разработали новую технологию массового производства микророботов. Заготовка для изготовления робота состоит из склеенных в “сэндвич” нескольких слоёв разных материалов, в которых лазером вырезаны детали робота и дополнительные шарниры и подпорки, служащие “строительными лесами” для сборки. Чтобы получить из заготовки робота, её складывают, фиксируют в сложенном состоянии и обрезают ненужные больше вспомогательные элементы.

Cозданный в лаборатории прототип летающего робота-пчелы (Monolithic Bee или Mobee) весит 90 миллиграмм, а “сэндвич” для его сборки состоит из восемнадцати слоёв углепластика, титана, меди, керамики и гибкой пластиковой плёнки. Сборка робота происходит в одно движение, подобно детской книжке-раскладушке, его корпус фиксируется в собранном положении с помощью крошечных капель припоя, скрепляющих медные площадки в местах сгибов.
Под катом - подробное видео

Соревнования автомобилей-роботов в России

Reading time4 min
Views5.2K
Несколько лет назад в России появилась образовательная программа «Робототехника» . Согласно этому официальному сайту она включает в себя 3 основных направления:

ОБЩАЯ РОБОТОТЕХНИКА — мехатроника, робототехника и высокие технологии в системе общего образования и хобби
ПРОФЕССИОНАЛЬНАЯ РОБОТОТЕХНИКА — мехатроника, робототехника, высокие технологии в системе профессионального образования; выявление и продвижение перспективных кадров для высокотехнологичных отраслей
ИННОВАЦИИ И ПРЕДПРИНИМАТЕЛЬСТВО — содействие реализации молодежных инновационных и предпринимательских инициатив, самозанятости молодежи в сфере высоких технологий; создание бизнесов в сфере высоких технологий участниками Программы

Остановлюсь на профессиональной робототехнике. В рамках этого направления проводятся 2 основных вида соревнований:
• Робофест — соревнования мобильных роботов в своих классах, отборочные соревнования для участия в Азиатско-Тихоокеанских робототехнических соревнованиях ABU ROBOCON.
• Робокросс – соревнования беспилотных автомобилей-роботов. О них сегодня и пойдет речь.


Фотография команд участников Робокросс-2011
Читать дальше →

Возьми Python с собой

Reading time5 min
Views36K
Думали ли вы (в очередной раз подготавливая среду для Python) о том, как было бы здорово, если бы не приходилось настраивать с нуля рабочее окружение (да ещё и под разными операционными системами), а можно было бы сесть и просто начать писать? Я случайно открыл для себя pythonanywhere.com — сервис, позволяющий вести разработку на Python онлайн, прямо в браузере. Под катом — описание сервиса с картинками и видео.
Читать дальше →

DARPA мирные конкурсы для военного применения

Reading time7 min
Views2.5K
DARPA — Агентство передовых оборонных исследовательских проектов США — оказавшая огромное влияние на развитие новых перспективных технологий. Считается, что благодаря этой организации родился интернет.


Запуск в 1957 году в СССР первого исскуственного спутника стал довольно большой неожиданностью. Ответом на спутник стало создание в США агентства ARPA — Advanced Research Projects Agency (сегодняшнее название «агентство передовых военных исследовательских проектов» — DARPA). Целью и девизом DARPA является — «защититься от технологических сюрпризов для США и удивить оппонентов».
Сотрудники агентства ищут новые технологии и идеи. Делают они это как самостоятельно, так и проводя конкурсы на технические разработки новаторских идей (например, создание мультиспектральных видеосенсоров, нанотепловизоров (инфракрасных сенсоров, выполенных на микросхеме), новых видов топлива для пусковых ступеней микроракет, автомобилей-роботов и других). Одним из таких конкурсов и является Grand Challenge, конечной целью которого является разработка автономного боевого робота, который будет выполнять эвакуационные и другие задачи в условиях реального боя в автономном режиме.
DARPA Grand Challenge — соревнования автомобилей-роботов, финансируемые правительством США. Целью этих соревнований является создание полностью автономных транспортных средств. Организатором конкурса является агентство передовых оборонных разработок Пентагона (DARPA). На текущий момент этим агентством проведено 3 подобных соревнования (в 2004, 2005 и 2007 годах).
Пентагон планирует к 2015 заменить роботами треть своего автомобильного парка с целью минимизировать риски людских потерь в опасных условиях.
Читать дальше →

Универсальная теория от Athene

Reading time1 min
Views8.3K
Рекордсмен по сетевому покеру и World of Warcraft Chiren Boumaaza, aka Athene, и его друг Reese Leysen, тоже геймер и медиа-активист, около полутора лет назад выложили свой научно-популярный фильм «Athene's Theory of Everything». Есть некоторое обсуждение фильма на русском и нет есть его перевод на русский, которого он действительно достоин.

Только на Ютубе фильм посмотрели уже более 1 млн. зрителей, он также доступен для скачивания с торрентов и по прямой ссылке.

Фильм состоит из 2 частей и рассказывает о последних достижениях в исследованиях работы мозга (1-я часть) и универсальной теории в физике (2-я часть).
Излагаемый материал доступен людям с базовым английским, рассказывается с хорошей дикцией и снабжён титрами.

Смотрите, читайте материалы по ссылкам в аннотации к фильму.
Читать дальше →

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity