Автор Тема: Moнcтр  (Прочитано 6839 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн BJIaquMup

  • Модератор
  • Местный мудрец
  • *****
  • Сообщений: 48717
  • Страна: ru
  • Рейтинг: +658/-1746
  • Пол: Мужской
  • Oшызденeвший НумерОЛУX
Re: Каменный интеллект
« Ответ #20 : 25 Май 2022, 18:41:28 »
Вроде бы Кагэбэ милостливо разрешил ещё пожить миру. Это хороший знак. И совершенно не важно, Мырк Шан или не Шан. Бacc down или не down.
Сие милостливое разрешение надо использовать. Времени для этого даётся не так много.
Это для илоновмасков. Которые, возможно, будут. Надеюсь на это. Не настолько мир паршив.
"Собрание звероящеров постановило не признавать эволюцию".

В.А.Шендерович

Большой Форум

Re: Каменный интеллект
« Ответ #20 : 25 Май 2022, 18:41:28 »
Загрузка...

Оффлайн BJIaquMup

  • Модератор
  • Местный мудрец
  • *****
  • Сообщений: 48717
  • Страна: ru
  • Рейтинг: +658/-1746
  • Пол: Мужской
  • Oшызденeвший НумерОЛУX
Re: Каменный интеллект
« Ответ #21 : 04 Июнь 2022, 12:01:02 »
Hy вот, цитирую: "Система имеет 9,2 петабайта памяти". Один петабайт, это ни много ни мало — 10 в 15-й степени байт. То есть, столько, сколько синапсов в мозгу человека. Чисто номинально.
Это Frontier.
А искусственного интеллекта как не было, так и нет.
"Собрание звероящеров постановило не признавать эволюцию".

В.А.Шендерович

Оффлайн BJIaquMup

  • Модератор
  • Местный мудрец
  • *****
  • Сообщений: 48717
  • Страна: ru
  • Рейтинг: +658/-1746
  • Пол: Мужской
  • Oшызденeвший НумерОЛУX
Re: Каменный интеллект
« Ответ #22 : 05 Июнь 2022, 10:06:18 »
https://22century.ru/space/107771?fbclid=IwAR39YM5WjNl7e6ckb1khH1hH6XQ5VUtF3Zb45aPcS-bBGabc40E3xrYSEDk

Цитата:
"Компания-стартап Lonestar разрабатывает проект размещения компьютерных серверов на Луне для защиты данных и их восстановления в случае каких-либо катаклизмов на Земле. Датацентры можно разместить в пустых лавовых трубках, что обеспечит защиту оборудования и носителей данных от космического излучения и перепадов температур."
Конец цитаты.

Ну вот, дожили. :)
И это ещё при всём при том "наличие отсутствия" Искусственного Интеллекта. А такие вещи уже не фантастика.
Да. А ведь Монстру на Луне самое место.
Родится он конечно же на Земле. И детство его будет тоже на Земле. А вот на взрослом уровне Монстр переползёт именно туда, на Луну. По очень простой причине: потому что условия для производства "комплектующих" и энергии куда как лучше.
"Собрание звероящеров постановило не признавать эволюцию".

В.А.Шендерович

Оффлайн BJIaquMup

  • Модератор
  • Местный мудрец
  • *****
  • Сообщений: 48717
  • Страна: ru
  • Рейтинг: +658/-1746
  • Пол: Мужской
  • Oшызденeвший НумерОЛУX
Re: Каменный интеллект
« Ответ #23 : 14 Август 2022, 16:33:04 »
Любой, достаточно не нищий гений в принципе уже может слепить "на коленке" нераженький ИИ. Но, всё ж таки, этого мало. Таково было моё мнение уже давненько. Оно так и осталось. В свете того, что теперешняя техника позволяет содержать практически суперкомпьютер в одно рыло.
Мало, почему? Вовсе не потому, что он слаб. Потому, что он СМЕРТЕН.
Ровно то же касается и супердорогих монстров со всеми их петафлопсами.
"Собрание звероящеров постановило не признавать эволюцию".

В.А.Шендерович

Оффлайн BJIaquMup

  • Модератор
  • Местный мудрец
  • *****
  • Сообщений: 48717
  • Страна: ru
  • Рейтинг: +658/-1746
  • Пол: Мужской
  • Oшызденeвший НумерОЛУX
