Pull to refresh
0
0
ayoshi @ayoshi

User

Send message

Нейронные сети: Лекция 1

Reading time3 min
Views52K
Здравствуйте, хабраобщество.

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

Литература


1. Ben Krose, Valter van de Smagt: Introduction to neural networks.
2. Р. Каллан, Введение в нейронные сети.
3. Саймон Хайкин, Нейронные сети полный курс.
4. Gupta Jin Homma, Statical and Dynamical neural networks.

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

Биологические основания нейронных сетей

.
// тема отдана на самостоятельную обработку.
Теория искусств нейронных сетей появилась, как попытка смоделировать ЦНС (ЦНС — центральная нервная система) высших млекопитающих в 50х годах прошлого столетия.

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

Под не формализуемыми задачами мы будем понимать задачи, для которых задачу сформулировать невозможно.
К числу таких задач относятся (пример):
  • классификация
  • кластеризации
  • прогнозирования


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

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

Концепции

Читать дальше →
Total votes 125: ↑91 and ↓34+57
Comments84

Джеймс Шуровьески

Reading time1 min
Views3.6K

Джеймс Шуровьески, финансовый аналитик New York Times и Wall Street Journal, анализируя в книге Мудрость толпы результаты масштабных и многоплановых исследований — в области военной истории и политики, поведенческой экономики, биологических систем и повседневной психологии — убедительно доказывает, что коллективный потенциал большой группы так называемых простых людей всегда выше, нежели у избранных индивидов, пусть даже входящих в интеллектуальную элиту.

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

Приводятся потрясающие эксперименты:

Группе людей предлагают определить на глаз вес быка. Усредненный ответ практически равен истинному. Тоже самое, например, повторяют для определения количества дражже в пакетике с конфетами. Определяют почти точное количество.

Или вот еще пример: пропала подлодка, один из исследователей собрал группу людей с широкими диапазоном познаний и, на основе их ответов, составил коллективный прогноз. Подлодку нашли через 5 месяцев в 200-х метрах от места, указанного группой.

Электронный вариант книги легко находится гуглом :)

Создал блог "Коллективный разум" на хабре, посвященный этим идеям. Давайте повторим подобные эксперименты и проверим на практике, насколько мудрым окажется коллективный разум хабра :)

UPD: Опубликовал первый эксперимент
Total votes 79: ↑64 and ↓15+49
Comments90

Доступ к рабочему столу получить очень легко

Reading time1 min
Views7.1K
Иногда возникает такая ситуация: ты объясняешь кому-то, как что-нибудь делать на компьютере. Например, человек не умеет настраивать какую-нибудь программу и звонит тебе, чтобы ты помог. Или вдруг у друга, который мало понимает в компьютерах, вылезло какое-то окошко, и он просит тебя помочь. Если у вас были подобные ситуации, то вы представляете, насколько сложно объяснять по телефону (или даже по аське Gtalk) последовательность действий. И вы не помните, что и как должно быть, и начинаете поэтому воспроизводить действия у себя на компьютере, да и собеседник иногда толком ничего не может объяснить.

Конечно же, решение данной проблемы уже давным-давно нашли. Это просто удалённое управление компьютером. Данные программы даже встроены в новейшие операционные системы. Хотя можно поставить и решения на основе VNC: например, популярную бесплатную программу UltraVNC.

Подключится к компьютеру с помощью данных решений легко, особенно, если они находятся в одной локальной сети. Но… будем считать этот случай идеальным. А вот в реальности (что происходит, например, постоянно у меня) люди обычно сидят за NAT, файрволом и т.п. Поэтому хоть и можно получить IP-адрес, но ведь нужно ещё и порты настроить. Думаю, что только объяснение всего этого займёт в разы больше времени, чем решение самой проблемы. Не надо забывать, что не все знают, что такое IP и порты.

И даже для этих случаев придумали отличное решение: TeamViewer. О нём-то я немного и расскажу.

Читать далее →
Total votes 56: ↑53 and ↓3+50
Comments88

Обзор сервиса LogMeIn

Reading time4 min
Views8.3K
LogMeIn

Перепробовав большое кол-во софта для доступа к своим серверам и компьютерам — я остановился на LogMeIn.
Причины?
— Работа с Mac
— Безопасность
— Бесплатность (для домашнего использования)
— Возможность удаленной перезагрузки
— Быстрая передача файлов
— Доступ из любой ОС, включая смартфоны и ПДА. (upd via VPK )

Все, что Вам нужно — это установить клиента на PC или Mac. Затем, зайдя на сайт logmein, Вы увидите список всех Ваших устройств.
Не надо помнить IP, портов и т.д.

Читать дальше →
Total votes 24: ↑22 and ↓2+20
Comments36

Масштабируемые и высокопроизводительные веб-приложения. Гл. 1. Протокол HTTP. Draft.

Reading time13 min
Views2.9K
Обсуждаемые темы: HTTP-запросы; HTTP-ответы; Оптимизация с помощью HTTP keep-alive; Оптимизация с помощью HTTP-pipelining; Оптимизация с помощью HTTP-кэширования: Кэширование в современных клиентах, Стратегии ревалидации, Отключение кэширования и интерактивные страницы; Оптимизация с помощью компрессии; Специфическая оптимизация отдаваемого содержимого; Комбинирование контента.

