Как стать автором
Обновить
6
0
braintorch @braintorch

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

Отправить сообщение

Краткий обзор популярных нейронных сетей

Время на прочтение6 мин
Количество просмотров52K
К написанию этой статьи меня побудила большая распространенность некоторых заблуждений на тему искусственных нейронных сетей (ИНС), особенно в области представлений о том, что они могут и чего не могут, ну и хотелось бы знать, насколько вопросы ИНС вообще актуальны здесь, стоит ли что-либо обсудить подробнее.

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

Начну с классики.

Читать дальше →
Всего голосов 83: ↑78 и ↓5+73
Комментарии45

Юный гений Степан Большедворский из Ангарска

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

Всего голосов 152: ↑131 и ↓21+110
Комментарии258

Применение нейросетей в распознавании изображений

Время на прочтение10 мин
Количество просмотров243K
Про нейронные сети, как один из инструментов решения трудноформализуемых задач уже было сказано достаточно много. И здесь, на хабре, было показано, как эти сети применять для распознавания изображений, применительно к задаче взлома капчи. Однако, типов нейросетей существует довольно много. И так ли хороша классическая полносвязная нейронная сеть (ПНС) для задачи распознавания (классификации) изображений?
Читать дальше →
Всего голосов 134: ↑131 и ↓3+128
Комментарии73

Unsupervised learning или «пойди туда, не знаю куда, найди то, не знаю что»

Время на прочтение3 мин
Количество просмотров13K
imageЭкспертные системы, нейронные сети, исчисление предикатов, хорновские дизъюнкты, теоремы сходимости…
Не знаю как у вас, у меня вся эта кухня вызывает восторг. Как замечательно, что компьютеры (конечно, наученные программистами, вооруженными серьезной математикой) могут хотя бы иногда приближаться к человеку по навыкам принятия решений. Особенно это хорошо у них получается, когда человек готов учить.

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

Неуправляемое обучение, обучение без учителя
Однако есть ситуации, и их довольно много, когда правильного ответа никто не знает. И даже непонятно что является ответом. И даже задача не вполне ясна. Есть только данные. Надо что-то полезное из них извлечь.
Согласитесь, задача гораздо более интересная и дающая простор для фантазии?
Читать дальше →
Всего голосов 105: ↑96 и ↓9+87
Комментарии172

А вы хорошо знаете статическую маршрутизацию?

Время на прочтение12 мин
Количество просмотров207K
Статический маршрут — первое, с чем сталкивается любой человек при изучении понятия маршрутизации IP пакетов. Считается, что это — наиболее простая тема из всех, в ней всё просто и очевидно. Я же постараюсь показать, что даже настолько примитивная технология может содержать в себе множество нюансов.
Следите за руками.
Всего голосов 68: ↑65 и ↓3+62
Комментарии53

Введение в R-project

Время на прочтение5 мин
Количество просмотров41K
R-project logoВо всем Хабре сыскалась лишь пара статей на вышеуказанную тему. А тема благодатная. Да и в минувшую среду как раз окончился курс "Introduction to Computational Finance and Financial Econometrics". По мотивам его пятой недели «Descriptive statistics» и появился этот пост. Причастившимся будет неинтересно, а желающих познакомиться с базовыми приемами анализа данных при помощи R  — прошу под хабракат.
Читать дальше →
Всего голосов 33: ↑32 и ↓1+31
Комментарии4

Как я покупал квартиру

Время на прочтение11 мин
Количество просмотров62K
Я хотел написать статью про линейную регрессию, но потом подумал, да ну её, лучше куплю квартиру. И пошёл искать, что предлагают. А предлагают, как оказалось, много чего. В подходящий мне ценовой диапозон попало больше 500 квартир. И что, мне теперь все это просматривать? Ну нееет, программист я в конце концов или не программист. Надо это дело как-то автоматизировать.
Читать дальше →
Всего голосов 279: ↑272 и ↓7+265
Комментарии182

Ставим Ubuntu/Debian через debootstrap из другой Linux-системы

