Как стать автором
Обновить
5
Карма
0
Рейтинг
Андрей @AndrewAZ

Пользователь

Нейробиология и искусственный интеллект: часть вторая – интеллект и представление информации в мозгу

Искусственный интеллект Мозг
Продолжение.

Начало здесь: Нейробиология и искусственный интеллект: часть первая — ликбез,
и здесь: Нейробиология и искусственный интеллект: часть полуторная – новости от Blue Brain Project.

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

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

И как же интеллект связан с деятельностью нейронов?





Читать дальше →
Всего голосов 57: ↑55 и ↓2 +53
Просмотры 75K
Комментарии 39

Википедия переходит на P2P-видео

Краудсорсинг
В техническом блоге Википедии опубликовано сообщение о том, что с нынешнего момента все видеоролики на сайтах Wikimedia поддерживают доставку через торренты.

Каждый пользователь может установить в браузере расширение Swarmplayer (пока только под Firefox, скоро будет под IE) — и с этого момента любое видео Wikimedia будет поступать ему в браузер не напрямую с сайта, а через P2P-сеть таких же клиентов. Это позволит значительно снизить нагрузку на серверы Wikimedia.

Swarmplayer 2.0 работает с библиотекой Kaltura HTML5 (aka mwEmbed) и сервисом url2torrent.net.
Читать дальше →
Всего голосов 49: ↑47 и ↓2 +45
Просмотры 2.5K
Комментарии 36

Изображаем память с помощью тетрадки в клеточку

Искусственный интеллект
Где-то в архивах этого блога можно найти статью про тетрадь в клеточку и ее душевные переживания. Содержание у этой статьи скорее философское, чем прикладное. Но вот сама идея изобразить работу мозга с помощью карандаша и тетради в клеточку показалась мне довольно интересной. Как заметил автор той статьи, работу любой программы можно изобразить на бумаге. Будь то стек вызовов или регистры процессора – их легко можно изобразить с помощью клеточек.

Но это все низкоуровневые процессы. Возможность изобразить их на бумаге скорее теоретическая. На практике от нее мало пользы. Вот если бы можно было с такой же легкостью описывать более высокоуровневые процессы…
Читать дальше →
Всего голосов 67: ↑55 и ↓12 +43
Просмотры 4.2K
Комментарии 29

Обзор теорий сознания: теория функциональных систем П.К. Анохина

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

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

На данный момент существуют три наиболее проработанных и отчасти экспериментально проверенных теории строения сознания в области теоретической нейробиологии: теория функциональных систем П.К. Анохина, теория селекции нейрональных групп (нейродарвинизм) Джеральда Эдельмана и теория глобальных информационных пространств Жана-Пьера Шанже (изначально сформулирована Бернардом Баарсом). Остальные теории либо являются модификациями названных, либо не подтверждены никакими экспериментальными данными. В данной статье речь пойдет о первой из этих теорий — Теории функциональных систем П.К. Анохина.
Читать дальше →
Всего голосов 48: ↑41 и ↓7 +34
Просмотры 51K
Комментарии 62

Здоровье и кодинг — как совместить?

Здоровье
У меня, как и у многих товарищей по профессии после нескольких лет сидячей работы и отсутсвия физических нагрузок здоровье начало ухудшаться.
Первой ласточкой стало медленно, но верно растущее пузо.
Затем последовал серьёзный удар по общему состоящию — я заработал проблемы сразу в двух местах позвоночника. Отлежался недельку в больнице, обколотый блокадами, пенницилином и прочими лекарственными гадостами, простудился там под новый год и получил массу неприятных впечатлений.
Проблемы со спиной были решительно списаны на подъём тяжестей и благополучно забыты… до весны. Весной произошёл рецидив с диагнозом «протрузия позвоночного диска» в поясничной части.
После пробежки по врачам последовали две недели работы на дому с попиванием таблеточек и лежанием на кровати.
Я понял, что если я серьёзно не займусь своим здоровьем, то могу с ним попрощаться навсегда. Но времени как всегда нехватает, дела, работа, дипломный проект и прочие вещи серьёзно мешали заниматься в тренажёрном зале или ходит в какие-нибудь оздоровительные заведения.
Но, подойдя к вопросу системно, я нашёл решение. Решение простое, бесплатное, доступное всем и занимающее не больше 20 минут времени в день.
Читать дальше →
Всего голосов 57: ↑46 и ↓11 +35
Просмотры 2.7K
Комментарии 56

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

