User
Ваша первая нейронная сеть на графическом процессоре (GPU). Руководство для начинающих
В этой статье я расскажу как за 30 минут настроить среду для машинного обучения, создать нейронную сеть для распознавания изображений a потом запустить ту же сеть на графическом процессоре (GPU).
Для начала определим что такое нейронная сеть.
В нашем случае это математическая модель, а также её программное или аппаратное воплощение, построенная по принципу организации и функционирования биологических нейронных сетей — сетей нервных клеток живого организма. Это понятие возникло при изучении процессов, протекающих в мозге, и при попытке смоделировать эти процессы.
Нейронные сети не программируются в привычном смысле этого слова, они обучаются. Возможность обучения — одно из главных преимуществ нейронных сетей перед традиционными алгоритмами. Технически обучение заключается в нахождении коэффициентов связей между нейронами. В процессе обучения нейронная сеть способна выявлять сложные зависимости между входными данными и выходными, а также выполнять обобщение.
С точки зрения машинного обучения, нейронная сеть представляет собой частный случай методов распознавания образов, дискриминантного анализа, методов кластеризации и прочих методов.
Оборудование
Сначала разберемся с оборудованием. Нам необходим сервер с установленной на нем операционной системой Linux. Оборудование для работы систем машинного обучения требуется достаточно мощное и как следствие дорогое. Тем, у кого нет под рукой хорошей машины, рекомендую обратить внимание на предложение облачных провайдеров. Необходимый сервер можно получить в аренду быстро и платить только за время использования.
7 бесплатных курсов для разработчиков от Microsoft
Кстати!
- Все курсы бесплатные (вы даже сможете попробовать платные продукты бесплатно);
- 6/7 на русском языке;
- Начать обучение можно мгновенно;
- По окончании вы получите бейдж об успешном прохождении обучения.
Присоединяйтесь, подробности под катом!
Новая серия статей
- 8 самых новых курсов Microsoft Learn
- 10 бесплатных курсов для начинающих специалистов
- 10 бесплатных курсов для продвинутых специалистов
Следующая серия статей, начало 2020 года
- 5 бесплатных курсов для ИИ-инженеров
- 6 бесплатных курсов для безопасников
- 7 бесплатных курсов для специалистов по работе с данными (Data-Science и Data-Engineering)
Эта серия статей, 2019 год
Почему я бросил фриланс: впечатления backend-разработчика после 2 лет «свободы»
Пару месяцев назад к нам в Ratio пришёл backend-разработчик по имени Алексей. У него за плечами травмирующий опыт: человек два года работал на себя, но это не было похоже на фриланс под пальмой.
Мы попросили Алексея по пунктам сравнить свой фриланс и удалённую работу в штате: он рассказал про неадекватных заказчиков и как он вновь привыкал к общению с коллегами.
Облачный Умный Дом. Часть 1: Контроллер и датчики
Сегодня, благодаря бурному развитию микроэлектроники, каналов связи, Интернет-технологий и Искусственного Интеллекта, тема умных домов становится все более и более актуальной. Человеческое жилище претерпело существенные изменения со времен каменного века и в эпоху Промышленной Революции 4.0 и Интернета Вещей стало удобным, функциональным и безопасным. На рынок приходят решения, превращающие квартиру или загородный дом в сложные информационные системы, управляемые из любой точки мира с помощью смартфона. Причем, для человеко-машинного взаимодействия уже не требуются знания языков программирования, — благодаря алгоритмам распознавания и синтеза речи человек говорит с умным домом на родном языке.
Некоторые системы умного дома, представленные сейчас на рынке, являются логичным развитием систем облачного видеонаблюдения, разработчики которых осознали необходимость в комплексном решении не только для контроля, но и для управления удаленными объектами.
Вашему вниманию предлагается цикл из трех статей, где будет рассказано о всех основных компонентах системы облачного умного дома, лично разработанной автором и запущенной в эксплуатацию. Первая статья посвящена оконечному клиентскому оборудованию, устанавливаемому внутри умного дома, вторая — архитектуре системы облачного хранения и обработки данных, и, наконец, третья — клиентскому приложению для управления системой на мобильных и стационарных устройствах.
Ваш идеальный тестировщик
Здесь поможет очерк из психологии.
Личность человека — это сложная многослойная структура. Её самый глубокий уровень состоит из личностных качеств. Это стабильные внутренние особенности человека, как, например, искренность. Извлечь их достаточно сложно, немногие проявляют их на каждом шагу. Они открываются только спустя несколько лет работы бок о бок.
Следующий слой — ценности и убеждения. Это те характеристики, которые отвечают на вопрос “почему?” и “зачем?”. Это чувство прекрасного или желание общаться с хорошими людьми. Это важно знать, но вам об этом не расскажут. За час собеседования это не удастся раскрыть, ведь надо ещё поговорить о компании и о позиции.
Следующий слой — поступки. То, как человек обычно поступает, как он решает свою проблему. Вероятно, если он действовал подобным образом раньше, то и на работе будет себя вести также. Мы часто путаем поступки со свойствами личности. У человека может быть масса причин тянуть с закрытием задачи, но мы видим только его поступок.
На работе иногда всё равно почему человек поступает именно так, главное, чтобы сделал свою работу. Изменить чьё-то неприятное поведение, такое как опоздания или обман, можно. Но на это уйдут годы.
Следующий слой: знания и навыки. Это то, чему человек научился, что он умеет. Если мы ищем junior QA, то знаний и навыков у него нет. Но это и не страшно, ведь их можно нарастить.
Следующий слой: область иллюзий. Это то, что человек о себе думает. Это самый легко изменяемый слой личности. Лишиться иллюзий по поводу собственных способностей гораздо легче, чем изменить убеждение пользоваться одним смартфоном вместо другого.
Контактная сварка для аккумуляторов 18650
Проекции карт: о чём на самом деле шутит xkcd
Иногда выпуск комикса xkcd — это поверхностная шутка в узкой области знаний. Понять такой юмор сможет специалист или хотя бы слабо знакомый с затрагиваемой областью, а остальные будут лишь недоумевать. Пример такого выпуска — xkcd.com/977 Map Projections 2011 года. Для полного понимания выпуска нужно лишь примерно представлять историю и функцию различных проекций карт мира, иначе комикс останется чёрно-белым рисунком.
Даже внешне однозначные вопросы имеют несколько решений. Форма Земли — это похожий на шар геоид, но для удобства восприятия его лучше развернуть на плоскую карту. Сделать это можно несколькими способами. Каждый из них будет выполнен с различными компромиссами, поскольку искажения формы, углов или длин неизбежны. Какие-то проекции дают больше искажений, другие легче воспринимать, к каким-то мы просто привыкли.
Не все мы смотрим на карту для навигации в открытом море. Часто выбор метода преобразования формы Земли — это не вопрос жизни и смерти, это художественная иллюстрация. В этих случаях проекцию выбирают из устоявшихся вкусов и предпочтений — точно так же, как выбирают одежду или автомобиль. Можно смешно шутить про моду на дорогие кроссовки среди директоров крупных компаний Кремниевой долины или про популярность заниженных автомобилей. Точно так же шуткам поддаются предпочтения картографической проекции, как это и было сделано в Map Projections.
10 принципов самодокументируемого кода
Конечно, неплохо было бы прочитать эту занимательную книгу каждому кто пишет код, но для особо ленивых, но желающих перестать меньше мучить и вводить коллег в заблуждение (совесть имейте) представляю под катом 10 принципов самодокументируемого кода:
Экономия на мобильной кросс-платформенной разработке: кейс Skyeng
Привет, я Андрей Кучеренко, тимлид мобильной разработки Skyeng. Мы делаем мобильные приложения под iOS и Android. У них одинаковая функциональность и одинаковый с точностью до стилистики интерфейс. Но из-за разных платформ разработка вроде бы одного приложения получается довольно дорогой. В поисках возможности сэкономить на мобильной кросс-платформенной разработке, мы опробовали четыре решения:
- Объединение iOS- и Android-разработчиков в одну команду
- Создание рабочих групп для решения сложных задач
- Экономия на ведении документации
- Написание общего кода
Мне довелось выступить с несколькими докладами о том, что из этого получилось; в этой статье я собрал основные наблюдения и результаты.
Первый выпуск корпоративной магистерской программы JetBrains и Университета ИТМО
В этом году состоится первый выпуск студентов корпоративной магистерской программы JetBrains и Университета ИТМО. В начале июня прошли защиты магистерских дипломов. Все студенты успешно представили результаты своих работ и получили степень магистра. Чтобы научиться докладывать о результатах своей магистерской, каждый студент прошел через 5-6 предзащит: сначала нужно было научиться рассказывать о результатах за 30 минут, потом — за 15 минут, и в самом конце — уже за 7 минут, которые положены по регламенту.
На страничке с выпускниками можно познакомиться с магистрами и темами их дипломных работ.
Напоминаем, что уже сейчас можно подать заявку на поступление.
Как начать получать пассивный доход или хотя бы защитить свои деньги: 5 реальных способов
Привет, Хабр! Я часто рассказываю на сайте о своих экспериментах – например, в изучении языков и их применении на практике. Одно из направлений моих опытов в последние пару лет – сфера финансов, потому что хочется в ней разобраться и найти какие-то способы получать пассивный доход вдобавок к основной работе.
Сегодня расскажу о пяти вариантах, которые попробовала лично я, и которые позволяют если не заработать, то хотя бы минимизировать ущерб от инфляции. И да, хоть в некоторых из них задействуется биржа, активные спекуляции на ней все еще слишком сложно для меня, так что все варианты в режиме «для чайников». Поехали!
Отучаемся от токсичных практик на код-ревью
Код-ревью частенько порождают споры. При подготовке лекции «Отучаемся от токсичного поведения на код-ревью» на конференции AlterConf я была готова услышать кучу возражений и критики. Но совершенно не ожидала, что сообщество настолько поддержит идею. Я предполагала сопротивление, но сообщество очень доброжелательно и с одобрением приняло меня.
Меня попросили поделиться слайдами, но теперь я подумала, что слайды сами по себе малополезны и вырваны из контекста: им не хватает объяснений. Поэтому решила опубликовать эту статью. Позже организаторы конференции выложили видеозапись.
Советские мечты о будущем
Помните очаровательного котика, которые чихал в заставке советского мультфильма? Мы помним, и нашли его — вместе с ворохом другой рисованной фантастики. В детстве она пугала и обескураживала, поскольку поднимала серьезные, взрослые темы. Настала пора пересмотреть старые мультфильмы, чтобы узнать, о каком будущем мечтали в той стране.
Простая интеграция MS Project и Redmine
Эпиграф
“Если бы губы Никанора Ивановича да приставить к носу Ивана Кузьмича, да взять сколько-нибудь развязности, какая у Балтазара Балтазарыча, да, пожалуй, прибавить к этому еще дородности Ивана Павловича — я бы тогда тотчас же решилась.» Н.В. Гоголь. Женитьба.
Есть два всем известных и очень разных инструмента управления проектами: MS Project и Redmine. Каждый из них имеет свои достоинства, и эти достоинства могли бы друг друга прекрасно дополнить.
Хочу предложить вашему вниманию небольшую утилиту под названием P2R, позволяющую без всякой инсталляции и с минимумом настроек обеспечить online синхронизацию проектов в MS Project и Redmine. Она доступна по адресу.
Создание игры Tower Defense в Unity: враги
- Размещение точек создания врагов.
- Появление врагов и их движение по полю.
- Создание плавного движения с постоянной скоростью.
- Изменение размера, скорости и размещения врагов.
Это вторая часть туториала, посвящённого простой игре в жанре tower defense. В ней рассматривается процесс создания врагов и их движения к ближайшей конечной точке.
Данный туториал выполнен в Unity 2018.3.0f2.
Враги на пути к конечной точке.
Как запустить микро-платежи в своем приложении
Какие ключевые функции этого приложения?
- Позволяет отблагодарить или поощрить собеседника действительно материальной ценностью, а не просто «виртуальным лайком», это выводит электронное общение на совершенно новый уровень
- Реальный пример приложения, которое может финансово взаимодействовать с другими приложениями используя открытый платёжный протокол
- Все компоненты приложения являются проектами с открытым исходным кодом и их возможно изменять и применять для своих задач. Приложение не использует закрытых и\или коммерческих решений, несмотря на то, что подходит под сферу электронной коммерции, которую на сегодняшний день назвать открытой довольно сложно.
И как это применить в деле?
как-то так…
Визуальное программирование для Sonoff Basic
Статья о том, как из дешёвого китайского устройства создать программируемый логический контроллер. Такое устройство найдёт своё применение как в домашней автоматизации, так и в качестве практических занятий по школьной информатике.
Создание игры Tower Defense в Unity, часть 1
Поле
- Создание тайлового поля.
- Поиск путей с помощью поиска в ширину.
- Реализация поддержки пустых и конечных тайлов, а также тайлов стен.
- Редактирование контента в режиме игры.
- Опциональное отображение сетки поля и путей.
Это первая часть серии туториалов, посвящённых созданию простой игры в жанре tower defense. В этой части мы рассмотрим создание игрового поля, поиск пути и размещение конечных тайлов и стен.
Туториал создавался в Unity 2018.3.0f2.
Поле, готовое к использованию в тайловой игре жанра tower defense.
Игра жанра Tower Defense
Tower defense — это жанр, в которой целью игрока является уничтожение толп врагов, пока они не добрались до своей конечной точки. Игрок выполняет свою цель, строя башни, которые атакуют врагов. У этого жанра очень много вариаций. Мы будем создавать игру с тайловым полем. Враги будут двигаться по полю в сторону своей конечной точки, а игрок будет создавать им препятствия.
Information
- Rating
- Does not participate
- Location
- Россия
- Date of birth
- Registered
- Activity