Pull to refresh
-8
0
Дмитрий @dim2r

Программирование

Send message

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

Reading time14 min
Views83K

image
Источник


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


В мире есть люди, которым достаточно всего 4–5 часов сна, но их очень мало. Большинству сокращение ночного режима грозит деструкцией и смертью. Продолжительность сна имеет большое значение, ведь он не просто занимает часть суток, а «съедает» треть жизни! Если длительность нельзя уменьшить, можно ли повысить эффективность? Оказывается, да. Существуют способы регулировать работу мозга во сне так, чтобы увеличить свою продуктивность без побочных эффектов.

Total votes 23: ↑22 and ↓1+21
Comments38

Самодельный рентгеновский компьютерный томограф

Reading time2 min
Views145K
Полтора месяца назад я рассказывал о том, как Бен Краснов (Ben Krasnow) собрал самодельный рентгеновский сканер. Бен не прекратил свои эксперименты с рентгеном и теперь представляет полноценный компьютерный томограф (авторское описание).

Пример работы томографа показан ниже. Сможете угадать, что (или кто) это?

Читать дальше →
Total votes 99: ↑96 and ↓3+93
Comments83

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

Reading time15 min
Views275K


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

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

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

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

Архитектура растущего проекта на примере ВКонтакте

Reading time14 min
Views41K


Алексей Акулович объясняет жизненный путь высоконагруженного проекта на PHP. Это — расшифровка Highload ++ 2016.

Меня зовут Лёша, я пишу на PHP.

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

Начнём.
Total votes 65: ↑61 and ↓4+57
Comments46

Обучение с подкреплением: от Павлова до игровых автоматов

Reading time9 min
Views12K

История обучения с подкреплением в зависимости от того, как считать насчитывает от полутора веков до 60 лет. Последняя волна (которая захлестывает сейчас нас всех) началась вместе с подъемом всего машинного обучения в середине 90-ых годов 20-ого века. Но люди, которые сейчас на гребне этой волны начинали само собой не сейчас, а во время предыдущего всплеска интереса — в 80-ых. В процессе знакомства с историей нам встретятся многие персонажи, который сыграли роль в становлении учения об искусственном интеллекте (которое мы обсуждали в прошлой статье). Само собой, это неудивительно, ведь обучение с подкреплением — его неотъемлемая часть. Хотя обо всем по порядку.


Само название “обучение с подкреплением” взято из работ известного русского физиолога, нобелевского лауреата Ивана Петровича Павлова. В 1923 вышел его труд “Двадцатилетний опыт объективного изучения высшей нервной деятельности (поведения) животных” [1], известный на западе как Conditional Reflexes [2]. Но психологические подходы были известны и ранее.

Читать дальше →
Total votes 17: ↑16 and ↓1+15
Comments0

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

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

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

Мультифакторный анализатор деятельности произвольного предприятия на IEM-платформе

Reading time3 min
Views4.1K

WANTED: талантливые математики на интересный и денежный контракт
Целевая специализация — матстатистика, матмоделирование, нейросети.
Описание задачи — ниже.


Вторая попытка по человечески сформулировать задачу из предыдущего постинга.

Читать дальше →
Total votes 15: ↑11 and ↓4+7
Comments14

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

Reading time3 min
Views27K
Пост может быть интересен владельцам сайтов с высоким и средним трафиком, для которых основная монетизация идет за счет рекламы. Или будет идти после прочтения этого текста. Речь исключительно об автоматических партнерских системах (Google Adsence, РСЯ, Adfox т.д.). Работа напрямую с рекламодателем и через рекламные агентства не рассматривается.

Это не советы/рекомендации, а факты и цифры, которые я получил на основе работы с десятками разноплановых сайтов, доведя их до хорошего дохода.

1) Локальные стандарты работают лучше тех, что рекомендует системы

Стоит размещать рекламные блоки тех форматов, что распространены в регионе, откуда ваш трафик. Например, блок 240х400 работает в России лучше всех других, даже большего размера. В идеале, каждому региону со значимой долей трафика, показывать свой формат рекламы.

Также надо учитывать, что цена клика в каждом регионе своя и может различаться в разы.
image
Читать дальше →
Total votes 34: ↑23 and ↓11+12
Comments90

Пробиваем VMware vCenter