Карьера в IT-индустрии
На хабре уже проходило несколько статей об оценке персонала (например здесь), о том, как интерпретировать услышанное от кандидатов. Хочу рассказать о поведенческом интервью, которое успешно использую уже 7 лет и учу этому других.

Основный недостаток большинства оценочных процедур – их субъективность, низкая надежность при оценке знаний и навыков человека. Люди не хотят говорить правду, зачастую выдают теоретические знания за практические навыки. Чтобы отобрать правильных кандидатов, разработаны несколько видов интервью. Одно из них – это поведенческое – то из немногих, которое действительно позволяет понять, что же реально знает и умеет кандидат.

Читать дальше – будет много букв и примеров …

Читать дальше →
Всего голосов 88: ↑69 и ↓19 +50
Просмотры 38K
Комментарии 49

Интервью с создателем C++ STL, 1995 г. Часть 3

C++ *
Перевод
Завершающая часть перевода интервью (первая часть, вторая часть), взятого у создателя Стандартной библиотеки шаблонов Алекса Степанова в 1995 году. Здесь Алекс рассказывает о том, почему в шаблонах не включена поддержка персистентности и серилазизации, о будущем библиотеки и о связи ООП и обобщённого программирования.

Алекс, STL не реализует объектную модель персистентности (постоянного хранения) объектов. Map и Multimap являются особенно хорошими кандидатами для постоянного хранения контейнеров как инвертированных индексов в базах данных постоянного хранения объектов. Скажите, работали ли Вы в этом направлении или же Вы можете хотя бы прокомментировать реализации этой идеи?

Это обстоятельство отмечалось многими. STL не реализует персистентность по уважительной причине. STL настолько велика, насколько можно было себе представить в то время. Я не думаю, что любой больший набор компонентов прошёл бы через Комитет по стандартам. Но персистентность является тем, о чём думали некоторые люди тогда. При проектировании STL и особенно во время проектирования компонента-распределителя, Бьярн отметил, что распределители, которые инкапсулируют памяти модели, могут быть использованы для инкапсуляции модели постоянной памяти. Прозрение принадлежит Бьярну, и это важное и интересное прозрение. Несколько компаний, разрабатывающие объектные базы данных, рассматривают эту идею. В октябре 1994 года я посетил встречу Группы по системам управления объектными базами данных. Я выступил с докладом по STL, и после был большой интерес к тому, чтобы сделать контейнеры с их развивающимся интерфейсом соответствующими STL. Они не рассматривали распределители как таковые. Некоторые из членов группы, однако, пытались выяснить, могут ли распределители быть использованы для реализации персистентности. Я ожидаю, что в течение следующего года появятся хранилища объектов с STL-совместимыми интерфейсами, которые будут вписываться в рамки STL.
Читать дальше →
Всего голосов 31: ↑30 и ↓1 +29
Просмотры 11K
Комментарии 3

Биотопливные элементы своими руками

DIY или Сделай сам
Сразу хочу предупредить, что этот топик не совсем по тематике Хабра, но в комментариях к посту про разработанный в MIT элемент идею вроде бы поддержали, так что ниже я опишу некоторые соображения о биотоливных элементах.
Работа, на основе которой написан данный топик, выполнялась мной в 11 классе, и заняла второе место на международной конференции INTEL ISEF.
Читать дальше →
Всего голосов 61: ↑54 и ↓7 +47
Просмотры 11K
Комментарии 13

The Noun Project: свободная иконка для каждого объекта в мире

Работа с иконками *


Создатели проекта The Noun Project поставили целью собрать пиктограммы для всех объектов в мире. Коллекцию по мере сил пополняют десятки дизайнеров из разных стран. Все иконки публикуются в формате SVG, под лицензией Creative Commons Attribution 3.0 (CC BY) или Public Domain, разбиты на тематические категории, есть поиск на русском языке.
Всего голосов 110: ↑107 и ↓3 +104
Просмотры 13K
Комментарии 57

ТАУ-Дарвинизм

Алгоритмы *

Предисловие


— Кибердворник дядя Федя силой ровно в три медведя, — сообщил Поль, извлекая из недр кибердворника блок регулировки. — Я тут уже знаю одного Федю. Приятный такой, веснушчатый. Очень, очень асептический молодой человек. Это не твой родственник?

Аркадий и Борис Стругацкие (Полдень. ХХII век).

Статья посвящена вопросу применимости генетических алгоритмов к проблеме идентификации динамической системы.
Обновлено: опубликовано продолжение ТАУ-Дарвинизм: реализация на Ruby
Как заглянуть в черный ящик читайте тут
Всего голосов 56: ↑50 и ↓6 +44
Просмотры 5K
Комментарии 41