Время на прочтение5 мин
Количество просмотров65K
imageПрошло почти три года с публикации последней и единственной статьи на хабре про это дело, и с тех пор некоторые вещи изменились. Хочу сразу сказать, что этот пост — упрощение и объединение двух замечательных вики-страниц написанных моим другом: раз и два. Если те страницы направлены на полное и подробное описание процесса установки, то я постараюсь максимально упростить и ускорить процесс установки, разбив его всего на три шага.

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

Во-первых, вам понадобится рабочая Linux-система, из которой мы будем устанавливать новую систему. Подойдет любой дистрибутив, как и установленный, так и запущенный с LiveCD.
Читать дальше →
Всего голосов 17: ↑15 и ↓2+13
Комментарии13

UDP и проблема доставки ответа

Время на прочтение6 мин
Количество просмотров46K
image
Ниже — перевод статьи о проблеме работы с udp в сетевых приложениях. Переводчик позволил себе сменить примеры: в исходном тексте другие сетевые адреса и код на ruby. В переводе использован простенький скрипт на перле. Суть проблемы и решение от этого не меняются.
Кроме того, местами добавлены мои комментарии (в скобках, выделены курсивом).
Картинка для привлечения внимания взята из текста замечательной книги «learnyousomeerlang.com»

Тяжкая работа лёгких протоколов


Читать дальше →
Всего голосов 52: ↑44 и ↓8+36
Комментарии37

Удаленная замена корневой ФС в GNU/linux

Время на прочтение9 мин
Количество просмотров15K
image
Иногда мне приходится сталкиваться с заменой корневой файловой системы. Имея загрузочный диск и доступ к серверу, это не сложно. Однако, я хочу поделиться опытом замены корневой ФС удаленно, через ssh, без перезагрузки.

Причины для замены коневой ФС бывают разные:
  • перевод / в LVM
  • перевод / в mdraid
  • замена типа файловой системы (ext3 => btrfs)
  • уменьшение размера ФС (resize2fs)

Читать дальше →
Всего голосов 104: ↑101 и ↓3+98
Комментарии23

Геймдизайнерам об игроках или как программировать игроков?

Время на прочтение7 мин
Количество просмотров13K

Вступление 1.



Много думал и анализировал информацию на тему разработки игр. И чтобы не потерять, а так же поделиться с людьми, получить подсказки, советы и комментарии — решил оформить и выложить статью. На сегодняшний день “геймдизайн” все больше обретает очертания некой науки, требующей особого подхода и изучения. К сожалению, в общем доступе находится очень мало структурированной информации. Что касается иностранных авторов, имеющих большой опыт и ряд успешных проектов — зачастую их труды так и не попадают на прилавки отечественных магазинов. А изучить их в оригинале многим мешает языковой барьер.
В данной ситуации спасением служат статьи, где люди делятся впечатлениям и личным опытом по разработке игр. Эти статьи не только и не столько доносят до читателей новую информацию, сколько подают ее в новом свете, позволяя более четко осознать и отобразить в жизнь.

Вступление 2



Хочу отметить, что на написание материала оказало влияние выступление на Sociality Rocks 2011 Henric Suuronen — руководитель студии Wooga, разработчика Bubble Island и других хитов. Особого внимания заслуживает статья Андрея Плахова “Геймдизайнерам о программистах или как программировать программистов”. По аналогии с той статьей возникла мысль, что программировать можно и пользователей тоже. Программировать их модель поведения, чтобы их развлекать и извлекать нужные нам ценности — платежи, удержание в игре, привлечение новых игроков. И одним из инструментов удержания служит набор функций в приложении, который можно условно назвать игровым циклом. Об этом мы и поговорим далее

Читать дальше →
Всего голосов 66: ↑54 и ↓12+42
Комментарии56

Войны в песочнице – Часть 3. ARP-Spoofing, бесполезность фильтрации по MAC-адресу и опасность установки неподписанного ПО

Время на прочтение9 мин
Количество просмотров44K


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

В этот раз физического доступа к сетевой инфраструктуре нет. Есть лишь ноутбук с доступом в интернет по Wi-Fi. Жертва – сосед по общежитию — подключена к другой точке доступа (DIR-320) по Ethernet, но пароль для подключения к точке известен почти всем, т.к. её хозяин предпочитает использовать в качестве средства разграничения доступа фильтрацию по MAC-адресам, добавляя и удаляя адреса из базы по мере необходимости. Моего MAC-адреса в списке разрешенных нет.