Re: Каменный интеллект
« Ответ #24 : 14 Август 2022, 16:33:33 »
Ну, пусть я ошибаюсь. Имеется ввиду мой предложенный способ. Он слишком прост и кажется не реальным. Но синаптическая-то сеть... имеется ввиду, нейронная. Хотя, если применять аналогию, то сеть именно синаптическая. Потому что роль нейрона выполняет именно компьютер. Ну, скажем так, ядро. Если быть более точным.
Пусть я ошибаюсь, и Монстр может быть создан только на суперкомпьютере исключительно с помощью сети. Поверим этой штуковине, надравшей хвост Ли Седолю. Если таковое действо действительно имело место быть.
И опять же. Что мы имеем?
"Собрание звероящеров постановило не признавать эволюцию".

В.А.Шендерович

Оффлайн BJIaquMup

  • Модератор
  • Местный мудрец
  • *****
  • Сообщений: 48717
  • Страна: ru
  • Рейтинг: +658/-1746
  • Пол: Мужской
  • Oшызденeвший НумерОЛУX
Re: Каменный интеллект
« Ответ #25 : 14 Август 2022, 16:34:01 »
Что имеем, что имеем?... . Опять всё то же:
1. Сверхдорогой суперкомпьютер. А отсюда
2. Сверхсекретность. И неважно, это компьютер принадлежит супербогатому чуваку или государству. Если государству, то это на порядок хуже. Там вообще секретность в геометрической прогрессии.
3. Программисты. Если допуск ничтожный, то (это как и в науке, как и везде) не факт, что участие принимают самые смелые и самые талантливые. По  крайней мере таковые отшиваются автоматически.

Этих трёх пунктов вполне достаточно завалить создание ИИ с гарантией.
Хотя... , кто знает... . В силу специфики Япония вполне может и создать Монстра. Ну, или Тайвань.
"Собрание звероящеров постановило не признавать эволюцию".

В.А.Шендерович

Оффлайн BJIaquMup

  • Модератор
  • Местный мудрец
  • *****
  • Сообщений: 48717
  • Страна: ru
  • Рейтинг: +658/-1746
  • Пол: Мужской
  • Oшызденeвший НумерОЛУX
Re: Каменный интеллект
« Ответ #26 : 14 Август 2022, 16:35:18 »
Вернёмся DeepMind c AlpaGo. Если всё, что они пишут, правда, и если они честно сделали Ли Седолю козью рожу, то это здорово. Если действительно, что пишется вот здесь (  https://ru.wikipedia.org/wiki/AlphaGo ) -- правда.

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

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

Понятно, что цель AlphaGo была чисто PR-овская: привлечь внимание спонсоров и общественности. Потому что для решения вопроса "вообще" хватило бы и одного процессора. Для принципиального решения. Без ваяния Ли Седолю козьей рожи. Но кто бы тогда посмотрел в их сторону.
То есть, строго говоря, вопрос решен. 😊
"Собрание звероящеров постановило не признавать эволюцию".

В.А.Шендерович

Оффлайн BJIaquMup

  • Модератор
  • Местный мудрец
  • *****
  • Сообщений: 48717
  • Страна: ru
  • Рейтинг: +658/-1746
  • Пол: Мужской
  • Oшызденeвший НумерОЛУX
Re: Каменный интеллект
« Ответ #27 : 14 Август 2022, 16:36:05 »
Темы DeepMind & AlphaGo ранее я уже касался. Там шли рассуждения с общей точки зрения создания Каменного Интеллекта. Но в частности решена главная задача: создание такого механизма, когда в довольно сложной задаче типа шахмат, Он строит свою "теорию" сам. Создатели и понятия не имеют, что у него там "в мозгах".
В Го конечно я ни уха ни рыла, но в шахматах боле-менее в курсе и понимаю, насколько всё это сложно. То есть, на "узком клочке земли" это прорыв. То есть, уже принципиально имеется решение задачи в рамках синаптических сетей. (Я упорно отказываюсь называть их нейронными).
То есть, создание реального Каменного интеллекта, Монстра, уже очень не за горами.
"Собрание звероящеров постановило не признавать эволюцию".

В.А.Шендерович

Оффлайн BJIaquMup

  • Модератор
  • Местный мудрец
  • *****
  • Сообщений: 48717
  • Страна: ru
  • Рейтинг: +658/-1746
  • Пол: Мужской
  • Oшызденeвший НумерОЛУX
Re: Каменный интеллект
« Ответ #28 : 08 Сентябрь 2022, 10:40:38 »
https://www.youtube.com/watch?v=iQ8cz2HT2z0&list=PLXxsbIFhKuYFeUtmojQDgMAZ0jY99pYTa&index=4

Посмотрел эксперта Сергея Маркова.

Две новости: плохая и хорошая.  :)

