Search
Write a publication
Pull to refresh
57
0
Eugene @eReS

User

Send message

Космические жилища, ч. 4: как мы будем жить на Венере

Reading time7 min
Views28K
Если с тем, как мы будем жить на Луне и в космических колониях, всё относительно ясно — осталось только доработать технологии, то колонизация Марса и тем более других планет пока покрыта завесой неизвестности. Но какие-никакие идеи на тему терраформирования Венеры и жизни на ней в воздушных городах у нас есть. Давайте их обсудим.

image
Художественное представление парящего города на Венере
Читать дальше →

Разработка комплекта электрификации велосипеда

Reading time5 min
Views22K
Приветствую всех кто увлекается электроникой! Меня зовут Василий Сухопаров, я технический директор компании Eczo.bike. Хочу рассказать о том, как мы разрабатывали комплект электрификации велосипеда, с какими подводными камнями пришлось столкнуться и на какие инженерные хитрости пойти. Впереди будет немного программирования STM32, схем, тонкостей проектирования силовых плат и пару слов о механической составляющей КЭВ (Комплект Электрификации Велосипеда).


Комплект электрификации с максимальной мощностью 2600 Вт, бортовым компьютером, трекером, и сменными аккумуляторами.
Читать дальше →

В Гарварде считают, что нашли физический центр человеческого сознания

Reading time3 min
Views48K

Карта связей мозга человека

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

«Мы впервые обнаружили связь между той областью ствола головного мозга, который отвечает за бодрствование и областях, которые делают возможным мыслительный процесс. Элементы головоломки сложились в единое целое, указывая на то, что эта связь играет роль в сознании человека», — заявил Майкл Фокс из Медицинского центра Beth Israel Deaconess в Гарвардской медицинской школе.
Читать дальше →

Google DeepMind научил ИИ узнавать объекты с одного «взгляда»

Reading time3 min
Views10K


Известно, что искусственному интеллекту нужны тысячи примеров, чтобы научиться распознавать новые объекты. В этом он значительно уступает человеку с его способностью узнавать класс предметов по одному представителю. К тому же, сам процесс обучения нейронной сети отнимает очень много времени. Компания DeepMind, подразделение Google, занимающееся разработками в области искусственного интеллекта, нашла способ обойти это.
Читать дальше →

Исследователи из MIT научили нейронные сети аргументировать свои решения

Reading time9 min
Views20K


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

В лаборатории CSAIL (лаборатории информатики и искусственного интеллекта) Массачусетского технологического института исследователи нейросетей сделали так, что теперь «виртуальный мозг» в дополнение к решению выдает и его обоснование. Они обучали два модуля одной нейросети одновременно. Данными для обучения были текстовые отрывки. Результаты порадовали: компьютер думал, как и человек, в 95% случаев. И все же, прежде, чем запустить новый метод нейросетей в активное пользование, потребуется дополнительная настройка и доработка.

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

Нейросеть LipNet читает по губам с точностью 93,4%

Reading time4 min
Views44K

Командир Дэйв Боумен и второй пилот Фрэнк Пул, не доверяя компьютеру, решили отключить его от управления кораблём. Для этого они совещаются в звукоизолированной комнате, но HAL 9000 читает их разговор по губам. Кадр из фильма «Космическая одиссея 2001 года»

Чтение по губам играет важную роль в общении. Ещё эксперименты 1976 года показали, что люди «слышат» совершенно другие фонемы, если наложить неправильный звук на движение губ (см. "Hearing lips and seeing voices", Nature 264, 746-748, 23 December 1976, doi: 10.1038/264746a0).

С практической точки зрения чтение по губам — важный и полезный навык. Можно понимать собеседника не выключая музыку в наушниках, читать разговоры всех людей в поле зрения (например, всех пассажиров в зале ожидания), прослушивать людей в бинокль или подзорную трубу. Область применения навыка очень широка. Освоивший его профессионал без труда найдёт высокооплачиваемую работу. Например, в сфере безопасности или конкурентной разведке.
Читать дальше →

Обзор метрик мобильного приложения

Reading time13 min
Views70K


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

Наследование в Hibernate: выбор стратегии

Reading time22 min
Views108K
Наследование является одним из основных принципов ООП. В то же время, значительное количество корпоративных приложений имеют в своей основе реляционные базы данных

Главное противоречие между объектно-ориентированной и реляционной моделями заключается в том, объектная модель поддерживает два вида отношений («is a» — “является”, и «has a» — “имеет”), а модели, основанные на SQL, поддерживают только отношения «has a».

Иными словами, SQL не понимает наследование типов и не поддерживает его.

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

Всего таких стратегий 4:

1) Использовать одну таблицу для каждого класса и полиморфное поведение по умолчанию.

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

3) Единая таблица для всей иерархии классов. Возможна только за счет денормализации схемы SQL. Определять суперкласс и подклассы будет возможно посредством различия строк.

