Search
Write a publication
Pull to refresh
-1
0
joann @joann

User

Send message

Играем с генетическими алгоритмами

Reading time6 min
Views103K
Одним субботним декабрьским вечером сидел я над книгой The Blind Watchmaker (Слепой Часовщик), как на глаза мне попался невероятно интересный эксперимент: возьмём любое предложение, например Шекспировскую строку: Methinks it is like a weasel и случайную строку такой же длины: wdltmnlt dtjbkwirzrezlmqco p и начнем вносить в неё случайные изменения. Через сколько поколений эта случайная строка превратится в Шекспировскую строку, если выживать будут лишь потомки более похожие на Шекспировскую?

Сегодня мы повторим этот эксперимент, но в уже совершенно другом масштабе.



Структура статьи:
  1. Что такое генетический алгоритм
  2. Почему это работает
  3. Формализуем задачу со случайной строкой
  4. Пример работы алгоритма
  5. Эксперименты с классикой
  6. Код и данные
  7. Выводы

Осторожно трафик!
Читать дальше →

Учёные впервые добились кратковременной сверхпроводимости при комнатной температуре

Reading time2 min
Views13K


Объединённая группа учёных из гамбургского института им. Макса Планка получили, хотя и очень кратковременный, эффект сверхпроводимости при комнатной температуре. Для этого они облучали импульсами инфракрасного лазера керамический сверхпроводник. В эксперименте использовался известный материал, оксид иттрия-бария-меди или YBCO. Об этом рассказывает сайт института.
Читать дальше →

Алгоритм TILT или нестандартное использование ранга матрицы

Reading time3 min
Views28K
Сегодня мы рассмотрим алгоритм TILT (Transform Invariant Low-rank Texture) и множество его методов применения в области Computer Vision. Статья будет нести несколько обзорный характер, без плотного углубления в математические дебри.

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

Руководство хакера по нейронным сетям. Схемы реальных значений. Стратегия №3: Аналитический градиент

Reading time4 min
Views17K
Содержание:
Глава 1: Схемы реальных значений
Часть 1:
   Введение   
      Базовый сценарий: Простой логический элемент в схеме
      Цель
         Стратегия №1: Произвольный локальный поиск

Часть 2:
         Стратегия №2: Числовой градиент

Часть 3:
         Стратегия №3: Аналитический градиент

Часть 4:
      Схемы с несколькими логическими элементами
         Обратное распространение ошибки

Часть 5:
         Шаблоны в «обратном» потоке 
      Пример "Один нейрон"

Часть 6:
      Становимся мастером обратного распространения ошибки


Глава 2: Машинное обучение
Часть 7:
      Бинарная классификация

Часть 8:
      Обучение сети на основе метода опорных векторов (SVM)

Часть 9:
      Обобщаем SVM до нейронной сети

Часть 10:
      Более традиционный подход: Функции потерь



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

Изучаем Haskell

Reading time3 min
Views23K
Доброго времени. Ранее мы делали пост «Новая книга по Haskell на русском?»
В итоге книга вчера пришла из типографии

image

Изучаем Haskell. Библиотека программиста
Автор: Алехандро Мена
Прототип: Beginning Haskell: A Project-Based Approach

Эта книга поможет вам быстро освоить базовые концепции языка программирования Haskell, его библиотеки и компоненты, а также заложит основы функциональной парадигмы программирования, которая становится все более значимой в современном мире разработки ПО. Книга предлагает проектный подход к освоению материала, используя в качестве прототипа проект реализации интернет-магазина. Здесь рассматривается экосистема языка Haskell и его вспомогательных средств, инструменты Cabal для управление проектами, модули HUnit и QuickCheck для тестирования программ, фреймворк Scotty для разработки веб-приложений, Persistent и Esqueleto — для управления базами данных и многие другие компоненты и библиотеки Haskell.
Читать дальше →

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

Reading time4 min
Views46K

Как работает цепочка доверия





В недавней статье «VPN в каждый дом» предлагается сделать огромную глупость, а именно пойти к себе на VPS и ввести там вот это:

curl -sS https://sockeye.cc/instavpn.sh | sudo bash


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

Facebook запускает ЦОД с новой сетевой архитектурой