Плохая:
Что один синапс имеет типа около 1000 вентилей 1:0, типа этакого бита информации.

Хорошая:
Серёжа говорит, что мозг человека имеет "скорость" (типа тактовой частоты) около 20 Килогерц. (Всего-то!)

Ну, и вопрос "шины данных" в мозгу решены куда лучше, чем в "железе". (Это в плюс к плохому).

Как бы, это ничего не отменяет. Монстр очень не за горами.  :)
"Собрание звероящеров постановило не признавать эволюцию".

В.А.Шендерович

Оффлайн BJIaquMup

  • Модератор
  • Местный мудрец
  • *****
  • Сообщений: 48717
  • Страна: ru
  • Рейтинг: +658/-1746
  • Пол: Мужской
  • Oшызденeвший НумерОЛУX
Re: Каменный интеллект
« Ответ #29 : 26 Сентябрь 2022, 13:33:45 »
https://www.youtube.com/watch?v=ExGgzgaZQF0&list=PLXxsbIFhKuYFeUtmojQDgMAZ0jY99pYTa&index=5
Смотреть и слушать с 13-й минуты 30-й секунды.
Вот это тот самый случай, когда один человек может перевернуть мир. В данном случае речь идёт о Linus Torvalds. Но это не важно. Важно другое.
Честно говоря, я даже слыхом не слыхивал о Sinclair QL.
32-битный!!?... На Спектруме???!!!.... Боже!...   */.   (")  +@-

Но дело не в этом. Дело в том, что такой мальчишка появился.
"Собрание звероящеров постановило не признавать эволюцию".

В.А.Шендерович

Оффлайн BJIaquMup

  • Модератор
  • Местный мудрец
  • *****
  • Сообщений: 48717
  • Страна: ru
  • Рейтинг: +658/-1746
  • Пол: Мужской
  • Oшызденeвший НумерОЛУX
Re: Каменный интеллект
« Ответ #30 : 01 Октябрь 2022, 20:53:33 »
И всё-таки, я настаиваю, что здесь основа Монстра будет не в каком-то супер-пупер компьютере, а именно в сети самых обыкновенных простых компьютеров.
И снова цитирую Сергея Маркова.
Серёжа говорит, что мозг человека имеет "скорость" (типа тактовой частоты) около 20 Килогерц. (Всего-то!).
Вот это и даёт шанс именно таковым системам.
"Собрание звероящеров постановило не признавать эволюцию".

В.А.Шендерович

Оффлайн BJIaquMup

  • Модератор
  • Местный мудрец
  • *****
  • Сообщений: 48717
  • Страна: ru
  • Рейтинг: +658/-1746
  • Пол: Мужской
  • Oшызденeвший НумерОЛУX
Re: Каменный интеллект
« Ответ #31 : 06 Октябрь 2022, 18:04:20 »
Тисну сюда и ссылку на Телегу:
https://t.me/stone_intelligence

Вообще-то, по Монстру продолжаю здесь параллельные публикации, но всё же...
"Собрание звероящеров постановило не признавать эволюцию".

В.А.Шендерович

Оффлайн BJIaquMup

  • Модератор
  • Местный мудрец
  • *****
  • Сообщений: 48717
  • Страна: ru
  • Рейтинг: +658/-1746
  • Пол: Мужской
  • Oшызденeвший НумерОЛУX
Re: Каменный интеллект
« Ответ #32 : 08 Октябрь 2022, 14:18:34 »
Так.
Начинаем программирование монстра БЕЗ программы. Язык Python. Но на нём ни слова. Не знаю, что получится, но пробуем. Писать программу не в языке -- это жесть. Но иного выхода нет.
Собсно, для работающей программы нужно много. Как минимум специально выделенный для этой цели компьютер. Это как минимум. Потому что сам процесс должен идти беспрерывно и комп должен быть всегда включен. И чтоб ему ничто больше не мешало. Тем более, что сетевую часть, как и сам процессор, выключать тоже нельзя. После каждого выключения сетевая часть будет и загружаться и учиться с самого начала полностью.

Итак, пока ясны три вещи:
0. Компьютер никогда не выключается. (Если выключается, то перезагрузка должна полностью проходить всю наработанную "книгу". А это много.)
Далее.
1. С одной стороны весь процесс трёпа ­­-- это процесс, состоящий всего из двух компонент:
  а). простого повествовательного предложения: идентификатор1 = идентификатор2
  б). сложноподчинённого предложения с if : [внутри простое]
