Pull to refresh
1
0
Send message

Сверточная сеть на python. Часть 1. Определение основных параметров модели

Reading time8 min
Views75K

Несмотря на то, что можно найти не одну статью, объясняющую принцип метода обратного распространения ошибки в сверточных сетях (раз, два, три и даже дающих “интуитивное” понимание — четыре), мне, тем не менее, никак не удавалось полностью понять эту тему. Кажется, что авторы недостаточно внимания уделяют обычным примерам либо же опускают какие-то хорошо понятные им, но не очевидные другим особенности, и весь материал по этой причине становится неподъемным. Мне хотелось разложить все по полочкам для самого себя и в итоге конспекты вылились в статью. Я постарался исключить все недостатки существующих объяснений и надеюсь, что эта статья ни у кого не вызовет вопросов или недопониманий. И, может, следующий новичок, который, также как и я, захочет во всем разобраться, потратит уже меньше времени.
Читать дальше →

Как я попросил студентов написать фишинговые письма

Reading time9 min
Views54K
– Учитель, я подобрал хороший пароль, которого не может быть в словарях.
Инь Фу Во кивнул.
– Я ввёл его в Гугле, – продолжал Сисадмин, – и убедился, что в Сети такого сочетания нет.
– Теперь есть.


Я аспирант и преподаю вирусологию в университете.

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



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

Осторожно, много скриншотов.
Читать дальше →

ИИ от Google обучил дочерний ИИ, который превосходит все ИИ, созданные человеком

Reading time3 min
Views73K


В мае 2017 года исследователи из Google Brain представили проект AutoML, который автоматизирует проектирование моделей машинного обучения. Эксперименты с AutoML показали, что эта система может генерировать маленькие нейросети с очень хорошими показателями — вполне сравнимые с нейросетями, которые спроектированы и обучены экспертами-людьми. Однако поначалу возможности AutoML были ограничены маленькими научными наборами данных вроде CIFAR-10 и Penn Treebank.

Инженеры Google задумались — а что если поставить перед генератором ИИ более серьёзные задачи? Способна ли эта система ИИ сгенерировать другую ИИ, которая будет лучше созданного человеком ИИ в какой-нибудь важной задаче вроде классификации объектов из базы ImageNet — самого известного из крупномасштабных наборов данных в машинном зрении. Так появилась нейросеть NASNet, созданная практически без участия человека.
Читать дальше →

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

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

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

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


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

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

Ну, поехали.
Читать дальше →

Интегрируем смартконтракт в веб-приложение на Nodejs

Reading time7 min
Views17K

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


UI приложения

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

Учим компьютер писать как Толстой, том I