Reading time2 min
Views23K
В последнее время штат Айова стал весьма популярным местом среди операторов дата центров. Компания Facebook официально объявила об открытии первого здания своего новейшего модульного ЦОД с воздушным охлаждением в городе Алтуна. Представители соцсети также сообщили, что этот дата центр станет самым длинным во всем мире.

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

Обходим защиту iOS клиента Dropbox

Reading time5 min
Views32K


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

Mosh — SSH с блекджеком и роумингом

Reading time3 min
Views69K
На Хабре пару лет назад уже упоминали Mosh, но, кажется, есть смысл напомнить хабражителям об этой великолепной программе, которая, вполне возможно, станет для кого-то одним из самых приятных открытий и облегчит жизнь.

Забегая наперед, сразу спойлер — для mosh не нужны права суперпользователя, он не является демоном, и не занимается аутентификацией и шифрованием (это остается на плечах ssh). Разработали его в MIT, активно развивают, и поддерживают для всех платформ и дистрибутивов.



Чем же mosh лучше традиционного ssh-client, какие проблемы решает и почему вы, скорее всего, на него перейдете?
Читать дальше →

Взгляд изнутри: LCD и E-Ink дисплеи

Reading time12 min
Views218K


Demain n'existe pas!

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

Специально ко Дню Защитника Отечества на препарационный стол легли LCD и E-Ink дисплеи, которые, так или иначе, достались мне в несколько побитом жизнью виде.

Как Антон кидал телефон об стену, а также о результатах скрупулёзного разбора дисплеев читайте под катом.
Хочу посмотреть на это!

Установка, настройка и использование сканера уязвимостей chkrootkit

Reading time4 min
Views27K
В предыдущей моей публикации про сканер уязвимостей rkhunter в комментариях хабрапользователем Indexator был упомянут сканер chrootkit. При схожем функционале c rkhunter, есть ряд отличий, который будет интересно рассмотреть в этой статье. Интересно также то, что совсем недавно была выпущена новая версия сканера, разработка которого казалась замороженной c 2009 года.


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

Twitter открывает исходный код движка, заменяющего эмоджи на картинки

Reading time4 min
Views8.5K
Речь здесь пойдёт о символах-картинках и о том, как отображать их.

По-японски они называются «絵文字» (где «絵» означает «картинка», а «文字» — «символ») или «えもじ», и произношение этого названия можно передавать разными способами: по Хэпбёрну «emoji», по Поливанову «эмодзи», в киричзи у Тассадара — «эмочзи», по Сергею Грису «эмоджи» через мягкий «жи». Этот последний вариант мне больше всего нравится, его-то я и стану использовать и в заголовке, и в тексте.

Что такое эмоджи? Это миниатюрные пиктограммы и идеограммы, которые можно вставлять в текст почти так же, как и буквы.

Эмоджи многочисленны. Первый набор эмоджи (который придумал Курита для технологии i-mode в 1998 или 1999 году) содержал 172 символов, состоявших всего-навсего из 12×12 пикселов. Через десять лет в Unicode 6.0 (2010 г.) было ужé 722 эмоджи, а стандарт нынешнего года (Unicode 7.0) дополнил их число ещё примерно четвертью тысячи эмоджи.

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

А выражение «почти так же» я чуть выше употребил потому, что эмоджи всё же нельзя в полной мере считать обычными символами. На то есть две причины.

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

О том, как сайт Have I been pwned? масштабировался под высокой нагрузкой и сколько это стоило (<$25)

Reading time18 min
Views28K
На картинке изображен график роста траффика, который облачные адепты по всему миру продают в виде одного из сценариев, когда эластичное масштабирование имеет высокую ценность:

Sessions going from barely anything to almost 12k an hour almost immediately

Это график посещений сайта Have I been pwned? (HIBP), который в один момент стал обслуживать со ~100 сессий в час до… 12000 сессий в час. Практически мгновенно.

Это случилось на неделе в сентябре, когда траффик буквально увеличился в 60 раз. 10 сентября – 2105 сессий, 11 сентября – 124036 сессий. Интересные вещи происходят, когда нагрузка увеличивается так резко, так быстро. Так что мне захотелось поделиться с вами несколькими вещами, которые я узнал – что было сделано мной хорошо и что следовало улучшить.
Читать дальше →

JMeter как относительно удобное и практичное средство для тестирования API

Reading time4 min
Views40K
В статье пойдет речь о тестировании в сжатые сроки с использованием инструмента JMeter, а также о том, как успешно завершить работу при вынужденной замене специалистов на проекте.