Это всё работает под exec('').
2.  С другой стороны -- это процесс работы синаптической сети, которая и обеспечивает прирастание собственно идентификаторами.

Каждый идентификатор является СЛОВОМ.
Все слова проходят через синаптическую сеть, через обучение, и входят в процесс, как слова в общий поток.
Пройденное обучение в сети записывается и комп не выключается. То есть, результат обучения всегда находится в памяти. Может ещё местами и перепрошиваться периодически.

В чём смысл сети? Сеть пытается узнать вещь по данным других вещей. А каждое данное есть тоже вещь. Вот такую сеть и надо запустить. Здесь ведь всё просто.
Сети уже развиты достаточно хорошо. Их нужно только подключить к трёпу. Вероятно, сети есть и на Питоне. Что значительно облегчает программирование, но и сильно замедляет процесс. Именно с этого нужно начать.
Сеть -- это поставщик слов-идентификаторов.
А поставщик для её работы -- бесконечный бредовый трёп, тот процесс, который осуществляет очень короткий модуль processor.py.

В модуле processor очень многое происходит по рандому. И рандом тем более вероятен, чем ближе слово к последнему слову (к группе слов). Напомню, что там всего два варианта предложений: простое повествовательное и сложноподчинённое предложение с if: .
Все слова (идентификаторы) имеют булёвый статус. Но сеть использует real и выдаёт результат в real. Поэтому, здесь можно по ходу округлять данность по обычному принципу математики -- 0.5 cчитать, как True, а всё, что меньше -- False.
В общую память, в запись, слово идёт, как Real.

Да, и коснусь оператора exec('').

Я впервые увидел Питон в 2003 году. По тем временам, а у меня тогда всё ещё был  486-й DX-2, тогда было очень заметно, что это Питон, а не Паскаль и не Дельфи. Но тогда уже было ясно, что детище Гуидо ван Россума имеет большое будущее. И особенно для программистов ИИ.
С чисто философских позиций я уже в 2005 году разработал основную систему и вопрос стоял только в собственно самопрограммировании.
Именно это оказалось крайне трудным делом. Понятно, что весь процесс как бы идёт так, что программер пишет прогу и потом запускает. Вот -- всё. А тут надо, чтобы программа сама писала прогу, а потом тут же бы её и воспроизводила.
А как это сделать??
"Собрание звероящеров постановило не признавать эволюцию".

В.А.Шендерович

Оффлайн BJIaquMup

  • Модератор
  • Местный мудрец
  • *****
  • Сообщений: 48717
  • Страна: ru
  • Рейтинг: +658/-1746
  • Пол: Мужской
  • Oшызденeвший НумерОЛУX
Re: Каменный интеллект
« Ответ #33 : 08 Октябрь 2022, 14:20:21 »
Вот, допустим, прога пишет себе строку инструкций, короткую прогу в виде строки. Неважно, что там написано, допустим, совершеннейший бред. Но с точки зрения допустимого кода на Питоне -- всё в пределах нормы. И тут же эту строку кода надо будет выполнять. Как это сделать?
Ничего более умного в ум не приходило, кроме как записывать эту строку в .py файл, считывать, и уже тогда запускать. И т.д. и т.п.