Reading time5 min
Views28K
— Eh bien, mon prince. Gênes et Lucques ne sont plus que des apanages, des поместья, de la famille Buonaparte. Non, je vous préviens que si vous ne me dites pas que nous avons la guerre, si vous vous permettez encore de pallier toutes les infamies, toutes les atrocités de cet Antichrist (ma parole, j'y crois) — je ne vous connais plus, vous n'êtes plus mon ami, vous n'êtes plus мой верный раб, comme vous dites 1. Ну, здравствуйте, здравствуйте. Je vois que je vous fais peur 2, садитесь и рассказывайте.

ТОМ ПЕРВЫЙ


ЧАСТЬ ПЕРВАЯ. Анна Каренина


Недавно на хабре наткнулся на эту статью https://habrahabr.ru/post/342738/. И захотелось написать про word embeddings, python, gensim и word2vec. В этой части я постараюсь рассказать о обучении базовой модели w2v.


Итак, приступаем.


  • Качаем anaconda. Устанавливаем.
  • Еще нам пригодится C/C++ tools от visual studio.
  • Теперь устанавливаем gensim. Именно для него нам и нужен c++.
  • Устанавливаем nltk.
  • При установке не забудьте качать библиотеки для Anaconda, а не для стандартного интерпретатора. Иначе все кончится крахом.
  • Качаем Анну Каренину в TXT.
  • Советую открыть файл и вырезать оттуда рекламу и заголовки. Потом сохранить в формате utf-8.
  • Можно приступать к работе.

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

Как получить более 3500 звезд на GitHub за неделю и зачем это нужно

Reading time7 min
Views34K
Недавно мы запустили новый проект под названием Froala Design Blocks. Через несколько дней мы попали в список самых популярных репозиториев GitHub. Спустя неделю мы набрали 3500 звезд и в течении следующих двух стабильно собирали еще по 500 в сутки.



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

Froala Design Blocks — не первый наш продукт, мы на GitHub уже несколько лет. Но я только недавно стала осознавать ценность звезд и вникать, каких правил нужно придерживаться, чтобы люди их ставили. Так что надеюсь, и новички, и ветераны найдут здесь что-нибудь новое для себя о том, как в полной мере использовать потенциал звезд для представления и усовершенствования своего проекта.
Читать дальше →

Раскрашиваем чёрно-белую фотографию с помощью нейросети из 100 строк кода

Reading time22 min
Views78K

Перевод статьи Colorizing B&W Photos with Neural Networks.

Не так давно Амир Авни с помощью нейросетей затроллил на Reddit ветку /r/Colorization, где собираются люди, увлекающиеся раскрашиванием вручную в Photoshop исторических чёрно-белых изображений. Все были изумлены качеством работы нейросети. То, на что уходит до месяца работы вручную, можно сделать за несколько секунд.

Давайте воспроизведем и задокументируем процесс обработки изображений Амира. Для начала посмотрите на некоторые достижения и неудачи (в самом низу — последняя версия).

Как работает Эфириум (Ethereum)?

Reading time35 min
Views192K

Введение


Наверняка некоторые из вас знают, что такое блокчейн Эфириум (с англ. Ethereum), другие, напротив, не имеют даже малейшего представления о нем. Так или иначе, и первые и вторые что-нибудь да слышали о данной платформе. В последнее время этой теме было посвящено множество статей в различных крупных журналах, однако для тех людей, кто мало что слышал об Эфириуме, все статьи на эту тему представляются чем-то мистическим и совершенно непонятным. Тогда, что же собой представляет данная платформа? Если вкратце: Эфириум – это общедоступная база данных с возможностью хранения цифровых транзакций в течение неограниченного времени. Важно также отметить, что для обслуживания и защиты такой базы данных не требуется каких-либо систем управления ключами. Вместо этого данная платформа работает как «беззащитная» транзакционная система – фреймворк, в котором физические лица могут совершать одноранговые транзакции, при этом ни одна из сторон не несет перед другой или третьей сторонами каких-либо обязательств.
Читать дальше →

Смена пола и расы на селфи с помощью нейросетей

Reading time10 min
Views79K

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

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

Как отличать птиц от цветов. Или цветы от птиц

Reading time12 min
Views13K
В качестве программы выходного дня мне захотелось поиграться с как бы «нейронной» сетью (спойлер — в ней нет нейронов). А чтобы потом не было мучительно больно за бесцельно прожитые годы часы, я подумал, что зря мы его кормим, пусть пользу приносит — пусть заодно эта сетка разберет домашний фотоархив и хотя бы разложит фотографии цветов в отдельную папку.

Самая простая сеть


Самая простая сеть нашлась в статье "Нейросеть в 11 строчек на Python" (это перевод от SLY_G статьи "A Neural Network in 11 lines of Python (Part 1)", вообще у автора есть еще продолжение "A Neural Network in 13 lines of Python (Part 2 — Gradient Descent)", но здесь достаточно первой статьи).

Краткое описание сетки — в этой сети есть ровно одна зависимость — NumPy.

Множество входов рассматривается как матрица $X$, множество выходов — как вектор $y$. В оригинальной статье сеть умножает входную матрицу, размерностью (4 x 3), на матрицу весов входов $syn0$ (3 x 4), к произведению применяет передаточную функцию, и получает матрицу слоя $l1$ (4 x 4).
Читать дальше →

Промисы в ES6: паттерны и анти-паттерны

Reading time10 min
Views52K
Несколько лет назад, когда я начал работать в Node.js, меня приводило в ужас то, что сейчас известно как «ад коллбэков». Но тогда из этого ада выбраться было не так уж и просто. Однако, в наши дни Node.js включает в себя самые свежие, самые интересные возможности JavaScript. В частности, Node, начиная с 4-й версии, поддерживает промисы. Они позволяют уйти от сложных конструкций, состоящих из коллбэков.

image

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

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

Топливо для ИИ: подборка открытых датасетов для машинного обучения

Reading time6 min
Views84K


Связанные проекты сообщества Open Data (проект Linked Open Data Cloud). Многие датасеты на этой диаграмме могут включать в себя данные, защищенные авторским правом, и они не упоминаются в данной статье


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


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


Мы разобрались в этом вопросе и собрали данные по датасетам, удовлетворяющим критериям открытости, востребованности, скорости работы и близости к реальным задачам.

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

Библиотека быстрого поиска путей на графе

Reading time8 min
Views35K

Привет, Друзья!


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


Пример использования на огромном графе:



Поиграться с демо можно здесь


В библиотеке используется мало-известный вариант A* поиска, который называется NBA*. Это двунаправленный поиск, с расслабленными требованиями к функции-эвристике, и очень агрессивным критерием завершения. Не смотря на свою малоизвестность у алгоритма отличная скорость сходимости к оптимальному решению.


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

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

28 основных ошибок при фотографировании товаров для интернет-магазина, которые можно избежать

Reading time8 min
Views82K
В этой статье, я хочу рассказать о том, какие ошибки не стоит совершать при предметной фотосъёмке товаров для интернет-магазина или любого другого подобного ресурса. Такой информации в сети не много, и я надеюсь, что моя статья поможет упорядочить очевидные, но не явные проблемы для фотографов, ретушеров, дизайнеров и людей связанных с электронной коммерцией. Так же, соблюдение всех этих простых правил, способно повысить конверсию интернет-магазина, ведь визуальный контент является основным для восприятия и одним из главных факторов принятия решения о покупке.

1. Слишком обработанные фотографии

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

Так, одна из частых досадных ошибок — излишне обработанная кожа моделей, особенно на фотографиях товаров из категории «Красота и здоровье». Работая с внешним видом кожи, необходимо сохранить её текстуру, цвет и оттенок.


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

Оффлайн версия playphrase.me

Reading time3 min
Views34K
Всем привет! Написал небольшой скрипт, который ищет заданную фразу по всем субтитрам в папке (и во всех подпапках) и показывает соответствующий видеофайл с этого места. Если было несколько совпадений, то будет создан плейлист, по которому можно перемещаться либо с помощью «Enter» либо «Shift + <» и «Shift + >».


Человек, получивший обновление иммунной системы для борьбы с раком

Reading time8 min
Views56K
image

Уильям Людвиг [William Ludwig] в 2010-м был 64-летним тюремным надзирателем на пенсии, и жил в Бриджтоне, Нью-Джерси, когда он получил почти безнадёжный прогноз в связи с раком. У Ракового центра имени Абрамсона в Пенсильванском университете закончились варианты химиотерапии, и Людвига исключили практически из всех клинических испытаний, поскольку у него было сразу три вида рака – лейкемия, лимфома и сквамозноклеточная карцинома (рак кожи). В данном позднее интервью учёные Карл Джун описал состояние Людвига как «практически мёртвый».

Элисон Лорен [Alison Loren], онколог из Пенсильвании, заботилась о Людвиге пять мучительных лет. Если химиотерапия сразу неэффективна, то каждый новый цикл даёт всё меньше результатов, и, по её словам, она становится всё более токсичной. В случае Людвига токсичные побочные эффекты сводили на нет любой прогресс в борьбе с раковыми клетками.

Химиотерапия подавляла иммунную систему Людвига, поскольку B-лимфоциты, клетки иммунной системы, были именно теми клетками, на которые была нацелена химиотерапия. Они были поражены раком, бесконтрольно распространявшимся в костном мозге. В его правом глазу разыгралась инфекция от старого вируса ветрянки. Рак стал мобильным, или, как говорят врачи, «подвижным», добираясь до самых дальних мест в его теле. Лорен считала, что рак кожи Людвига выглядел так, будто распространился через метастазы от его костей.
Читать дальше →

Безопасный OpenVPN на VPS за несколько минут

Reading time2 min
Views183K

Введение


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

Скрипт позволяет одной командой создать работающий сервер и создать файлы конфигурации для клиентов в unified формате (то есть с сертификатами, включёнными в файл конфигурации). Кстати, эти файлы подходят для мобильных устройств.

Скрипт создавался для машин с CentOS 7.x или Ubuntu Server 17.x, использование на Ubuntu 16.x. возможно, но там OpenVPN 2.3.x в репозиториях. При необходимости можно добавить другие дистрибутивы, но обычно при покупке VPS можно выбрать систему и это не так важно.
Читать дальше →

Как удалить свой IP из чёрного списка Gmail

Reading time10 min
Views62K

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

Проблемы с чёрным списком Gmail? Вы пришли по адресу.

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

Создана первая технология для подделки любых голосов

Reading time3 min
Views102K


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

Благодаря передовым разработкам в области ИИ теперь злоумышленники смогут пустить оперативников по ложному следу. 24 апреля 2017 года канадский стартап Lyrebird анонсировал первый в мире сервис, с помощью которого можно подделать голос любого человека. Для обучения системы достаточно минутного образца.
Читать дальше →

Information

Rating
Does not participate
Registered
Activity