Визуализация модели данных

Google App Engine *
Для django есть хорошая утилитка, которая анализирует описание модели данных и рисует её графическое представление в dot-формате graphviz.
Сегодня переписал эту утилитку под appengine.

image

Утилита распознаёт Expando (добавляет многоточие в список атрибутов),
наследование от PolyModel (рисует стрелки наследования),
а также ссылочные свойства (в том числе самодельные, типа ManyToManyProperty).

Как пользоваться:
  1. засунуть скрипт в каталог с sdk
  2. запустить её из корневого каталога приложения, указав аргументами список модулей для анализа (в формате имён дя import):
    python path/to/modelviz.py models.foo models.bar > models.dot
  3. сконвертить полученный dot-файл во что-нибудь более удобное, например, в png:
    dot models.dot -Tpng > models.png
  4. наслаждаться неземной красотой
Всего голосов 44: ↑40 и ↓4 +36
Просмотры 3.3K
Комментарии 8

Использование Thrift в .NET

.NET *
Хочу поделиться с вами примером того как можно использовать такую удобную штуку как Thrift в своих .NET проектах.

Для тех кто не знает, Thrift — это фреймворк для облегчения взаимодействия между кодом написанным на разных языках, а именно C++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, Smalltalk и OCaml.

Thrift используется и был изначально создан Facebook. Так же неоднократно упоминался здесь, на Хабре, но примеров для .NET я не нашел, кстати пошаговое руководство для .NET отсутствует и на официальном сайте. В гугле если честно, тоже не смог найти, хотя может плохо искал.

Thrift позволяет один раз описать сервис, структуры данных и даже исключения, а потом сгенерировать код для всех поддерживаемых языков. Таким образом, если вы, например, напишете сервер с использованием Thrift на .NET, то вы
  1. Сэкономите кучу времени для написания клиент серверного приложения, например с использованием сокетов.
  2. Почти автоматически получаете клиентов на всех поддерживаемых языках.
В своем примере я реализую простейший сервис, который просто будет возвращать время. Но имея такой макет достаточно легко расширить его до чего-нибудь полезного.
Читать дальше →
Всего голосов 41: ↑31 и ↓10 +21
Просмотры 12K
Комментарии 28

DXCore — Бесплатная библиотека для создания плагинов в Visual Studio

Блог компании Developer Soft


В данной статье мы хотим сделать краткий обзор DXCore и рассказать, чем может быть полезна эта .NET библиотека.

DXCore — это абсолютно бесплатный продукт, который мы развиваем и поддерживаем начиная с 2004 года. В двух словах, DXCore облегчает разработку расширений для Visual Studio.

Мы стараемся проектировать API этой библиотеки так, чтобы максимально упростить процесс создания плагинов — чтобы разработчики могли сосредоточится на функциональности и по возможности избежать основных сложностей интеграции с Visual Studio.
Читать дальше →
Всего голосов 50: ↑40 и ↓10 +30
Просмотры 10K
Комментарии 12

Система непересекающихся множеств и её применения

Алгоритмы *
Добрый день, Хабрахабр. Это еще один пост в рамках моей программы по обогащению базы данных крупнейшего IT-ресурса информацией по алгоритмам и структурам данных. Как показывает практика, этой информации многим не хватает, а необходимость встречается в самых разнообразных сферах программистской жизни.
Я продолжаю преимущественно выбирать те алгоритмы/структуры, которые легко понимаются и для которых не требуется много кода — а вот практическое значение сложно недооценить. В прошлый раз это было декартово дерево. В этот раз — система непересекающихся множеств. Она же известна под названиями disjoint set union (DSU) или Union-Find.

Условие


Поставим перед собой следующую задачу. Пускай мы оперируем элементами N видов (для простоты, здесь и далее — числами от 0 до N-1). Некоторые группы чисел объединены в множества. Также мы можем добавить в структуру новый элемент, он тем самым образует множество размера 1 из самого себя. И наконец, периодически некоторые два множества нам потребуется сливать в одно.

Формализируем задачу: создать быструю структуру, которая поддерживает следующие операции:

MakeSet(X) — внести в структуру новый элемент X, создать для него множество размера 1 из самого себя.
Find(X) — возвратить идентификатор множества, которому принадлежит элемент X. В качестве идентификатора мы будем выбирать один элемент из этого множества — представителя множества. Гарантируется, что для одного и того же множества представитель будет возвращаться один и тот же, иначе невозможно будет работать со структурой: не будет корректной даже проверка принадлежности двух элементов одному множеству if (Find(X) == Find(Y)).
Unite(X, Y) — объединить два множества, в которых лежат элементы X и Y, в одно новое.