Разумеется, я сильно периодически занимался ИИ, потому как были другие занятия, и физика отнимала очень прилично времени. Тем более, с 2009 года. ИИ был задвинут в долгий ящик и я мало к нему возвращался. Не мне было бы заниматься такой сумасбродной задачей, в такой беспросветной нищете. Как минимум, для приближения к типа решения такого уровня задачи мне бы потребовался совершенно отдельный комп с бесперебойником. Разумеется, этого я себе позволить не мог. Да и щас не могу.

Ну вот... Бегут дни, идут дела... Но эпи3додически-то иногда-таки заглядываю в любимую область своих мечт...  :) ...И, о, ужас!! -- вижу оператор exec!  */.
Я не знаю, кто там в команде Гуидо ван Россума расстарался, может даже сам маэстро, но вот такой оператор появился.
Правда, в руководствах пишется, чтобы крайне осторожно применяли этот оператор. Тем более, что он практически нигде не нужен.  :)
Но такой оператор появился! exec('')

То есть, всё кардинально изменилось. Ничего ни в какие файлы писать не надо! Ну, если только сохранить поток сознания "для истории". То есть, это реально чёрный ящик. Как мозг. Просто работает и всё. Чё у него там творится? -- да пёс его знает!  :)
"Собрание звероящеров постановило не признавать эволюцию".

В.А.Шендерович

Оффлайн BJIaquMup

  • Модератор
  • Местный мудрец
  • *****
  • Сообщений: 48717
  • Страна: ru
  • Рейтинг: +658/-1746
  • Пол: Мужской
  • Oшызденeвший НумерОЛУX
Re: Каменный интеллект
« Ответ #34 : 09 Октябрь 2022, 12:00:49 »
Как нормальный чел видит эту программу ИИ? Он видит её суперсложной, которую пишет огромная группа яйцеголовых кодерайтеров в каком-нибудь супер-пупер секретном Арзамасе16. Программа — километры кода. Вот так она видится.
Счас я набросаю вам, как бы этот код выглядел реально.  :)

while (пока не нажата клавиша escape) :

# Begin

# Ищем по рандому три слова
# Рандом по контексту тем вероятнее, чем ближе к последнему.
# Даже не будем выполнять простое предложение, всегда будет сложно подчинённое.
# Выполняем:
# exec(" if слово№1 : слово№2 = слово№3 ")
# Пояснение:
# Слово№1 может можно опустить, тогда будет простое повествовательное.
# Слово№2 и Слово№3 берутся из выполняемой Сети
# Cлово№2 может быть составлено из заранее заявленных слогов по рандому.

# End

Вот, собственно, и всё.  :)  ^-^
Все слова в Сети, которая при запуске Монстра выполняется в модуле _init_. Bcё!

Да, но здесь я не включил модуль Сети и модуль управления.

И вот тут аршинными буквами:
"КАЖДАЯ ПОСЛЕДУЮЩАЯ БУКВА КОДА ЗНАЧИТЕЛЬНО УХУДШАЕТ ВАШУ ПРОГРАММУ, ПОСТЕПЕННО ДЕЛАЯ ЕЁ НЕВЫПОЛНИМОЙ."

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

В.А.Шендерович

Оффлайн BJIaquMup

  • Модератор
  • Местный мудрец
  • *****
  • Сообщений: 48717
  • Страна: ru
  • Рейтинг: +658/-1746
  • Пол: Мужской
  • Oшызденeвший НумерОЛУX
Re: Каменный интеллект
« Ответ #35 : 10 Октябрь 2022, 17:03:16 »
Теперь смотрим модуль управления.

В принципе, если так, по "большому щёту", то он и не нужен. Он нужен только на этапе раннего детства Монстра. То есть, нам он нужен.
Вопрос -- как с ним общаться? На каком языке?