Ок, подключаемся, делаем несколько тестов, и видим, что фильтрация MAC-адресов происходит только на сетевом уровне, то есть точка доступа не отказывается:
  • пересылать мои фреймы в Ethernet сегмент, и доставлять ответы
  • отвечать на ARP-запросы и принимать ARP-ответы


Единственное что точка доступа отказывается делать, так это взаимодействовать с чужаком на сетевом уровне, то есть IP-адрес она мне через DHCP не выдаёт, пропинговать её нельзя и в интернет через неё тоже не выйти.

Читать дальше
Всего голосов 85: ↑85 и ↓0+85
Комментарии61

Cкрипт для настройки MultiHomed linux router

Время на прочтение21 мин
Количество просмотров4.9K
Не являясь полноценным системным администратором, тем не менее часто сталкиваюсь с необходимостью настроить шлюз. Пока внешний интерфейс был один — просто изменял относительно универсальный скрипт на bash, собранный по интернетам и lartc.com. Когда появились варианты с 2мя интернет провайдерами — сподобился написать скрипт, с сгруппированными для удобства изменения настройками.
Скрипт может:
  • настроить раздачу интернета при помощи NAT
  • открыть порты
  • пробросить порты
  • использовать более одного провайдера
  • применить дополнительно описанные правила и маршруты
  • выполнить дополнительно прописанные команды
Читать дальше →
Всего голосов 17: ↑16 и ↓1+15
Комментарии8

Панель инструментов Xdebug для отладки PHP в Opera

Время на прочтение3 мин
Количество просмотров3.5K
Инструкция по настройке тулбара Xdebug — для тех, кто хочет отлаживать код непременно в Опере (а также для тех, кого жизнь заставила).

Панель инструментов Xdebug в Opera

Для отладки в Опере я нашёл три способа:
  1. Букмарклет-генератор от JetBrains. Нажимаете «Generate», перетаскиваете ссылки на свой тулбар и, в зависимости от своих настроек, получаете либо длиннющие кнопки с текстом вроде «xdebug This page» (что занимает слишком много места), либо совершенно одинаковые безымянные кнопки с иконками странички (невозможно использовать).
  2. Плагин для Оперы, упомянутый в документации Xdebug, который добавляет кнопку для переключения отладки. Судя по комментариям, плагин даже не удосуживается установить печенью путь «/».
  3. Вручную добавлять параметры в URL.

Оставшись неудовлетворённым всеми вариантами, пришлось изобретать свой велосипед. С помощью инструкций ниже можно добавить шесть кнопок на тулбар (пять — из букмарклета, одна — Dragonfly).
Читать дальше →
Всего голосов 17: ↑11 и ↓6+5
Комментарии7

Общаемся с SIM-картой на низком уровне

Время на прочтение5 мин
Количество просмотров49K

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

— из жизни, орфография сохранена





Ну а если вам все-таки интересно узнать больше о сим-картах, протоколах передачи и их файловой структуре, прошу под кат. Ну и куда же без кода…

Читать дальше...
Всего голосов 197: ↑191 и ↓6+185
Комментарии37

Учимся использовать Glade

Время на прочтение3 мин
Количество просмотров44K
В прошлый раз я обещал, что напишу про программу Glade.

Glade — это приложение для визуального создания графических интерфейсов на GTK+. Оно имеет открытый исходный код и распространяется совершенно бесплатно.

Помните, как мы пытались нарисовать окошко через код? Прочитав этот топик вы сможете создавать хоть тысячи таких окошек просто перемещая виджеты из палитры.


Читать дальше →
Всего голосов 39: ↑29 и ↓10+19
Комментарии5

Как написать дополнение для GIMP на языке Python

Время на прочтение11 мин
Количество просмотров19K

Или Script-Fu — это так называемый «фильтр массовости»? Далеко не каждый может с ним разобраться и большинство даже не пытаются делать какие-то плагины к GIMP.

RPG


Введение


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

