От AMX
К DVK
Дата 11.10.2005 18:38:34
Рубрики Танки;

Re: Продолжим список...

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

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

Вы же почему то решили, что вместе с разпознаванием образов компьютер вдруг научился принимать решения в стиле "прорвемся/пора сматываться", "за тем домиком наверняка танк стоит", "очень удобное место для засады".

Он этого еще не научился и еще долго не научится это раз и это тоже требует вычислительных мощностей это два. С чего вы взяли, что этих мощностей у вас в избытке?

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

От DVK
К AMX (11.10.2005 18:38:34)
Дата 11.10.2005 19:06:14

Re: Продолжим список...

Здравствуйте!

>Человек может мгновенно распознавать образы. Компьютер не умеет.
начнем с того, что не мгновенно, а очень быстро.
Существующие алгоритмы распознавания действительно несовершенны. Тем не менее в нейронные сети иногда специально вводят "мыслительный" процесс чтобы избежать получения т.н. "фантомов", к чему нейронные сети склонны.

Что такое образ? Это набор признаков. Существующие технологии не могут качественно находить признаки. Просле того, как они их нашли, решение применяется действительно мгновенно, человеку такое и не снится.
Именно тормознутость от этого и происходит.
В чем достоинство нейронных сетей? Они оперируют образами полностью, поэтому если их удалось обучить, то они показывают хорошие результаты.
Но если сначала надо "понять", сделать анализ, то тут начинаются проблемы... Как правило, задача решается итерационно, путем проверки гипотез. Что, ествественно, занимает время.

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

>Вы же почему то решили, что вместе с разпознаванием образов компьютер вдруг научился принимать решения в стиле "прорвемся/пора сматываться", "за тем домиком наверняка танк стоит", "очень удобное место для засады".

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

>Он этого еще не научился и еще долго не научится это раз и это тоже требует вычислительных мощностей это два. С чего вы взяли, что этих мощностей у вас в избытке?
мощностей вполне хватает.
проблема в том, чтобы придумать алгоритм. а точнее - найти признаки, характеризующие образ.

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

>Если оружие способно само понять куда ему доставится, то оно не будет в виде принятым для Homo Sapiens внутри.
а эту фразу, признаюсь, я плохо понял. разъясните свою мысль?


С уважением, Дмитрий

От AMX
К DVK (11.10.2005 19:06:14)
Дата 11.10.2005 21:25:13

Re: Продолжим список...

>Здравствуйте!

>>Человек может мгновенно распознавать образы. Компьютер не умеет.
>начнем с того, что не мгновенно, а очень быстро.
>Существующие алгоритмы распознавания действительно несовершенны. Тем не менее в нейронные сети иногда специально вводят "мыслительный" процесс чтобы избежать получения т.н. "фантомов", к чему нейронные сети склонны.

>Что такое образ? Это набор признаков. Существующие технологии не могут качественно находить признаки. Просле того, как они их нашли, решение применяется действительно мгновенно, человеку такое и не снится.
>Именно тормознутость от этого и происходит.
>В чем достоинство нейронных сетей? Они оперируют образами полностью, поэтому если их удалось обучить, то они показывают хорошие результаты.
>Но если сначала надо "понять", сделать анализ, то тут начинаются проблемы... Как правило, задача решается итерационно, путем проверки гипотез. Что, ествественно, занимает время.

Причем тут нейронные сети? Вы хотя бы поверхностно с вопросом знакомы?
Речь идет вот об этом
http://sourceforge.net/projects/opencvlibrary/
и никакие нейронные сети тут не причем и алгоритмы, использованные в этой библиотеке, тоже не имеют никакого отношения к нейронным сетям и последние пока в проблеме распознавания образов никак не отличились.



От DVK
К AMX (11.10.2005 21:25:13)
Дата 12.10.2005 09:24:54

Re: Продолжим список...

Здравствуйте!

>Причем тут нейронные сети? Вы хотя бы поверхностно с вопросом знакомы?
поверхностно знаком :)
давайте объясню свое видение проблемы.
Для себя я выделяю несколько главных направлений в распознавании:
1. Признаковые классификаторы, Журавлевская школа
2. Если есть временные последовательности, то неплохо показывают себя скрытые марковские модели
3. Нейронные сети
4. Контурный анализ (могу предположить, что алгоритмы из этого класса прменяются в наших системах астрокоррекции)
5. Функциональное распознавание. Анализируем изображение с помощью эвритических алгоритмов и правил.

Нейронные сети я упомянул, как альтернативу на "мозг принимает решение мгновенно". Нейронные сети в примитивном представлении - это что-то вроде сумматора, поэтому выдают результат они быстро. Что в частности очень полезно при построении систем ПРО, когда главное среагировать, а уж как мы среагировали - будем разбираться потом.

кстати, алгоритмы наведения ракет по принципу "выстрелил-забыл" могут строиться двумя способами (если смотреть на то, что уже сделано в этом направлении):
1. алгоритмически, путем рассмотрения областей с одинаковым цветовым наполнением. Это нечто вроде "волшебной палочки" из Photoshop. Подобные программы применяются, в частности, когда надо наклеить куда-то свою рекламу в виде плакатов, чтоб потом показать по ТВ.
2. читал, что в США показывали демонстрашку программы (как раз для военных целей), которая использовала нейросети.
Так что используются НН.

>Речь идет вот об этом
теперь речь идет об этом :)

