Pull to refresh
63
0

Разработчик

Send message

Программируем в мире Minecraft

Reading time9 min
Views66K
Хабр, привет! Пока все обсуждают ИИ в мире Pacman, мы начнем делать свой ИИ в Minecraft с фреймворком Malmo от Microsoft Research. Pacman у нас тоже появится. Если вы любите кубический мир, или вам хотелось бы начать изучать искусственный интеллект, или у вас есть дети, с которыми вы не можете найти общие увлечения, или же вас просто заинтересовала тема – прошу под кат.


Читать дальше →
Total votes 38: ↑35 and ↓3+32
Comments15

Создаём постоянное хранилище с provisioning в Kubernetes на базе Ceph

Reading time4 min
Views24K

Предисловие переводчика: Когда мы собрались наконец-то подготовить свой материал по разворачиванию Ceph в Kubernetes, нашли уже готовую и, что немаловажно, свежую (от апреля 2017 года) инструкцию от компании Cron (из Боснии и Герцеговины) на английском языке. Убедившись в её простоте и практичности, решили поделиться с другими системными администраторами и DevOps-инженерами в формате «как есть», лишь добавив в листинги один небольшой недостающий фрагмент.

Программно-определяемые хранилища данных набирают популярность последние несколько лет, особенно с масштабным распространением частных облачных инфраструктур. Такие хранилища являются критической частью Docker-контейнеров, а самое популярное из них — Ceph. Если хранилище Ceph уже используется у вас, то благодаря его полной поддержке в Kubernetes легко настроить динамическое создание томов для хранения (volume provisioning) по запросу пользователей. Автоматизация их создания реализуется использованием Kubernetes StorageClasses. В этой инструкции показано, как в кластере Kubernetes реализуется хранилище Ceph.
Читать дальше →
Total votes 20: ↑20 and ↓0+20
Comments8

Kali Linux 2017: обзор нововведений

Reading time4 min
Views65K

image
 
Недавно была выпущена новая версия популярного дистрибутива Kali Linux 2017.1. В данной статье мы рассмотрим более подробно, что изменилось в новом релизе и как начать пользоваться нововведениями.

Читать дальше →
Total votes 40: ↑38 and ↓2+36
Comments14

Как не облажаться с дизайном. Инструкция для чайников за 5 минут

Reading time4 min
Views51K


Перевод «Я люблю ИП»


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


Если вы не верите, что можете научиться дизайну, просто вспомните слова легендарного Дэвида Грола (барабанщик в группе Nirvana, гитарист и вокалист FooFighters, прим. ред.) об изучении новых вещей:


Я никогда не учился играть на барабанах. Я никогда не учился играть на гитаре. Я как-то сам до всего дошёл. Если вы действительно любите своё дело, увлечены им и сфокусированы, вы сможете сделать всё, что захотите.

А теперь, помня эти слова, вы готовы к нашему крэш-курсу? Пристегните ремни, мы начинаем в произвольном порядке.


Читать дальше →
Total votes 25: ↑21 and ↓4+17
Comments28

Шаблоны проектирования с человеческим лицом

Reading time32 min
Views494K

image


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


Как сказано в Википедии:


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

image Будьте осторожны


  • Шаблоны проектирования — не «серебряная пуля».
  • Не пытайтесь внедрять их принудительно, последствия могут быть негативными. Помните, что шаблоны — это способы решения, а не поиска проблем. Так что не перемудрите.
  • Если применять их правильно и в нужных местах, они могут оказаться спасением. В противном случае у вас будет ещё больше проблем.

В статье приведены примеры на PHP 7, но пусть вас это не смущает, ведь заложенные в шаблонах принципы неизменны. Кроме того, внедряется поддержка других языков.

Читать дальше →
Total votes 148: ↑134 and ↓14+120
Comments98

Ученые вылечили ИИ от забывчивости

Reading time3 min
Views9.6K
Искусственные нейронные сети отличаются от биологических аналогов неспособностью «запомнить» прошлые навыки при обучении новой задаче. Искусственный интеллект, натренированный на распознавание собак, не сможет различать людей. Для этого его придется переобучить, однако при этом сеть «забудет» о существовании собак. То же касается и игр – ИИ, умеющий играть в покер, не выиграет в шахматы.

Эта особенность называется «катастрофической забывчивостью» (catastrophic forgetting). Однако ученые из компании DeepMind и Имперского колледжа Лондона разработали алгоритм обучения глубоких нейронных сетей, который способен приобретать новые навыки, сохраняя «память» о предыдущих задачах.

Читать дальше →
Total votes 23: ↑19 and ↓4+15
Comments2

Сколько стоит DDoS построить? Подсчет стоимости DDoS-атаки

Reading time3 min
Views66K


Распределённая атака типа «отказ в обслуживании», DDoS — очень популярный инструмент у злоумышленников. Причины, по которым киберпреступники и обычные интернет-хулиганы используют этот инструмент, самые разные. Это и нанесение вреда конкуренту, и остановка работы какой-либо системы безопасности или сервиса с требованием выкупа. Известны случаи, когда группы, организовавшие атаку такого типа, требовали у жертв по 5 биткоинов (более $5000 по текущему курсу).