На рисунке я продемонстрирую работу такой гипотетической структуры.


Как такое сделать и зачем оно нужно
Всего голосов 114: ↑109 и ↓5 +104
Просмотры 58K
Комментарии 29

Codec2: сжатие речи до 2400 бит/с (под LGPL2)

Open source *
Вышла первая альфа-версия свободного голосового кодека Codec2, который предназначен для сверхплотного кодирования речи на узких каналах. Например, 3,75 секунды различимой речи он сжимает всего в 1050 байт. Коммуникационное качество обеспечивается потоком 2550 бит/с.

Выпущены симулятор под Linux/gcc (c2sim) для тестирования различных опций кодирования, отдельный кодер (c2enc) и декодер (c2dec) с интерфейсом через командную строку, они работают примерно в 10 раз быстрее реального времени на современном ПК. Скачать исходники и документацию можно здесь.
Читать дальше →
Всего голосов 47: ↑45 и ↓2 +43
Просмотры 8.4K
Комментарии 21

Компиляция. 9: исполняемый код

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

Далее в посте:

  1. Выбор кода
  2. Загрузчик
  3. Изменения в п-коде
  4. Генерация
  5. Что получилось?
Читать дальше →
Всего голосов 53: ↑52 и ↓1 +51
Просмотры 5.4K
Комментарии 10

Мощный лазер своими руками за один вечер

DIY или Сделай сам
image

Кратко.


Здравствуйте дамы и господа. Сегодня я открываю серию статей, посвященных мощным лазерам, ибо хабрапоиск говорит, что люди ищут подобные статьи. Хочу рассказать, как можно в домашних условиях сделать довольно мощный лазер, а также научить вас использовать эту мощь не просто ради «посветить на облака».

Предупреждение!


В статье описано изготовление мощного лазера (300мВт ~ мощность 500 китайских указок), который может нанести вред вашему здоровью и здоровью окружающих! Будьте предельно осторожны! Используйте специальные защитные очки и не направляйте луч лазера на людей и животных!
Читать дальше →
Всего голосов 499: ↑481 и ↓18 +463
Просмотры 956K
Комментарии 484

Дуэт OGRE 3D и SDL

Разработка веб-сайтов *
В последнее время тут стали появляться статьи, связанные с движком OGRE, в т.ч. и пост по созданию простейшей программы, поэтому я решил не откладывать дело в долгий ящик и написать эту статью. Когда-то не так давно я уже писал небольшой поверхностный обзор библиотеки SDL, и здесь, в качестве продолжения, приведу конкретный пример использования этой библиотеки, а именно — как заставить её работать вместе с движком.
Немало текста и много кода
Всего голосов 33: ↑31 и ↓2 +29
Просмотры 7.6K
Комментарии 15

Ogre3D 1.7 Cthugha release!

Open source *
Ogre3D

На конец-то вышел долгожданный релиз open source render-движка Ogre3D 1.7 Chtunga.
Основные изменения в этой ветке можно найти на этой странице. Скачать исходники из svn.
Скачать прекомпилированные SDK под разные платформы можно здесь

В новой версии много замечательных дополнений:
  • Полностью переработана система запуска демо-приложений. Почти все примеры переписали под новые возможности.
  • Движок официально перешёл на MIT лицензию.
  • Разработчики отказались от использования zip-архивов и перешли на 7zip архивы. (сразу использовали tar.gz)
  • Одной из основных возможностей есть новый Terrain-плагин (Посмотреть скрины и историю изменений можно на форуме).
  • Новая система runtime-шейдеров RTSS, где генерация кода выполняется «на лету».
  • Улучшена совместимость с 64-битными системами.
  • Для компиляции под Windows добавлен проект для Visual Studio (sln).

Хочу напомнить, что на этом движке написано несколько проектов высокого уровня: Torchlight, MotorM4X, Zombie Driver, Venetica
Сейчас компилирую новую версию, после окончания выложу скрины некоторых возможностей из демо-приложений. А под катом можно посмотреть на новую Terrain-систему.
Под катом основные возможности движка.
Далее
Всего голосов 52: ↑52 и ↓0 +52
Просмотры 2K
Комментарии 36

Информация

В рейтинге
Не участвует
Откуда
Новосибирск, Новосибирская обл., Россия
Дата рождения
Зарегистрирован
Активность