image

Как тестировщик, я люблю, когда всё по порядку, но жизнь переполнена грязными хаками. Я люблю автоматизировать, подвязав Selenium к Python, но когда встречаюсь с проблемой ограниченности ресурсов, бросаюсь за тот инструмент, который позволяет сделать «всё то же самое, но быстрее». В этом посте я расскажу, что JMeter — прекрасный инструмент как для нагрузочного, так и для функционального тестирования.
Читать дальше →

Как работают рекомендательные системы. Лекция в Яндексе

Reading time11 min
Views144K

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





План лекции:


  1. Виды и области применения рекомендательных систем.
  2. Простейшие алгоритмы.
  3. Введение в линейную алгебру.
  4. Алгоритм SVD.
  5. Измерение качества рекомендаций.
  6. Направление развития.

Под катом вы найдете конспект лекции и презентацию

Лучшие плагины для Sublime Text

Reading time5 min
Views645K

WebInspector


Мощный инструмент для дебаггинга JavaScript, полноценный инспектор кода для Sublime. Фичи: установка брейкпоинтов прямо в редакторе, показ интерактивной консоли с кликабельными объектами, остановка с показом стек трейса и управление шагами дебаггера. Все это работает на ура! А еще есть Fireplay от Mozilla, который позволяет подключаться к Firefox Developer tools и максимально простой дебаггер JSHint.



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

Введение в ограничение числа запросов с Redis [часть 1]

Reading time5 min
Views14K
За последнее время я написал несколько разных способов ограничения числа запросов с помощью Redis. Как в коммерческих, так и в личных проектах. В двух частях этой публикации я хочу охватить два разных, но связанных способа ограничивать число запросов — с использование стандартных команд Redis и с помощью Lua скриптов. Каждый последующий из описанных методов будет добавлять новые варианты использования и решать огрехи предыдущих.

Эта публикация предполагает, что у вас есть некоторый опыт работы с Python и Redis и, в меньшей степени — с Lua, но и тем, у кого такого опыта нет, тоже будет интересно.

Зачем ограничивать число запросов?


Например, Twitter ограничивает количество запросов к своему API, а Reddit и StackOverflow используют ограничения на количество сообщений и комментариев.
Читать дальше →

Первая фотография обратной стороны Луны: немного истории

Reading time2 min
Views82K


Нет, сегодня не очередная памятная дата, относящаяся к какому-либо достижению в исследованиях космического пространства. На Хабре на днях публиковалась история аппарата «Луна-1», в связи с чем стоит вспомнить, наверное, один из наиболее известных космический аппаратов — «Луна-3».



Дело в том, что именно этот советский космический аппарат получил снимки обратной стороны луны. Случилось это 7 октября 1959 года, в 6 часов 30 минут утра (московское время).

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

Социальные медиа это бред. Книга Брэндона Мендельсона

Reading time2 min
Views28K
Я давно ничего не публиковал на Хабре. Как-то нечем было поделиться. И впервые пишу о книге, которую стоит прочесть. Автор развенчивает мифы об эффективности социальных сетей для формирования брэндов и лояльности покупателей.

Помните время, когда многие компании бросились вести свои блоги и продвигать их? Только в итоге оказалось, что людей, умеющих интересно писать, очень мало. А тех, кто готов это читать и комментировать, и того меньше. Так и висят до сих пор многие «протухшие» блоги с поздравлениями с Новым Годом и 8 марта…

С появлением моды на «социалки» всем так же резко захотелось там быть. Зачем? Ну как, там же «все»…

Вернемся к книге.
«Вот и вам не стоит регистрироваться на Facebook. Вы там никому не нужны»

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

Развитие промышленных роботов в автомобилестроении. Часть 1

Reading time3 min
Views26K


Со времен изобретения автомобилей, люди пытаются оптимизировать все процессы в производстве машин. Ведь чем быстрей и проще автомобиль будет собран и выпущен на рынок, тем быстрей производитель получит свой Доллар/Рубль/Евро.
Роботы внедряются в производство постепенно и обдуманно. Они имеют большое преимущество перед любым человеком в силе и постоянстве, могут работать 3 смены без остановки на выходные, обеденный перерыв или отпуск. Что очень важно для беспрерывного производства.

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

Information

Rating
Does not participate
Location
Paris, Франция
Date of birth
Registered
Activity