Reading time7 min
Views43K
Безопасность виртуальных системы – сейчас модный тренд, поэтому обойти стороной этот вопрос нельзя. Сегодня мы будем ломать самое сердце инфраструктуры VMware – сервер vCenter. При этом использовать будем 0-day уязвимости, чтобы жизнь медом не казалась. Ломать будем олдскульными методами, никак не связанными с виртуальными технологиями: тренд, конечно, модный, а вот баги все такие же банальные.

PS: Как водится у ответственных уайт-хатов, все описанные тут баги должны быть уже закрыты, были они 0-деями на момент взлома, то есть в 2011 году. Данный текст был опубликован в журнале Хакер № 7/12 (162), а также являлся основой для докладов на CONFidence 2012, PHD 2012 и Defcon 20.

Взломай меня полностью...
Total votes 53: ↑51 and ↓2+49
Comments12

Сражаясь с анонимностью

Reading time7 min
Views153K
Тема анонимности в Интернете является сейчас достаточно модной и интересной, и особенно теперь, когда новостные порталы пугают наc всякими там PRISM, правительственными инициативами и прочим. Большинство людей озабочены тем, как сохранить тайну своей личности в сети и поэтому все темы так или иначе посвящены ЗАЩИТЕ. Но иногда, раскрытие анонимности это не такое уж и плохое дело. Да-да, эта заметка — мой опыт борьбы с анонимностью своими силами, без помощи спец-служб…

image

Читать дальше →
Total votes 253: ↑238 and ↓15+223
Comments61

STM32 и USB-HID — это просто

Reading time14 min
Views374K
На дворе 2014 год, а для связи микроконтроллеров с ПК самым популярным средством является обычный последовательный порт. С ним легко начать работать, он до примитивности прост в понимании — просто поток байт.
Однако все современные стандарты исключили COM порт из состава ПК и приходится использовать USB-UART переходники, чтобы получить доступ к своему проекту на МК. Не всегда он есть под рукой. Не всегда такой переходник работает стабильно из-за проблем с драйверами. Есть и другие недостатки.
Но каждый раз, когда заходит разговор о том, применять USB или последовательный порт, находится множество поклонников логической простоты UART. И у них есть на то основания. Однако, хорошо ведь иметь альтернативу?

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

У нас есть плата с современным недорогим микроконтроллером STM32F103C8 со встроенной аппаратной поддержкой USB, я рассказывал о ней ранее

Заставим ее работать
Total votes 103: ↑101 and ↓2+99
Comments105

Обратная сторона Agile

Reading time5 min
Views80K
imageХочу поделиться историей, ну и заодно услышать мнения других участников хабрасообщества. Это небольшая история о том, как агрессивное внедрение методологии разработки Agile (Scrum) в отдельно взятой российской IT компании послужило началом исхода из компании лучших разработчиков. Обычно в статьях про Agile рассказывают, какая это классная и полезная методология, и вообще — это лучшее, что было придумано в этом направлении. Возможно, эта статья поможет взглянуть на Agile с другой стороны, ведь у любой монеты, как оказалось, есть две стороны.

В общем, в 2010-м году была основана одна российская компания (что-за компания конкретизировать смысла нет), работала она в сфере IT-разработки (ПО для банковских продуктов).
Читать дальше →
Total votes 146: ↑132 and ↓14+118
Comments580

Генетический алгоритм своими руками

Reading time3 min
Views27K

Генетический алгоритм — способ оптимизации, какой-либо функции. Но, в нашем случае, мне просто был интересен принцип его работы, своеобразное моделирование эволюции. Ну и чтобы проэволюционировать самому.
Мы имеем абстрактное поле, в котором есть организмы (синие и бирюзовые клетки), еда (зеленые) и яд (красные).


image


У созданий всего 64 гена, но можно ввести всего лишь 10 первых.


Читать дальше →
Total votes 32: ↑23 and ↓9+14
Comments17

Нейронные сети на JS. Создавая сеть с нуля

Reading time8 min
Views91K

КПДВ про нейронные сети


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


Но врожденные любознательность и энтузиазм довели меня до того, что я стал одним из разработчиков Synaptic — проекта фреймворка для построения нейронных сетей на JS с 3к+ звезд на GitHub. Сейчас мы с автором фреймворка занимаемся созданием Synaptic 2.0 с ускорением на GPU и WebWorker-ах и с поддержкой почти всех основных фич любого приличного NN-фреймворка.


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

Читать дальше →
Total votes 53: ↑51 and ↓2+49
Comments43