Комментарии приветствуются.

Читать дальше →
Total votes 51: ↑50 and ↓1+49
Comments11

Как рекламироваться в Google Adwords

Reading time1 min
Views13K
Мой опыт рекламы в Adwords. Будет полезен скорее новичкам, но, возможно, и опытные рекламодатели найдут что-то новое.

Что надо сделать до начала работы с Адвордс?
  • Завести карточку для оплаты в Интернет и узнать в банке ее CVV-код. Положить на нее некоторую сумму, например, $50.
  • Очень полезно почитать справку по Adwords.

Регистрация в Адвордс и настройка платежной информации

Зайдите на http://adwords.google.com и зарегистрируйтесь.

Если у Вас уже есть почтовый ящик на Gmail, то лучше указать его в качестве логина. Если нет — укажите любой другой действующий email.

Настройте платежную информацию. Зайдите на вкладку Оплата — Настройки платежных данных. Выберите основной способ оплаты (для Украины я выбираю постоплату по кредитной карте и пишу транслитом имя, фамилию, адрес в том виде, как они заполнены в банке при получении кредитки, дату окончания срока карты и ее CVV-код).

Подбор ключевых слов

Допустим, Вы занимаетесь страхованием автомобилей.

Продолжение статьи здесь
Total votes 102: ↑90 and ↓12+78
Comments35

Я обожаю красивые диаграммы

Reading time2 min
Views1.4K
Один мой коллега сказал однажды: «А что, это обязательно — всякие красивые графики рисовать. Убитое время!» Полагаю, что не обязательно. Однако, я терпеть не могу, когда люди не могут позаботиться о конечном представлении их труда. Вроде того что помылся, побрился, поел, попил кофе, вышел на улицу, и тут ему указали на то, что на ушах носки, на заднице три отпечатка от ботинок и вылитая бутылка кетчупа на сорочке. Непредусмотрительно, в общем.

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

Мое мнение, что без этого график и его идея не достигнет своей цели. Никаких безликих «план продаж», «источники инвестиций», и особенно «доля рынка» :)
Пример названия у графика
Читать дальше →
Total votes 13: ↑12 and ↓1+11
Comments15

Как собрать Кубик Рубика 5х5х5 (часть 1)

Reading time8 min
Views41K
В далеком 2008 году в мои руки попал кубик рубика нестандартных размеров. Как собирать такое чудо, я тогда и понятия не имел. Поначалу мы с друзьями собирали его частично, не имея понятий об алгоритме сборки, но потом захотелось всё-таки научиться собирать его полностью. Через гугл я нашёл некоторое подобие алгоритма сборки, но он к сожалению был неполный и грешил неточностями. Некоторое время анализировав нагугленное и алгоритм классической сборки кубика 3х3х3 я осознал полный алгоритм сборки куба не только 5х5х5, но и 4х4х4 (хотя у меня под рукой не было такого куба, я написал программу для моделирования такого кубика в 3D и проверил алгоритм). Всем, кто хотел бы научиться собирать такой кубик — добро пожаловать под кат.
Читать дальше →
Total votes 248: ↑231 and ↓17+214
Comments72

Максимальный поток минимальной стоимости

Reading time15 min
Views84K
Транспортная задача (классическая) — задача об оптимальном плане перевозок товара со складов в пункты потребления на транспортных средствах.

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

Под катом очень-очень много текста, т.к. рассказывается один из вариантов решения данной задачи «в картинках» для тех, кто мало знаком с графами. Листинг прилагается.

Путешествие в тысячу миль начинается с первого шага
Total votes 173: ↑165 and ↓8+157
Comments76

Кластеризация memcached и выбор ключа кэширования

Reading time4 min
Views23K
Серия постов под общим заглавием “Web, кэширование и memcached” продолжается. В первом мы поговорили о memcached, его архитектуре и возможном применении.

Сегодня речь пойдет о:
  • выборе ключа кэширования;
  • кластеризации memcached и алгоритмах распределения ключей.

Следующий пост будет посвящен атомарности операций и счетчикам в memcached.

Итак, поехали!
Total votes 61: ↑61 and ↓0+61
Comments42

MySQL Query Cache

Reading time5 min
Views110K
В MySQL есть очень полезная функциональность — кеш запросов. Кеш запросов доступен в MySQL начиная с версии 4.0.
Многие СУБД имеют подобную функциональность, но в отличие от MySQL они кешируют планы выполнения запросов, тогда как MySQL кеширует результаты запросов.
Дальше о том, как работает кеш запросов, как его настраивать и оптимально использовать.
Читать дальше →
Total votes 70: ↑67 and ↓3+64
Comments60

BullDoc — система разработки документации

Reading time3 min
Views2.2K

Давайте знакомиться


Каждая разработка, если она хоть немного поэтичней, чем печать «hello world», требует документации. И как-то так получалось, что я начинал писать документацию и все время наталкивался на то, что мне это неудобно:


Документация в MS Word (Open Office) не имеет подсветки кода, держит все в одном длинном документе, его не положишь в систему контроля версий для отслеживания изменений. Такой документ невозможно без лишних трудностей сохранить в html-коде, который будет размещён на сайте.


Microsoft HTML Help Compiler позволяет все хранить в тексте, но не имеет подсветки синтаксиса, документ нельзя собрать в связанные html-страницы для выкладывания на сайт без active-x компонента

Формат Docbook тоже близок к желаемому, но XSLT трансформации сложны, подсветка синтаксиса — хоть и решаемая, но проблема.

PHPDocumentator нацелен на написание документации в виде комментариев к коду. Да, он поддерживает подключение нескольких страниц чистой документации к тому, что получилось (кажется это называется там термином тюториал). BullDoc направлен на написание документации в чистом виде — в виде книжки. Опрятной нормальной книжки с главами, разделами, оглавлением и индексом. То, что получается на выходе из PHPDoc это рабочий инструмент, никак не документация для конечного юзера.

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

Читать дальше →
Total votes 41: ↑35 and ↓6+29
Comments50

Процессы и потоки in-depth. Обзор различных потоковых моделей

Reading time10 min
Views120K
Здравствуйте дорогие читатели. В данной статье мы рассмотрим различные потоковые модели, которые реализованы в современных ОС (preemptive, cooperative threads). Также кратко рассмотрим как потоки и средства синхронизации реализованы в Win32 API и Posix Threads. Хотя на Хабре больше популярны скриптовые языки, однако основы — должны знать все ;)
Далее
Total votes 64: ↑62 and ↓2+60
Comments45

RIA JsClasses Integrator: Оптимизируем разработку на JavaScript

Reading time4 min
Views1.2K
RIA JavaScript Classes IntegratorЧем ближе Ваш сайт приближается к концепции Web2.0 тем больше JavaScript-кода появляется на Ваших страницах. Очевидно, что разработчику все больше времени приходится тратить на интеграцию своего серверного кода на php/java/python… с клиентской частью на JavaScript.

Большое количество кода требует какой-то систематизации, например, разнести логически связанные части кода по разным файлам, имена файлов привязать к контроллеру/событию/блоку… Наверняка у многих разработчиков есть свое решение этой проблемы.
На Хабре, например, JS-код разбит на небольшие блоки, которые запрашиваются в зависимости от страницы. Код написан красиво, откоментирован, стоят отступы. Небольшой минус такого подхода большое количество блоков (около 25) на каждой странице. В начале я использовал похожую схему, но сейчас, все же, хочу представить хабрасообществу немного другой подход.

Читать дальше →
Total votes 37: ↑33 and ↓4+29
Comments27

Алгоритмы организации тэгов

Reading time3 min
Views27K
Тэги – неотъемлемая часть всех современных сайтов и косвенный признак принадлежности сайта к пресловутому Вэб-Два-Ноль.

В статье я хочу рассказать об способах и алгоритмах тегирования информации.
Читать дальше →
Total votes 42: ↑39 and ↓3+36
Comments48

Проектирование по контракту

Reading time5 min
Views23K
Два года назад мне посчастливилось побывать на лекции замечательного человека, одного из разработчиков языка Eiffel, Бертрана Мейера. Он читал в нашем университете (СПб ГУ ИТМО) лекцию о довольно интересной концепции проектирования ПО. Называется она «проектирование по контракту». Суть этой концепции я попытаюсь описать ниже.

Вот, например, когда вы с клиентом договариваетесь о совместной работе, то вы заключаете контракт. Т.е. вы описываете обязанности обоих сторон и возможные последствия в случае неожиданных ситуаций. Данный подход можно применить и к разработке ПО, где в качестве сторон выступают программные модули.
Проектирование по контракту является довольно простой, но, в то же время, мощной методикой, основанной на документировании прав и обязанностей программных модулей для обеспечения корректности программы. Я считаю, что корректная программа – это программа, которая выполняет не больше и не меньше того, на что она претендует.
Читать дальше →
Total votes 71: ↑62 and ↓9+53
Comments56

Архитектура REST

Reading time4 min
Views920K

Введение


В русскоязычной части Интернета присутствует большое количество статей, посвященных веб-службам на основе SOAP и XML-RPC, но почему-то почти ничего нет про вполне заслуживающую внимания (но менее распространенную) архитектуру RESТ.

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

Читать дальше →
Total votes 85: ↑78 and ↓7+71
Comments75

MySQL Performance real life Tips and Tricks

Reading time9 min
Views37K
Пообещал вчера написать статью о реальных случаях оптимизации БД MySQL.
Пришлось сегодня вставать утром пораньше чтобы воплотить обещанное в жизнь.
Централизованное управление мыслями поддерживать еще сложно, поэтому не судите строго за казусы и ляпсусы в моей статье.

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

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

Читать дальше →
Total votes 143: ↑139 and ↓4+135
Comments93
1

Information

Rating
Does not participate
Registered
Activity