4) Одна таблица для каждого подкласса, где отношение “is a” представлено в виде «has a», т.е. – связь по внешнему ключу с использованием JOIN.

Можно выделить 3 главных фактора, на которые повлияет выбранная вами стратегия:

1) Производительность (мы используем “hibernate_show_sql”, чтобы увидеть и оценить все выполняемые к БД запросы)

2) Нормализация схемы и гарантия целостности данных (не каждая стратегия гарантирует выполнение ограничения NOT NULL)

3) Возможность эволюции вашей схемы

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

Spring MVC — основные принципы

Reading time6 min
Views303K


Фреймворк Spring MVC обеспечивает архитектуру паттерна Model — View — Controller (Модель — Отображение (далее — Вид) — Контроллер) при помощи слабо связанных готовых компонентов. Паттерн MVC разделяет аспекты приложения (логику ввода, бизнес-логику и логику UI), обеспечивая при этом свободную связь между ними.

  • Model (Модель) инкапсулирует (объединяет) данные приложения, в целом они будут состоять из POJO («Старых добрых Java-объектов», или бинов).
  • View (Отображение, Вид) отвечает за отображение данных Модели, — как правило, генерируя HTML, которые мы видим в своём браузере.
  • Controller (Контроллер) обрабатывает запрос пользователя, создаёт соответствующую Модель и передаёт её для отображения в Вид.
Читать дальше →

Продвижение игр на Google Play

Reading time6 min
Views69K


У моих игр довольно много загрузок на Google Play (больше 20 млн.), наверное поэтому, меня часто спрашивают про продвижение. Если кто-то из разработчиков пишет мне в личку или почту, готов поспорить, все сведется к вопросу: «Как ты продвигаешь свои игры, чувак?». Все думают, что у меня есть какой-то секрет (нет). Ладно, давайте я попробую сформулировать то, что знаю и будем надеяться, что это будет кому-то полезно. По крайней мере, я смогу давать ссылку на этот пост.
Читать дальше →

ИИ для покера: как научить алгоритмы блефовать

Reading time16 min
Views41K
image

О том как совершенствуется искусственный интеллект, можно судить по обычным играм. За последние два десятилетия алгоритмы превзошли лучших мировых игроков: сначала пали нарды и шашки, затем шахматы, «Своя Игра» (Jeopardy!), в 2015 году — видеоигры Atari и в прошлом году — Го.


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


Но как обстоит дело с играми с неполной информацией?


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

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

Расчет приоритета комбинаций в техасском холдеме (покере) на PHP

Reading time10 min
Views24K
В этой статье я расскажу про мой способ расчета приоритета комбинаций в техасском холдеме (покере с 2 карманными картами и 5 общими). Условно разделю статью на 6 частей: Создание массива карт, Расчет Стрита, Расчет Флеша и Стрит Флеша, Расчет Парных комбинаций, Окончательный расчет, Вывод на экран. Код пишу в процедурном стиле.

Цель: получить на выходе программы удобочитаемый результат, доступный для дебаггинга и отладки еще на стадии написания кода. Для достижения поставленной цели делаю разницу между комбинациями в 1e+2 (100) раз.

Примерный вид того, что должно получиться в итоге, где 2 последние карты считаю карманными, а первые 5 общими:


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

Синхронизация состояний в многопользовательских играх

Reading time13 min
Views47K
image

Проблема многопользовательских игр


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

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

Обычно программа игры должна симулировать следующее:

изменения в окружении с учётом времени и вводимых игроками данных.

Игра — это программа, хранящая состояние, поэтому она зависит от времени (реального или логического). Например, PACMAN симулирует окружение, в котором постоянно перемещаются призраки.

Многопользовательская игра не является исключением, однако из-за взаимодействия игроков её сложность намного выше.
Читать дальше →

6 необычных офисов мира

Reading time5 min
Views27K


Источник


Кто придумал, что офисы должны быть душными коробками? Выбирая работу и пространство для нее, мы выбираем образ жизни. Не секрет, что большую часть жизни мы проводим в офисе. Поэтому для нас очень важно создавать в компании удобные рабочие пространства, где сотрудник может не только работать, но и отдыхать. А иногда в нашем офисе даже появляется каток.


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

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

Диагностика грамматических ошибок при изучении английского языка

Reading time3 min
Views7.9K
image
В предыдущей публикации про индивидуальное обучение грамматике я описал принцип такого обучения и простой API, позволяющий интегрировать эту технологию в программные продукты. Основным типом заданий в этом API является multiple choice (задания с несколькими вариантами ответов). Но его реализация была довольно простой — один правильный ответ и три неправильных. Всё, что можно было узнать об уровне знаний пользователя, это только знает ли он правильную форму глагола или нет.

В этой публикации я расскажу (и снова поделюсь API) о гораздо более информативном варианте грамматического multiple choice. Главное его достоинство — функция диагностики грамматических ошибок при изучении английского языка.
Читать дальше →