В качестве языков, на которых можно писать дополнения, годятся Scheme и Python. Существует возможность писать дополения и на других языках (Perl, Tcl/Tk и т.д.), но модули, которые реализуют эту возможность, плохо поддерживаются либо вовсе не работают со свежими версиями GIMP.

Избрав языком для написания дополнения Scheme, вы автоматически оказываетесь в выигрыше, так как не существует в мире такой сборки GIMP-а, в которую бы интерпретатор Scheme не входил, и написаное вами дополнение гарантировано будет работать на всех платформах «из коробки», однако, писать на Scheme — то ещё удовольствие… Scheme является диалектом LISP. LISP — это аббревиатура, расшифровывается как LISt Processing, то есть, язык для обработки списков. Существует и другая расшифровка: Language of Idiotic Silly Parentheses (язык идиотских глупых скобок), спорное, но не лишенное смысла утверждение, — несоблюдение баланса скобок — один из главных источников ошибок программы, написанной на LISP и ему подобных. Далеко не каждый может разобраться с непростым синтаксисом этого языка, и большинство даже не пытаются писать какие-то дополнения для GIMP. Но сложный синтаксис — это мелочь по сравнению с отсутствием ряда возможностей. Например, нельзя использовать свой графический интерфейс, сохранить настройки дополнения в конфигурационный файл, подключить некий внешний модуль с дополнительными функциями и т.д. и т.п. Но есть язык, лишённый большинства недостатков Scheme и обладающий рядом достоинств. Этот язык — Python. О нём и пойдёт речь.
Читать дальше →
Всего голосов 72: ↑66 и ↓6+60
Комментарии22

Моделирование большого количества взаимодействующих друг с другом частиц

Время на прочтение6 мин
Количество просмотров30K
Рассмотрим ситуацию, когда необходимо обрабатывать столкновения между объектами. Как вы в этом случае поступите? Вероятно, самым простым решением будет проверить каждый объект с каждым другим объектом. И это правильное решение, и все будет замечательно до тех пор пока объектов не много. Как только их станет порядка нескольких тысяч, вы заметите, что все стало как-то медленно работать. А если частиц несколько десятков тысяч или сотен? Тогда все замрет. Вот здесь уже интересно, на какие хитрости и оптимизации вы пойдете, чтобы решить такую проблему.

Для простоты, будем рассматривать 2D случай, частицы круглые, радиус частиц у всех одинаковый.

Содержание


1. Обзор алгоритмов
1.1. Полный перебор
1.2. Sweep & Prune
1.3. Регулярная сеть
2. Некоторые оптимизации
2.1. Sweep & Prune
2.2. Регулярная сеть
3. Сравнение скорости выполнения
4. Приложение (программа и исходный код)
5. Заключение

Читать дальше →
Всего голосов 147: ↑145 и ↓2+143
Комментарии45

Автодокументация PHP в NetBeans 7.01 с использованием phpDocumentor, рассказываем, настраиваем, исправляем

Время на прочтение5 мин
Количество просмотров17K
В этой статье вы получите новые и старые знания, в частности некоторые из них появились совершенно недавно в рунете, а некоторые вообще введены мной прямо на месте не отходя от кассы.

Итак вы узнаете:
  • Базовую информацию о том, что такое автодокументация и как она делается в PHP
  • Настройка генератора документации phpDocumentor в NetBeans 7.01
  • Ссылка на исправленную мной библиотеку phpDocumentor со списком внесенных изменений, думаю некоторым может сразу же понадобиться
  • Ссылки на почитать

На проекте столкнулся с тем, что потребовалось создать нормальную документацию. Писать отдельно документацию не самый лучший способ, базовое описание библиотеки можно выполнить и в стиле автодокументации. Начал разбираться в вопросе и о чудо, в NetBeans 7.01 оказывается поддерживается PHPDoc, вполне достойно и удобно. Был удивлен бедностью информации по этой тематике в русском сегменте сети. Кроме того, я нашел несколько подводных камней, которые создавали проблемы при настройке под Windows.

Если заинтересовались, то добро пожаловать под кат
Читать дальше →
Всего голосов 38: ↑32 и ↓6+26
Комментарии23

Информация

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