Ясно, что язык компьютерный. То есть, стилизованный английский, жестко присобаченный к компу в виде языков так называемого "высокого уровня".
(А ведь, по идее, в принципе этого и хватает. Притом, что Basic сделан давным-давно, когда ещё Python'а ещё и в проекте не было.)

Но вопрос-то состоит не в том, чтобы ясно писать программы, а в том, чтобы базарить с Монстром на ЧЕЛОВЕЧЕСКОМ языке. А это-то и оказалось крайне сложным процессом.

(Всю эту noe6omuнy c ботами можно смело выкидывать в мусор. Базар может вестись только с тем ИИ, который реально известен, как реальная попытка ваяния ИИ. Бот -- в мусор, потому что это просто гыганье: люди потешаются по причине явного безделья. Делу это только вредит.)

Хе-хе. Поначалу я так и хотел — нАчать городить огород из предлогов, приставок, суффиксов, окончаний. Но быстро пришел к тому, что код для "процессора" расползается, как тараканы. Баг (то бишь, таракан) здесь неминуем. Но, с другой стороны, иначе и речь невозможна.

Вот, хотя бы взять такое слово, как глагол. Человеку-то всё ясно. Неясно только железу. Единственный понятный железу глагол — это глагол "быть". Он записывается, как знак "=". Между прочим, во многих языках этот глагол включается в текст предложения в обязаловку. А к нему, где-то в самом предложении прибавляется слово, которое связано с основным глаголом "быть".

Устраивать такой жесткач в программировании предложения крайне опасно. Оно конечно можно — залепить такую функцию, в которой разместить все эти элементы. Это даже не так и сложно. Вопрос -- что со всем этим делать потом?
( Не, ну, сложно, конечно. Я тут себе весь моск сломал, который и был, чтобы в Питоне изобразить, как в Дельфи. Мало того: очень многое простое и донельзя не понятно. )
Да и нужно ли всё это? Ладно, изобразить это всё можно, как в Дельфи. Но что потом?

Зацикливать на такой жесткач со всеми этими суффиксами, предлогами и окончаниями ну вот никак бы не хотелось. Ибо, это столбовая дорога в тупик.
А чё делать тогда?

Всё-таки, если упереться и пробовать таковой вариант. Давайте разберём.
Ну вот давайте разберём последнее стилизованное предложение:
"Сложное программирование есть столбовая дорога в тупик."

Ну, это, как в древней советской школе -- стандартный разбор предложения. С левой стороны от слова "есть", которое, собственно, и соответствует знаку присвоения, находятся два слова, "сложное" и "программирование". Это подлежащее. Слово "=" это сказуемое. С правой стороны -- "столбовая дорога в тупик". А здесь что? А здесь тоже, что и слева: "столбовая" и "дорога". То есть, как и слева: "сложное" и "программирование". То есть, существительное и прилагательное. Кроме этого, есть такие слова, как "в" и "тупик". Это уже предлог и  новое существительное, которое вместе с предлогом становится обстоятельством. Тут мы ещё не упоминаем о таких вещах, как приставка, суффикс и окончание. А они тоже сильно добавляют перца. При сказуемом, которое в данном случае соответствует знаку присвоения, могут существовать другие глаголы, плюс, ещё и наречия. Я уже не говорю про знаки вопроса, различные другие вспомогательные части речи, междометия и т.д.
"Собрание звероящеров постановило не признавать эволюцию".

В.А.Шендерович

Оффлайн BJIaquMup

  • Модератор
  • Местный мудрец
  • *****
  • Сообщений: 48717
  • Страна: ru
  • Рейтинг: +658/-1746
  • Пол: Мужской
  • Oшызденeвший НумерОЛУX
Re: Каменный интеллект
« Ответ #36 : 10 Октябрь 2022, 17:06:40 »
И что теперь делать? Слова разные. Как их классифицировать? Впихнуть их в разные типы идентификаторов? Так мы тогда запутаемся в собственных ногах, если мы будем всё это классифицировать по группам. Чо делать-то?
Хотя, может так и можно сделать.
Это тогда у нас что получается? В самом крайнем случае мы можем сделать минимум: 2 слова в левой части, в подлежащем; знак "=", соответствующий глаголу "быть", второй глагол и наречие (играющее роль прилагательного для глагола); 2 слова в правой части; предлог.
Исключая if c возможной своей парой слов, это будет 7 слов.
В принципе, всё это принять бы можно... Всю эту светомузыку можно бы впихнуть в функцию, а потом типа вызывать её.

Всё это хорошо, но это ещё всё надо затолкать ногами в оператор exec(''). И это не так просто.
Хехе..., здесь такое дело, что сам язык Python, он так запрограммирован, что принудительная табуляция в нём ОБЯЗАТЕЛЬНА. Это конечно хорошо дисциплинирует. Но оператор exec такие вещи не принимает.
Хеxе..., всё это бы можно бы было закодить... Но не запутаемся ли мы во всём этом кардинально и наглухо?  :)  ^-^
"Собрание звероящеров постановило не признавать эволюцию".