Причем DDoS сейчас, фактически, стал общедоступным инструментом. Этот тип атаки достаточно дешев (конечно, все зависит от масштаба), его можно быстро запустить и так же быстро остановить. На днях стало известно, сколько берут создатели разного рода ботнетов за проведение DDoS-атак.
Читать дальше →
Total votes 23: ↑18 and ↓5+13
Comments25

Итак, вы создали игру. Что дальше?

Reading time11 min
Views25K
image

Игра уже почти в состоянии альфа-версии. Месяцами вы упорно работали над ней, до цели остался последний рывок, а финишная линия уже видна. Вы планируете потратить несколько следующих месяцев на полировку, настройку и балансировку своего шедевра, прежде чем показать его миру и заработать состояние. Но это не совсем верно. Ещё многое предстоит сделать. Фактически, перед вами скоро откроется совершенно новый мир, пока вы будете гуглить информацию о маркетинге, PR, создании сообщества и издании игры. Вы читали постмортемы, слышали страшные истории и смотрели видео с GDC об играх, разваливавшихся за пару последних месяцев разработки или пропавших в пучине после выпуска из-за недостаточной огласки или апатии. Теперь вас беспокоит судьба вашего замечательного творения, в которое вы вложили месяцы творческой работы и энергии. Страх постепенно овладевает вами. Ужас от того, что ваша игра может просто кануть в небытие.

Предстоит ещё многое сделать! Если вы похожи на меня, то у вас в чём-то не хватает опыта. Все мы обладаем разными навыками и хорошо справляемся со своей работой, но никто не может быть специалистом во всех областях. Например, я в первую очередь программист, и я могу заниматься заниматься массой других вещей (кроме графики, в ней я не силён), но создание бизнеса, маркетинг, PR и создание сообщества… Нет, для меня это всегда было загадкой, и я всегда игнорировал эти аспекты до последнего момента, после чего, наконец, заставлял себя сделать кое-как эту часть работы. Просто для меня это не очень интересная часть процесса разработки игры, и я думаю, что большинство с этим согласится. Кроме фанатов маркетинга, естественно.
Читать дальше →
Total votes 14: ↑13 and ↓1+12
Comments3

Опыт построения и эксплуатации большого файлового хранилища

Reading time17 min
Views40K
Даниил Подольский

Даниил Подольский (Git in Sky)


Рассказ о том, что каждый инженер должен сделать в своей жизни после того, как он родил ребенка, посадил дерево и построил дом – это сделать свое файловое хранилище.

Доклад мой называется «Опыт построения и эксплуатации большого файлового хранилища». Большое файловое хранилище мы строим и эксплуатируем последние три года. В тот момент, когда я подавал тезисы, доклад назывался «Ночью через лес. Опыт построения эксплуатации бла-бла-бла». Но программный комитет попросил меня быть серьезнее, тем не менее, на самом деле это доклад «Ночью через лес».
Total votes 34: ↑26 and ↓8+18
Comments25

Как мы анализируем уязвимости с помощью нейронных сетей и нечеткой логики

Reading time5 min
Views17K


Изображение: Daniel Friedman, Flickr

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

Для решения одной из таких задач — разбора уязвимостей в ходе тестов конкурентного анализа, мы разработали собственный универсальный классификатор. О том, как работает этот инструмент, и каких результатов позволяет добиваться, и пойдет речь в нашем сегодняшнем материале.
Total votes 35: ↑28 and ↓7+21
Comments3

Uber — причины перехода с Postgres на MySQL

Reading time19 min
Views102K


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


Наверное, не будет преувеличением сказать, что за последние несколько лет это стало одним из самых громких и резонансных событий, связанных с СУБД PostgreSQL, которую мы, к слову сказать, очень любим и широко используем. Эта ситуация наверняка пошла на пользу не только упомянутым системам, но и движению Free and Open Source в целом. При этом, к сожалению, русского перевода статьи так и не появилось. Ввиду значимости события, а также подробного и интересного с технической точки зрения изложения материала, в котором в стиле «Postgres vs MySQL» идет сравнение физической структуры данных на диске, организации первичных и вторичных индексов, репликации, MVCC, обновлений и поддержки большого количества соединений, мы решили восполнить этот пробел и сделать перевод оригинальной статьи. Результат вы можете найти под катом.

Читать дальше →
Total votes 112: ↑110 and ↓2+108
Comments58

Безболезненное разрешение Merge конфликтов в Git

Reading time8 min
Views165K

Предлагаю читателям "Хабрахабра" перевод публикации "Painless Merge Conflict Resolution in Git"
из блога blog.wuwon.id.au.


В моей повседневной работе, часто приходится иметь дело со множеством git ветвей (branch). Это могут быть ветви промежуточных релизов, ветви с устаревшим API находящиеся на поддержке для некоторых клиентов, или ветви с экспериментальными свойствами. Лёгкость создания ветвей в модели Git так и соблазняет разработчиков создавать все больше и больше ветвей, и как правило бремя от большого количества ветвей становится очень ощутимым, когда приходится все эти ветви поддерживать и периодически делать слияния (merge) с другими ветвями.