Нейронные сети для начинающих. Часть 1

Reading time7 min
Views1.6M
image

Привет всем читателям Habrahabr, в этой статье я хочу поделиться с Вами моим опытом в изучении нейронных сетей и, как следствие, их реализации, с помощью языка программирования Java, на платформе Android. Мое знакомство с нейронными сетями произошло, когда вышло приложение Prisma. Оно обрабатывает любую фотографию, с помощью нейронных сетей, и воспроизводит ее с нуля, используя выбранный стиль. Заинтересовавшись этим, я бросился искать статьи и «туториалы», в первую очередь, на Хабре. И к моему великому удивлению, я не нашел ни одну статью, которая четко и поэтапно расписывала алгоритм работы нейронных сетей. Информация была разрознена и в ней отсутствовали ключевые моменты. Также, большинство авторов бросается показывать код на том или ином языке программирования, не прибегая к детальным объяснениям.

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

Математика для искусственных нейронных сетей для новичков, часть 1 — линейная регрессия

Reading time8 min
Views157K
Оглавление

Часть 1 — линейная регрессия
Часть 2 — градиентный спуск
Часть 3 — градиентный спуск продолжение

Введение


Этим постом я начну цикл «Нейронные сети для новичков». Он посвящен искусственным нейронным сетям (внезапно). Целью цикла является объяснение данной математической модели. Часто после прочтения подобных статей у меня оставалось чувство недосказанности, недопонимания — НС по-прежнему оставались «черным ящиком» — в общих чертах известно, как они устроены, известно, что делают, известны входные и выходные данные. Но тем не менее полное, всестороннее понимание отсутствует. А современные библиотеки с очень приятными и удобными абстракциями только усиливают ощущение «черного ящика». Не могу сказать, что это однозначно плохо, но и разобраться в используемых инструментах тоже никогда не поздно. Поэтому моей первичной целью является подробное объяснение устройства нейронных сетей так, чтобы абсолютно ни у кого не осталось вопросов об их устройстве; так, чтобы НС не казались волшебством. Так как это не математический трактат, я ограничусь описанием нескольких методов простым языком (но не исключая формул, конечно же), предоставляя поясняющие иллюстрации и примеры.

Цикл рассчитан на базовый ВУЗовский математический уровень читающего. Код будет написан на Python3.5 с numpy 1.11. Список остальных вспомогательных библиотек будет в конце каждого поста. Абсолютно все будет написано с нуля. В качестве подопытного выбрана база MNIST — это черно-белые, центрированные изображения рукописных цифр размером 28*28 пикселей. По-умолчанию, 60000 изображений отмечены для обучения, а 10000 для тестирования. В примерах я не буду изменять распределения по-умолчанию.
Читать дальше →

Агрономы-робототехники из Великобритании вырастили и собрали весь урожай при помощи автоматики

Reading time4 min
Views17K


Группа ученых и студентов из Университета Адамса (графство Шропшир, Великобритания) в октябре прошлого года решила использовать последние достижения робототехники в сельском хозяйстве. Конечно, и без них существует масса решений по автоматизации культивирования растений и выращивания животных. Но исследователи захотели попробовать вовсе исключить участие человека в полевых работах. Удаленный оператор лишь наблюдает за происходящим и время от времени вводит в систему определенные корректировки, если это необходимо.

Проект было бы невозможно осуществить без поддержки государства, которое предоставило 200 тыс. фунтов стерлингов (свыше $260 тыс.). Используя эти средства, ученые и инженеры оснастили трактор и комбайн камерами, лазерными сенсорами и GPS-датчиками. Кроме того, использовались разного рода дроны и робот-разведчик. Эти системы вели мониторинг работы сельскохозяйственной техники и направляли своих «собратьев» именно туда, где они были нужны.
Читать дальше →

Квадрокоптер как метод быстрого развёртывания Wi-Fi сетей

Reading time5 min
Views16K
image

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

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

Книга «Теоретический минимум. Все, что нужно знать о современной физике»

Reading time7 min
Views17K
image «Теоретический минимум» — книга для тех, кто пропускал уроки физики в школе и институте, но уже жалеет об этом. Хотите разобраться в основах естественных наук и научиться думать и рассуждать так, как это делают современные физики? В оригинальной и нестандартной форме известные американские ученые Леонард Сасскинд и Джордж Грабовски предлагают вводный курс по математике и физике для пытливых умов.

В отличие от прочих научно-популярных книг, пытающихся доступно объяснить законы физики, ловко уклоняясь от уравнений и формул, авторы учат читателя классическим основам естественных наук. Книга предлагает собственную оригинальную методику обучения, дополненную видео-лекциями, публикуемыми на сайте theoreticalminimum.com.
Читать дальше →

Information

Rating
Does not participate
Location
Украина
Registered
Activity