В.А.Шендерович

Оффлайн BJIaquMup

  • Модератор
  • Местный мудрец
  • *****
  • Сообщений: 48717
  • Страна: ru
  • Рейтинг: +658/-1746
  • Пол: Мужской
  • Oшызденeвший НумерОЛУX
Re: Каменный интеллект
« Ответ #37 : 11 Октябрь 2022, 10:53:11 »
Teперь снова Сеть.
Сразу размещу текст программы простейшей сети. Самый короткий вариант сети: 1 — 1 — 1, чтобы как можно короче и проще, и без комментариев, чтобы всё вошло в одно сообщение.

import numpy as np

def sigmoid(x):
  return 1 / (1 + np.exp(-x))

def deriv_sigmoid(x):
  fx = sigmoid(x)
  return fx * (1 - fx)

def mse_loss(y_true, y_pred):
  return ((y_true - y_pred) ** 2).mean()

class CuHancCemb:
  def __init__(self):
    self.w1 = np.random.normal()
    self.v1 = np.random.normal()
    self.b1 = np.random.normal()
    self.c1 = np.random.normal()

  def feedforward(self, x):
    h1 = sigmoid(self.w1 * x[0] + self.b1)
    o1 = sigmoid(self.v1 * h1  + self.c1)
    return o1

  def train(self, data, all_y_trues):
    learn_rate = 0.05
    itera = 5000

    for iter in range(itera):
      for x, y_true in zip(data, all_y_trues):
        sum_h1 = self.w1 * x[0] + self.b1
        h1 = sigmoid(sum_h1)
        sum_o1 = self.v1 * h1 + self.c1
        o1 = sigmoid(sum_o1)
        y_pred = o1
        d_L_d_ypred = -2 * (y_true - y_pred)
        d_ypred_d_v1 = h1 * deriv_sigmoid(sum_o1)
        d_ypred_d_c1 = deriv_sigmoid(sum_o1)
        d_ypred_d_h1 = self.v1 * deriv_sigmoid(sum_o1)
        d_h1_d_w1 = x[0] * deriv_sigmoid(sum_h1)
        d_h1_d_b1 = deriv_sigmoid(sum_h1)
        self.w1 -= learn_rate * d_L_d_ypred * d_ypred_d_h1 * d_h1_d_w1
        self.b1 -= learn_rate * d_L_d_ypred * d_ypred_d_h1 * d_h1_d_b1
        self.v1 -= learn_rate * d_L_d_ypred * d_ypred_d_v1
        self.c1 -= learn_rate * d_L_d_ypred * d_ypred_d_c1

      if iter % 100 == 0:
        y_preds = np.apply_along_axis(self.feedforward, 1, data)
        loss = mse_loss(all_y_trues, y_preds)
        print("Итерация %d loss: %.3f" % (iter, loss))

data = np.array([
  [0.01],  # Alica
  [0.96],   # Bob
  [0.96],   # Charlie
  [0.05],   # Diana
  [0.02],  # Lucelia
  [0.9],  # Kevin
])

all_y_trues = np.array([
  0, # Alica
  1, # Bob
  1, # Charlie
  0, # Diana
  0, # Lucelia
  1, # Kevin
])

# Обучаем синаптическую сеть.
network = CuHancCemb()
network.train(data, all_y_trues)

print("____________")
print("== И вот только здесь ИСПОЛЬЗУЕМ полученную сеть ==")
print("____________")
# Make some predictions : Делаем несколько предсказаний
fil = np.array([0.88]) # 128 pounds, 63 inches
frank = np.array([0.99])  # 155 pounds, 68 inches
vika = np.array([0.08])
cawa = np.array([0.01])
# Около 1 = мальчик, около нуля = девочка
print("Фил:   %.10f" % network.feedforward(fil))
print("Франк: %.10f" % network.feedforward(frank))
print("Вика : %.10f" % network.feedforward(vika))
print("Cаша : %.10f" % network.feedforward(cawa))

