Логотип

Форум создателей искусственных интеллектов


Логин (email) 
Пароль 
Настройки

Скачать
Вперёд
1
2
Формат передачи данных сенсорных и моторных
NA
create
15:29 02.05.2021 №983
Каков он в живой природе и оптимальный применительно к AGI?
0 | 0
Аватар
offline
create
16:24 02.05.2021 №984
Это хороший вопрос, ключевой. Моё понимание таково: 1. Сенсорные данные должны предоставлять только те сведения, которые могут быть использованы для формирования моторных данных. Таким образом резко сокращается комбинаторика сенсорных данных, потому что моторные данные не богаты разнообразием. 2. Моторные данные имеют только две составляющие: идентификатор мышцы, которая должна сократиться (имя мышцы, её месторасположение) и усилие, с каким она должна сократиться. Соответственно, сенсорные данные должны предоставлять только два вида составляющих: где что находится и интенсивность, с которой перемещается. Как мне видится, этих данных достаточно, чтобы построить всё многообразие сенсорных и моторных событий (сцен, энграмм, паттернов), с которыми в принципе может в жизни столкнуться наше сознание и мышление. А значит и ИИ нет нужды обладать большим разнообразием данных.
0 | 0
NA
create
17:25 02.05.2021 17:41 02.05.2021 №985
Хочу сразу сузить рассматриваемую тему. Совершенно не важен принцип адрессации передачи данных: подобно IP или по фиксированной выделенной линии. В данной теме хочу рассмотреть именно формат передаваемых данных и природу данных. Какой формат данных нативен для сенсоров и моторов, а также каналов связи? Варианты: bool, int, float, signed, unsigned. Ещё варианты?
0 | 0
Аватар
NA
create
22:39 02.05.2021 22:40 02.05.2021 №986
1. Формат может быть любым, он роли не играет, роль играет онтология, то есть описание формата, то есть метаданные. 2. Тип данных тоже может быть любым, до тех пор пока мы можем заниматься конвертацией типов. В качестве универсального типа я (в своей AGI системе) использую байтовые массивы. Они хорошо преобразуются к строкам и к целочисленным данным. В обработке изображений важен double, но он тоже конвертируется в byte array и обратно...
0 | 0
NA
create
23:27 02.05.2021 №987
Prosolver:
Это хороший вопрос, ключевой. Моё понимание таково: 1. Сенсорные данные должны предоставлять только те сведения, которые могут быть использованы для формирования моторных данных. Таким образом резко сокращается комбинаторика сенсорных данных, потому что моторные данные не богаты разнообразием. 2. Моторные данные имеют только две составляющие: идентификатор мышцы, которая должна сократиться (имя мышцы, её месторасположение) и усилие, с каким она должна сократиться. Соответственно, сенсорные данные должны предоставлять только два вида составляющих: где что находится и интенсивность, с которой перемещается. Как мне видится, этих данных достаточно, чтобы построить всё многообразие сенсорных и моторных событий (сцен, энграмм, паттернов), с которыми в принципе может в жизни столкнуться наше сознание и мышление. А значит и ИИ нет нужды обладать большим разнообразием данных.
Мне нравится ход ваших мыслей: усилие для пердачи к мотору и интенсивность - от сенсора. Хочется рассиотреть их.
0 | 0
NA
create
23:44 02.05.2021 00:10 03.05.2021 №988
Egg:
1. Формат может быть любым, он роли не играет, роль играет онтология, то есть описание формата, то есть метаданные. 2. Тип данных тоже может быть любым, до тех пор пока мы можем заниматься конвертацией типов. В качестве универсального типа я (в своей AGI системе) использую байтовые массивы. Они хорошо преобразуются к строкам и к целочисленным данным. В обработке изображений важен double, но он тоже конвертируется в byte array и обратно...
Мне не нравится ход ваших мыслей. Получается, что сенсор и мотор, в вашем случае, очень сложны. Сенсор целиком воспринимает картинку, преобразует в поток данных передаёт их по какому-то протоколу через канал передачи. Аналогично мотор, в вашем случае, получает поток данных для большого количества элементарных действий, не для одного! Т.е. для мышцы вцелом или для ансамбля мыщц, а не для отдельного мышечного волокна. Я предполагаю рассматривать элементарный сенсор, например пиксель, даже не пиксель, а одну из его RGB (например) составляющих и элементарный мотор - вышеупомянутое мышечное волокно или пиксель монитора.
0 | 0
Аватар
NA
create
01:31 03.05.2021 01:32 03.05.2021 №990
cortl:
Сенсор целиком воспринимает картинку, преобразует в поток данных передаёт их по какому-то протоколу через канал передачи.
Видит не глаз, видит мозг. )))
0 | 0
NA
create
01:59 03.05.2021 14:33 03.05.2021 №991
Веду свои рассуждения от живого. 1. Есть мозг, есть сенсор, есть мотор, есть линии связи: сенсор -> мозг, мозг -> мотор. Кроме того, в живом вроде бы есть двусторонняя связь (могу ошибаться), рассматривать её считаю бесперспективным, т.к. она может быть замещена первыми двумя. 2. Передача сигнала производится через нервную ткань (как её обозвать неважно) электрическим током (важно). В железе это проводник и ток. Если есть возражения поправьте. На этом стоит остановиться с ЕНС и перейти к ИНС, а в ИНС двоичный цифровой сигнал - это наше всё!
0 | 0
NA
create
15:40 03.05.2021 15:42 03.05.2021 №1002
Так как же выгоднее использовать двоичный цифровой сигнал? Передавая bool-значения, или пакетировать их в байты, инты, массивы байтов, или использовать числа с плавающей точкой? Предположим есть две искусственные кости, соединённые подпружиненным суставом. Мышца в активном состоянии сгибает эту конструкцию преодолевая действие пружины. В неактивном состоянии мышцы сустав разгибает конструкцию под действием пружины. Варианты: 1. Мышца получает на вход bool-значение. false - неактивна, true - активна на 100% 2. Мышца получает на вход, например, восемь bool-значений, каждое из которых управляет одним из восьми мышечных волокон данной мышцы 3. Мышца получает на вход float-значение [0...1) и сообразно ему активируется на 0...100% 4. Мышца получает на вход unsigned char и активируется значением [0...255] на 0...100% Те же самые варианты, но в противоположном направлении сигналов можно применить и к сенсорам.
0 | 0
Аватар
offline
create
17:52 03.05.2021 08:15 04.05.2021 №1005
cortl:
Передача сигнала производится через нервную ткань (как её обозвать неважно) электрическим током (важно). В железе это проводник и ток. Если есть возражения поправьте.
Если верить научно-популярной литературе, то в живой нервной ткани всё не совсем так. Сигналы распространяются посредством потенциала действия - кратковременной волнообразной переполяризации мембраны аксона. Например, книжка "От нейрона к мозгу" (2003) говорит нам следующее:
Цитата:
Электрические сигналы в нервной системе генерируются движением ионов через мембрану нервной клетки. Эти ионные токи протекают через водные поры трансмембранных белков, известных как ионные каналы.
Цитата:
Важным свойством электрических сигналов является то, что они фактически идентичны во всех нервных клетках организма независимо от тоro, запускают ли они движение, передают ли информацию о цветах, формах или болезненных стимулах, или соединяют различные области мозга. Вторым важным свойством сигналов является то, что они настолько одинаковы у разных животных, что даже умудренный опытом исследователь не способен точно отличить запись потенциала действия от нервного волокна кита, мыши, обезьяны или профессора. В этом смысле потенциалы действия могyт считаться стереотипными единицами. Они являются универсальным эталоном для обмена информацией во всех исследованных нервных системах.
Цитата:
Потенциал действия, представляет собой короткий электрический импульс амплитудой около 0,1 В. Длительность потенциала действия около 1 миллисекунды
Цитата:
Наиболее быстрые потенциалы действия распространяются по волокнам большого диаметра со скоростью около 120 метров в секунду
Цитата:
Учитывая, что каждый потенциал действия (ПД) имеет фиксированную амплитуду, неясно, в чем же отражается величина стимула. Интенсивность кодируется частотой ПД. Более эффективный зрительный стимул вызывает большую деполяризацию и, как следствие, более высокую частоту генерации ПД в ганглиозной клетке (рис. 1.10). Такое обобщение впервые было сделано Е. Эдрианом, который показал, что частота ПД в чувствительном окончании кожного нерва зависит от интенсивности стимула. Кроме того, он обнаружил, что более сильный стимул активирует большее количество чувствительных волокон.
Цитата:
сила мышечных сокращений может быть увеличена вовлечением дополнительных мотонейронов или усилением частоты их активации.
Цитата:
Во время сокращения первоначально активируются малые нейроны, приводя к плавному началу сокращения. Затем вовлекаются крупные мотонейроны, что проявляется в значительном усилении сокращения. Таким образом, за счет вовлечения малых и крупных мотонейронов достигается плавность и градуальность сокращения.
А вот тут ещё написано такое:
www.bio.bsu.by:
В зависимости от частоты приходящих к мышце нервных импульсов мышца может сокращаться в одном из трех режимов. - Одиночные мышечные сокращения возникают при низкой частоте электрических импульсов. Если очередной импульс приходит в мышцу после завершения фазы расслабления, возникает серия последовательных одиночных сокращений. - При более высокой частоте импульсов очередной импульс может совпасть с фазой расслабления предыдущего цикла сокращения. Амплитуда сокращений будет суммироваться, возникнет зубчатый тетанус – длительное сокращение, прерываемое периодами неполного расслабления мышцы. - При дальнейшем увеличении частоты импульсов каждый следующий импульс будет действовать на мышцу во время фазы укорочения, в результате чего возникнет гладкий тетанус – длительное сокращение, не прерываемое периодами расслабления.
Таким образом, несмотря на участие электрических процессов при передаче сигналов в живой нейро-ткани называть эти сигналы электрическим током будет сильным загрублением. И я бы вообще не сильно обращал внимание на биологическую механику реализации того или иного когнитивного функционала, потому что воспроизводить его мы всё равно не будем, ввиду чрезвычайной убогости, а будем пользоваться теми или иными электрическими цепями. Либо цепями дискретных цифровых компьютеров, либо каких-то аналоговых решателей, если это понадобиться. Со скоростью передачи сигнала близкой к световой, а не 120 м/с. И способом кодирования силы/интенсивности не частотным, а таким, каким нам будет удобно. Выбор типа переменной для кодирования усилия зависит, очевидно, от того, какой именно силовой привод будет использован. Если как в роботах Boston Dynamics (а у них гидропривод), то разрядность переменной будет зависеть от того, сколько дискретных положений может занять клапан, подающий сжатую жидкость к исполнительному поршню. Если честно, то мне кажется это последний вопрос, который сейчас стоит обсуждать. Это примерно то же самое, что решать, какие обои нужно клеить в доме, проект которого ещё не написан.
+1 | 0
NA
create
02:28 04.05.2021 №1007
Большое спасибо, Prosolver, за приведённые цитаты. Примерно так я и представлял себе основы естественного интеллекта. И хотел найти этому подтверждение в литературе, но не мог этого сделать. Вы сделали это! С меня +1 (хотя это неадекватно мало).
Prosolver:
Таким образом, несмотря на участие электрических процессов при передаче сигналов в живой нейро-ткани называть эти сигналы электрическим током будет сильным загрублением. И я бы вообще не сильно обращал внимание на биологическую механику реализации того или иного когнитивного функционала, потому что воспроизводить его мы всё равно не будем, ввиду чрезвычайной убогости, а будем пользоваться теми или иными электрическими цепями. Либо цепями дискретных цифровых компьютеров, либо каких-то аналоговых решателей, если это понадобиться. Со скоростью передачи сигнала близкой к световой, а не 120 м/с. И способом кодирования силы/интенсивности не частотным, а таким, каким нам будет удобно.
Всё так! Но! Частотный способ очень удобен, но не тупая синусоида или квадрат в определённом промежутке времени с жёсткой частотой, а с ответственностью за каждую новую волну. Если есть условия для запуска сигнала - запускаем и проверяем эти условия для каждой следующей волны. И период каждой волны индивидуален, хотя они достаточно близки при длящихся во времени постоянных условиях. С другой стороны период волны может стремиться и к нулю, и к бесконечности. Но не стоит увлекаться: слишком короткая волна может остаться незамеченой, а слишком длинная привести к её игнорированию за неинформативностью. Другой путь - использовать не волны, а использовать on/off. on - есть раздражитель/комонда, off - нет раздражителя/команды.
Prosolver:
Выбор типа переменной для кодирования усилия зависит, очевидно, от того, какой именно силовой привод будет использован. Если как в роботах Boston Dynamics (а у них гидропривод), то разрядность переменной будет зависеть от того, сколько дискретных положений может занять клапан, подающий сжатую жидкость к исполнительному поршню. Если честно, то мне кажется это последний вопрос, который сейчас стоит обсуждать. Это примерно то же самое, что решать, какие обои нужно клеить в доме, проект которого ещё не написан.
Мне какраз сейчас "обои нужно клеить" для проведения тестов. Могу сказать, что bool повёл себя достаточно неплохо (для моторов), а про unsigned char такого сказать не могу. Да, эта тема кажется последней, но из приведённых цитат видно, что сигналы-то везде одинаковы и в мозгу, и в сенсорах, и в моторах, и у человека, и у обезьяны. Поэтому вопрос далеко не последний.
0 | 0
Аватар
offline
create
08:59 04.05.2021 №1011
cortl:
Частотный способ очень удобен, но не тупая синусоида или квадрат в определённом промежутке времени с жёсткой частотой, а с ответственностью за каждую новую волну.
Частотный способ передачи сигналов говорит нам о том, что в живой нейро-ткани есть некоторый период интеграции, в пределах которого частота обретает значение (меняет в какую-то сторону поведение нейронов). Очевидно, что отдельный импульс свидетельствует только о том, что с такого-то направления сигнал есть (true/false), а чтобы выяснить его интенсивность, нужно проводить интеграцию этих импульсов в течение некоторого периода. Таким образом, нейро-ткань представляет собой крайне медленный цифровой автомат с задержкой, необходимой для интеграции буфера, построенный даже не на двоичной, а на единичной системе счисления. Но мы не обязаны пользоваться такими дикими ограничениями. В единицу времени мы можем передать данные об интенсивности с фиксированной длиной в двоичной форме, таким образом "период интеграции" будет составлять несколько тактов процессора, необходимых для перезаписывания переменной из одного места памяти в другое, а не доли секунды - что чудовищно медленно. Кстати, это обстоятельство наталкивает меня на следующие умозаключения. Есть мнения о том, что человеческий мозг - это аналоговый решатель и даже чуть ли не квантовый вычислитель. Я думаю, это сильное преувеличение. Мозг "выезжает" только за счёт распараллеливания своей работы и безбожной растраты памяти, чем компенсирует крайнюю свою медлительность. Пытаясь запоминать буквально всё подряд, мозг получает возможность реконструировать реальность не по сигналам рецепторов (что, действительно, ресурсоёмко), а по своим воспоминаниям (данные от рецепторов используются в основном для верификации построенных моделей). Поэтому и складывается впечатление, что там работает какой-то всерхбыстрый квантовый вычислитель. А там просто шулер, рисующий реальность так, как ему удобнее, чтобы сэкономить на вычислениях. И ввиду этого обстоятельства, вполне допускаю, что современные компьютеры, благодаря большим объёмам памяти и большим скоростям, смогут скомпенсировать отсутствие параллельности и выйти на итоговые скорости работы даже более высокие, чем человеческий мозг. Вопрос только в правильной архитектуре.
0 | 0
Аватар
NA
create
09:54 04.05.2021 09:54 04.05.2021 №1013
Вот отсюда можно начинать пытаться понять в чем отличие цифровых и аналоговых вычислений: Амеба находит приближенные решения NP задачи за линейное время
0 | 0
NA
create
02:52 05.05.2021 №1036
Prosolver:
Частотный способ передачи сигналов говорит нам о том, что в живой нейро-ткани есть некоторый период интеграции, в пределах которого частота обретает значение (меняет в какую-то сторону поведение нейронов). Очевидно, что отдельный импульс свидетельствует только о том, что с такого-то направления сигнал есть (true/false), а чтобы выяснить его интенсивность, нужно проводить интеграцию этих импульсов в течение некоторого периода.
В теле нет других сигналов, кроме false/true. Для каждого существует отдельный канал. Хотите в железе передавать набор bool в виде int - пожалуйста, но этот int в виде числа не имеет физического смысла. У меня нет примера передачи интенсивности или усилия в теле в виде числа в диапазоне целых чисел большем, чем [0...1], про плавающую точку и речи быть не может, имхо. Если у вас есть - приведите, обсудим.
Prosolver:
Мозг "выезжает" только за счёт распараллеливания своей работы и безбожной растраты памяти, чем компенсирует крайнюю свою медлительность ... вполне допускаю, что современные компьютеры, благодаря большим объёмам памяти и большим скоростям, смогут скомпенсировать отсутствие параллельности и выйти на итоговые скорости работы даже более высокие, чем человеческий мозг. Вопрос только в правильной архитектуре.
Не разделяю вашего оптимизма. Предел однопоточной производительности железа уже достигнут и существенно не двигается уже десятилетие. Квантовые ПК - просто мечты (во всяком случае на данный момент). 100 млрд процессоров с частотой 10...100 Гц всяко быстрее одного потока 10 ГГц.
0 | 0
Аватар
offline
create
05:17 05.05.2021 №1037
cortl:
В теле нет других сигналов, кроме false/true
1. Если говорить про тело, то там помимо наличия/отсутствия сигнала есть есть куча всего - тормозящие/возбуждающие синапсы, нейромедиаторы, нейроглия, гормоны, РНК и т.п. Поэтому сводить всё к передаче импульса - это само по себе сильное загрубление. 2. Мы ведь отдаём себе отчёт в том, что последовательность булевых переменных, передаваемая в нейро-ткани с разной частотой, имеет разный смысл. Поэтому говорить о том, что в нервной системе передаётся bool - очевидно не точно. Точнее сказать, что в нервной системе int передаётся в единичной системе счисления. Грубо говоря, счёт ведётся "на палочках". Зачем счёт вести на палочках, если можно его вести на ноликах и единичках? Так быстрее и компактнее.
cortl:
100 млрд процессоров с частотой 10...100 Гц всяко быстрее одного потока 10 ГГц
Это верно. Но примите во внимание, что никогда эти 100 млрд процессоров не работают одновременно (это избыточно, энергозатратно и эпилепсия). Даже если за один когнитивный акт вовлекаются миллионы "процессоров" - это выглядит вполне оптимистично.
0 | 0
NA
create
06:38 05.05.2021 №1038
Prosolver, конечно, "тормозящие/возбуждающие синапсы, нейромедиаторы, нейроглия, гормоны, РНК и т.п." - без них никуда, но в сухом остатке это всего лишь бизнес-логика от которой зависит пойдёт bool дальше по цепи или нет. Думаю, никакой орган или нейрон не ведёт счёт сколько к нему пришло "палочек", всё происходит здесь и сейчас, в момент прихода очередного импульса в соответствии с бизнес-логикой. Например, это видно по вашей цитате из www.bio.bsu.by. "Но примите во внимание, что никогда эти 100 млрд процессоров не работают одновременно." Думаю, каждый из них работает непрерывно в диапазоне ппоизводительностей (0...100)% в соответствии со своей бизнес-логикой.
0 | 0
NA
create
13:25 05.05.2021 13:54 05.05.2021 №1039
Смешались в кучу кони, люди, сигнал, импульс, bool. Конечно, всё это разные вещи. В нервной ткани импульсы потому что долго поддерживать негативный, относительно нормального, потенциал затратно. Сигнал это нечто более глобальное. Bool-значение может быть с лёгкостью использовано в вычислительной технике (в триггере). Чем я, собственно, и воспользовался. Единственное, теперь меня гложет вопрос что лучше импульс или bool в триггере? Импульс нам подсказывает природа, но его можно легко протустить. Bool в триггере пропустить маловероятно, но будет ли он настолько же эффективен как импульс. Или AGI возможен только на импульсах? Пока нет ответа.
0 | 0
NA
write
14:31 05.05.2021 №1040
Внесу и свою лепту. Формат передачи данных от органов чувств (датчиков) на первичные поля - временные ряды (time series). Протокол - последовательность параллельных групп. Это примерно как взять сотню валютных пар с форекса и транслировать их ежесекундно в куда нибудь. Формат внутри ЦНС много сложнее. Там сплошные импульсно-амплитудно-пороговые гармонические функции с частотным кодированием. Такого формата сигналов за раз в ТАУ и близко не умеют рассматривать - только по частям. Или амплитудное кодирование или частотное или пороговое или импульсное или непрерывное или дискретное. Но не всё вместе за раз!
0 | 0
Аватар
NA
write
16:43 05.05.2021 №1041
Egg:
1. Формат может быть любым, он роли не играет, роль играет онтология, то есть описание формата, то есть метаданные. 2. Тип данных тоже может быть любым, до тех пор пока мы можем заниматься конвертацией типов. В качестве универсального типа я (в своей AGI системе) использую байтовые массивы. Они хорошо преобразуются к строкам и к целочисленным данным. В обработке изображений важен double, но он тоже конвертируется в byte array и обратно...
Тут не буду спорить. Всё формируется под внешним воздействием. По умолчанию нужно просто воспринимать хоть что-то полезное и хоть как-то использовать это. Потом можно формировать новые датчики, форматы и чего там ещё. Лишь бы и с ними можно было взаимодействовать
0 | 0
Аватар
NA
create
09:29 07.05.2021 12:25 07.05.2021 №1043
kondrat:
По умолчанию нужно просто воспринимать хоть что-то полезное и хоть как-то использовать это. Потом можно формировать новые датчики, форматы и чего там ещё. Лишь бы и с ними можно было взаимодействовать
Да, именно так. Тут самое главное понимать (разработчику, а не системе), что любой вход (параметризованный набор данных) - это уже модель. Данные в системе всегда существуют в виде модели. Конечно, это может быть вектор каких-то features или другая простая модель, когда ее метаописание неявно заложено в самом процессинге, на уровне хардкода... Но для задач AGI онтологию нужно обрабатывать в явном виде... (правда, там еще рекурсия есть, но это совсем тонкий вопрос)
0 | 0
1
2
Скачать
Вперёд

Главная Участники Жалобы  Поиск Исходный код О форуме