Формула доверия

Reading time8 min
Views7.9K
image

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

Сейчас в DLP-решениях на первый план выходит аналитика. Пару лет назад все российские вендоры стали понемногу пытаться «разворачивать» DLP-системы от борьбы с утечками в сторону выявления и предотвращения других нелегитимных действий сотрудников — мошенничества, откатов, сговоров и т.п. Однако каждый человек генерирует такое количество информации в день, что отслеживать действия каждого невозможно даже в средних компаниях, не говоря о крупном бизнесе. Поэтому способность системы сделать качественную аналитику в автоматическом режиме и очертить круг лиц «под подозрением» была бы очевидным преимуществом. Так возникла идея создания уровня доверия, основной целью которого была прозрачность ситуации с внутренними угрозами в компании.
Читать дальше →
Total votes 20: ↑17 and ↓3+14
Comments0

Как создать торгового робота с помощью генетического программирования

Reading time15 min
Views34K


Доброго времени суток. В этой статье расскажу о создании системы в которой генетические алгоритмы пишут роботов. В теории эти роботы могли бы торговать на бирже.

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

Проект возник из желания попробовать на практике генетическое программирование. Первым вариантом было создавать бота к какой-нибудь игре, но я остановился на торговых роботах, где биржа тоже своего рода игра.
Читать дальше →
Total votes 37: ↑31 and ↓6+25
Comments24

Реализация разделяемой памяти между драйвером и приложением

Reading time6 min
Views10K

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

Читать дальше →
Total votes 41: ↑39 and ↓2+37
Comments6

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

Reading time9 min
Views26K

Глава из книги "Современное программирование на C++" называется "В сто первый раз об интеллектуальных указателях". Все бы ничего, но книга была издана в 2001 году, так стоит ли в очередной раз возвращаться к этой теме? Мне кажется что как раз сейчас и стоит. За эти пятнадцать лет поменялась сама точка зрения, тот угол под которым мы смотрим на проблему. В те далекие времена только-только вышла первая де-факто стандартная реализация — boost::shared_ptr<>, до этого каждый писал себе реализацию по потребности и как минимум представлял себе детали, сильные и слабые стороны своего кода. Все книги по C++ в то время обязательно описывали одну из вариаций умных указателей в мельчайших деталях.


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


А еще на stackoverflow например снова и снова задается вопрос — "потокобезопасны ли умные указатели из стандартной библиотеки?". Ответы даются обычно категоричные, но какие-то мало информативные. Если бы я например не знал о чем идет речь, то наверное бы не понял. И кстати, все сравнительно новые книги описывающие новый стандарт C++ этому вопросу тоже уделяют мало внимания.


Так давайте же попробуем сорвать покровы и разберемся с деталями.

Читать дальше →
Total votes 26: ↑26 and ↓0+26
Comments52

Управление задачами на разработку. История из жизни

Reading time6 min
Views13K
О том, когда задач больше чем ресурсов на их выполнение, очередь задач со временем увеличивается и часть из них можно смело назвать «дурацкими».
Дурацкая задача – когда ожидаемая от реализации польза не оправдывает количества необходимых ресурсов, но Заказчик настаивает на необходимости её выполнения.
О
  • управлении потоком задач на разработку,
    Как избавится от «дурацких» задач?
  • управлении расходами на разработку,
    Как определить и выбрать самые выгодные задачи?
  • распределении ограниченных ресурсов.
    Как сделать так, чтобы все Заказчики были довольны, а количество ресурсов при этом осталось тем же?

Читать дальше →
Total votes 27: ↑25 and ↓2+23
Comments36

Случайные числа из звуковой карты

Reading time15 min
Views13K
Многие когда-либо интересовались случайными числами. Хочу поделиться моими экспериментами по получению истинно случайных чисел с помощью «аппаратного генератора» встроенного в практически любой компьютер — звуковой карты.

При подготовке материала, я переписал свой старый Си код на Питоне, поэтому данный опус также является примером по использованию Windows DLL из Питона с использованием стандартной библиотеки ctypes.

В конце статьи сравниваются данные полученные от двух звуковых карт Realtek и Audigy 2, приведены результаты статистических тестов на случайность.

UPD Исправил пропавшие в коде нули, которые съело НЛО.
Читать дальше →
Total votes 143: ↑137 and ↓6+131
Comments72

Information

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