Читать дальше →
Total votes 47: ↑44 and ↓3+41
Comments24

1.500.000 установок за 3 месяца — история разработки Tap Tap Builder

Reading time4 min
Views25K
Добрый день! Я — инди-разработчик и автор игры Tap Tap Builder. В этой небольшой статье я поделюсь своим опытом и расскажу, как маленькая игра прокладывает себе путь в большой мир.

image
Читать дальше →
Total votes 49: ↑39 and ↓10+29
Comments38

Нейронные сети в картинках: от одного нейрона до глубоких архитектур

Reading time7 min
Views96K
Многие материалы по нейронным сетям сразу начинаются с демонстрации довольно сложных архитектур. При этом самые базовые вещи, касающиеся функций активаций, инициализации весов, выбора количества слоёв в сети и т.д. если и рассматриваются, то вскользь. Получается начинающему практику нейронных сетей приходится брать типовые конфигурации и работать с ними фактически вслепую.

В статье мы пойдём по другому пути. Начнём с самой простой конфигурации — одного нейрона с одним входом и одним выходом, без активации. Далее будем маленькими итерациями усложнять конфигурацию сети и попробуем выжать из каждой из них разумный максимум. Это позволит подёргать сети за ниточки и наработать практическую интуицию в построении архитектур нейросетей, которая на практике оказывается очень ценным активом.
Читать дальше →
Total votes 67: ↑62 and ↓5+57
Comments53

Нейронные сети: практическое применение

Reading time15 min
Views274K


Наталия Ефремова погружает публику в специфику практического использования нейросетей. Это — расшифровка доклада Highload++.

Добрый день, меня зовут Наталия Ефремова, и я research scientist в компании NtechLab. Сегодня я буду рассказывать про виды нейронных сетей и их применение.

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

Первая часть моего доклада будет направлена тем, кто незнаком с нейронными сетями. Я занимаюсь непосредственно deep learning. В этой области я работаю более 10 лет. Хотя она появилась чуть меньше, чем десятилетие назад, раньше были некие зачатки нейронных сетей, которые были похожи на систему deep learning.
Total votes 74: ↑64 and ↓10+54
Comments32

Байесовская нейронная сеть — потому что а почему бы и нет, черт возьми (часть 1)

Reading time16 min
Views91K
То, о чем я попытаюсь сейчас рассказать, выглядит как настоящая магия.

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

Итак, магия:


Слева — обычная и всем знакомая нейронная сеть, у которой каждая связь между парой нейронов задана каким-то числом (весом). Справа — нейронная сеть, веса которой представлены не числами, а демоническими облаками вероятности, колеблющимися всякий раз, когда дьявол играет в кости со вселенной. Именно ее мы в итоге и хотим получить. И если вы, как и я, озадаченно трясете головой и спрашиваете «а нафига все это нужно» — добро пожаловать под кат.

Читать дальше →
Total votes 83: ↑82 and ↓1+81
Comments64

Робот-собеседник на основе нейронной сети

Reading time5 min
Views28K

Всем доброго времени суток! Я студент, для дипломной работы выбрал тему «информационные нейронные сети» (ИНС). Задачи, где требуется работать с числами, решались достаточно легко. И я решил усложнить систему, добавив обработку слов. Таким образом, я поставил перед собой задачу разработать «робота-собеседника», который мог бы общаться на какую-нибудь определённую тему.


Так как тема общения с роботом довольно обширна, диалог в целом я не оцениваю (привет товарищу Тьюрингу), рассматривается лишь адекватность ответа «собеседника» на реплику человека.

Читать дальше →
Total votes 25: ↑17 and ↓8+9
Comments18

«Нейроморфные чипы»: иной взгляд на машинное обучение

Reading time4 min
Views17K
Современные компьютеры, которыми пользуется большинство из нас, созданы на основании так называемой архитектуры фон Неймана. Этот метод хорошо подходит для решения уравнений и запуска различных алгоритмов, но не для обработки изображений или звука. И хотя в 2012 году Google научили искусственный интеллект различать кошек на видео, для этого компании потребовалось 16 тыс. процессоров.

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

Читать дальше →
Total votes 23: ↑22 and ↓1+21
Comments4

Краткий обзор популярных нейронных сетей

Reading time6 min
Views51K
К написанию этой статьи меня побудила большая распространенность некоторых заблуждений на тему искусственных нейронных сетей (ИНС), особенно в области представлений о том, что они могут и чего не могут, ну и хотелось бы знать, насколько вопросы ИНС вообще актуальны здесь, стоит ли что-либо обсудить подробнее.

Я хочу рассмотреть несколько известных архитектур ИНС, привести наиболее общие (в следствие чего не всегда абсолютно точные) сведения об их устройстве, описать их сильные и слабые стороны, а также обрисовать перспективы.

Начну с классики.

Читать дальше →
Total votes 83: ↑78 and ↓5+73
Comments45

Information

Rating
Does not participate
Location
Ковров, Владимирская обл., Россия
Registered
Activity