>
http://sourceforge.net/projects/opencvlibrary/
спасибо за полезную ссылку
давайте сбавим градус дискуссии...
эта библиотека - набор функций для обработки изображений.
про это я и говорил, что ключевая проблема задач распознавания - выделить характеристики.
но еще не вечер. кто знает, может скоро придумают что-то новое, новые алгоритмы, которые будут решать эту задачу быстро и качественно.

возможно также, что мы вкладываем разный смысл в наши фразы.
я разделяю задачу распознавания образов на три этапа:
1. сбор характристик
2. классификация
3. принятие решения

пока, ИМХО, основной затык в п.1

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

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


С уважением, Дмитрий

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

От AMX
К DVK (12.10.2005 09:24:54)
Дата 12.10.2005 12:37:32

Re: Продолжим список...

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

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

>но еще не вечер. кто знает, может скоро придумают что-то новое, новые алгоритмы, которые будут решать эту задачу быстро и качественно.

Какую задачу? :) Для задачи наведения эта библиотека уже может использоваться, т.к. её пользуют для замены синего/зеленого экрана. Чем отличается наведение от отрезки предмета от фона в видео? :)


От DVK
К AMX (12.10.2005 12:37:32)
Дата 12.10.2005 13:31:19

Re: Продолжим список...

Здравствуйте!

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

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

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

>Какую задачу? :) Для задачи наведения эта библиотека уже может использоваться, т.к. её пользуют для замены синего/зеленого экрана. Чем отличается наведение от отрезки предмета от фона в видео? :)

ну во-первых наведение по изображению - это умение не только выделить объект, но и привязать его к карте местности.
во-вторых, в исходники не лазил, но боюсь, довольно проблематично с помощью предложенных алгоритмов обсчитывать картинку в реальном времени, при полете ракеты.

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

С уважением, Дмитрий

От AMX
К DVK (12.10.2005 13:31:19)
Дата 12.10.2005 13:47:59

Re: Продолжим список...

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

Вот теперь начался предметный разговор. Машинки тут очень показательны. Если они смогли реализовать на "коленке" реал-тайм для скорости движения порядка 40км/ч(хотя скорость могла быть ограничена и скоростью реакции механизмов, управляющих машиной), то нет ничего фантастического в увеличении быстродействия.

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

Только боюсь с электроникой в стране у нас не очень сейчас, хотя буду рад ошибиться.

От DVK
К AMX (12.10.2005 13:47:59)
Дата 12.10.2005 15:01:34

Re: Продолжим список...

Здравствуйте!

По поводу алгоритмов хочу привести один пример из своей жизни.
Разбирался я немного с OpenJpeg биболиотекой по кодированию файлов в формате Jpeg2000 (в нем применено вейвлет-преобразование вместо DCT, поэтому при больших степенях сжатия - раз в 100 - качество гораздо лучше чем у обычного Jpeg).

там был такой кусок кода:
for (i = 0; i < sizeof(t1_flags) / sizeof(int); i++)
((int *) t1_flags)[i] = 0;
- каждый раз чистился массив размером в 1мегабайт, из-за чего все жутко тормозило. после очистки массива только нужной размерности все заработало быстрее.
вот такая простая оптимизация.

помимо техники, есть еще и программист. и многое зависит от того как составить алгоритм.

>то нет ничего фантастического в увеличении быстродействия.
в принципе я с этим согласен.
хотя при малых скоростях можно делать какие-то оптимизации, например, просчитывать параллельно: точно, но медленно; и быстро, но грубо.
первое для того чтобы выбирать цель движения, а второе - для того, чтобы с дороги не съехать.

>Решение лежит уже в плоскости электроники, т.е. быстрой реализации алгоритмов, требующих большого времени вычисления и шлифовки последних.
можно еще пробовать параллелить решение задачи.
в принципе, я бы акцентировался на двух вещах:
1. сделать видео-сенсоры, в которых на уровни электроники реализованы простейщие функции по предобработки изображений.
2. совершенстование алгоритмов.


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


С уважением, Дмитрий

От Elliot
К DVK (12.10.2005 15:01:34)
Дата 13.10.2005 11:42:10

Re: Продолжим список...

>там был такой кусок кода:
> for (i = 0; i < sizeof(t1_flags) / sizeof(int); i++)
> ((int *) t1_flags)[i] = 0;
> - каждый раз чистился массив размером в 1мегабайт, из-за чего все жутко тормозило. после очистки массива только нужной размерности все заработало быстрее.
>вот такая простая оптимизация.

Мда... Программист, однако совсем дятлом был, коли memset не поюзал :-).

От DVK
К Elliot (13.10.2005 11:42:10)
Дата 13.10.2005 14:18:20

Re: Продолжим список...

Здравствуйте!

>Мда... Программист, однако совсем дятлом был, коли memset не поюзал :-).

кстати, memset тут не поможет :)
теоретически, хороший компилятор не даст почувствовать разницу :)

вот что они мне написали в ответ на мое замечание, так что они не _совсем_ "дятлы" :)

Hello Dmitry,

Thanks for helping us optimizing the OpenJPEG code.
Indeed, the erasing algorithm in t1_encode_cblk and t1_decode_cblk is
very slow.

To speed things up, we decided to use the "memset" function to erase the
memory used by t1_flags and t1_data.

The coding and decoding now only takes 2/3 of the time it used to!!!

Thanks a lot for you help,

François

С уважением, Дмитрий

З.Ы. кстати, эта библиотека, ИМХО, лучшее что есть в сети про Jpeg2000 на языке С.