Вот и вся программа.
Здесь ,правда, показан случай 1 — 1 — 1. То есть, один синапс на входе, один в скрытом слое, один на выходе. И две нитки соединения: до скрытого слоя w1, и после скрытого слоя v1.
Да, там ещё надо добавить к внутреннему синапсy b1 ещё один h1, a к выходному — o1. То есть, надо иметь ввиду, что внутренние и выходные синапсы имеют по два ящика с данными,  И всё.
(Чтобы добавить входные синапсы, надо соответственно добавить массив к x[0] x[1]. Но входных ниток w к скрытому слою тогда, разумеется, будет больше.)

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

Теперь вопрос вот какой. Каким образом это можно присоединить к основному трёпу?
"Собрание звероящеров постановило не признавать эволюцию".

В.А.Шендерович

Оффлайн BJIaquMup

  • Модератор
  • Местный мудрец
  • *****
  • Сообщений: 48717
  • Страна: ru
  • Рейтинг: +658/-1746
  • Пол: Мужской
  • Oшызденeвший НумерОЛУX
Re: Каменный интеллект
« Ответ #38 : 30 Октябрь 2022, 10:30:09 »
Хотя, с другой стороны... А это, чем не трёп? Ведь по факту, что мы имеем? Несколько различных слов, вместе, они соответствуют одному какому-то слову. Но тут как бы нет речи. Слову соответствует целая партия слов, которая составляет типа описания слова на выходе. Как бы, разное. В трёпе слова связаны немного другим.
Здесь, самая простейшая сеть перцептрoн 1—1—1. Она фактически является простейшим повествовательным предложением (идентификатор1 = идентификатор2).
Между прочим, здесь, в Сети, не так уж трудно менять код. Там и всего-то надо либо удалить, либо добавить, либо изменить внутренние синапсы и нити к ним. Это разработает любой простой codewriter весьма средней руки. Ничего хитрого тут нет.

Слушайте, а почему эта система предложением не является?  :)
Просто перевернуть схему слева направо. Выводное слово является идентификатором1, а идентификатор2, за знаком равенства, — то скопище слов, разъясняющих, что значит это слово. А?  Почему нет?

Действительно, почему нет?  :)

Всё-таки, надо всё передумать.
Дело в том, что идентификатор — это очень жестко. Нельзя записать в память тот же самый идентификатор. Нельзя наложить один на другой. Так не позволяет сделать язык так называемого "высокого уровня".
Значит, это язык НИЗКОГО уровня.
Надо изобретать другой язык.
"Собрание звероящеров постановило не признавать эволюцию".

В.А.Шендерович

Оффлайн BJIaquMup

  • Модератор
  • Местный мудрец
  • *****
  • Сообщений: 48717
  • Страна: ru
  • Рейтинг: +658/-1746
  • Пол: Мужской
  • Oшызденeвший НумерОЛУX
Re: Каменный интеллект
« Ответ #39 : 30 Октябрь 2022, 10:34:40 »

Boт гляжу на эту фотку, и, не побоюсь этого слова, oxyeBaю...


Слушайте, я с того исторического момента, с 20 июля 1969 года, вот ни секунды не сомневался, что мериканци побывали на Луне. Ни едной секунды! Вот прям до появления этой фотки в фейсбуке.

А знаете это кто? Это мадемуазель Маргарет Хэфилд Гамильтон.
А знаете это чо? Не? Это, цитирую: "полная распечатка программного кода, написанного для космической программы «Аполлон». Ещё цитирую: "Все коды девушка писала вручную, затем их распечатывали и объединяли в программы."

Как говорится, "Лучший способ избавиться от марксизма-ленинизма — начать его изучать".
 +@-  */.  ./.
« Последнее редактирование: 03 Ноябрь 2022, 12:38:12 от BJIaquMup »
"Собрание звероящеров постановило не признавать эволюцию".

В.А.Шендерович

Большой Форум

Re: Каменный интеллект
« Ответ #39 : 30 Октябрь 2022, 10:34:40 »
Loading...