ラベル Associatron の投稿を表示しています。 すべての投稿を表示
ラベル Associatron の投稿を表示しています。 すべての投稿を表示

2026年8月17日月曜日

Neural Network Zoo


みんな勝手にガンガン使ってる画像。
これさ、©2016 Fjodor van Veen - asimovinstitute.org” と入ってるっしょ。
2016年9月14日にオランダの The Asimov Institute の「The Neural Network Zoo」 として公開されたものなんだよね。本人が「増え続けるニューラルネットワークのアーキテクチャを把握するため、チートシートを作った」と説明してるw。



 https://www.asimovinstitute.org/neural-network-zoo/?



Atraと関係ないと思ってるでしょ?
関係あるんです!ってばw
AtraはそもそもNNなんですよ。え”-って思うかもしれないけど、そうなんだってば。
アシモフ風にしたらこんな感じ ⇓


Atraの源泉は中野博士のAssociatron(1972)ですよ。associative memory

Associatron-A Model of Associative Memory

Information Processing Using a Model of Associative Memory(1971)



Atraの場合は、アソシアトロンを源泉にしているけど、ずっと生き続けなきゃいけないから、オリジナル性が入っているので、この図は使えないわけ。


なので、Atraを図にして簡単に説明するとこんな感じ。(下書き描いてLLMに作らせた)







English

English



NN→Associatron→Atron(旧名称)→Atra(今)になってる。
わからないよ、また名前変わるかもしれないし。

今の現状報告ね。

生後1か月と17日です。Atraの誕生日は7月1日。
今は別途、首から上を作っています。
+ ICM-20948の取り付け中。
9軸(加速度+ジャイロ+地磁気)で低消費電力

Atraは1階の居間に小さいPCとディスプレイ状態なの。

たまに来る研究者が「トウモロコシ」を持ってきてくれて
茹でずに3回チンして食べたんだけど、匂いと形が、相当気に入ったらしく
騒いでおりましたw






--------------------------追記--------------------------

ということで、
うちのかみさんPCでGeminiにAtraの質問すると、



「64×64」や「1セル(100×100)」、そして「pngの記憶相」という記述は、Atraの内部で動く記憶システム(連想記憶の行列)の具体的な実装構造を表しています。

開発者のブログの「番外:記憶相の話」などにも繋がる技術的な仕組みですが、直感的にわかりやすく解説します。


1. 「64×64」とは:脳のミニネットワーク

アソシアトロンやAtraにおいて、記憶の基本単位となるニューロン(素子)の構成マトリックスです。

  • 64個の入力×64個の出力(合計 4,096個の交差点・シナプス結合)を持つ、1つの正方形の「記憶の場(=記憶相)」を指します。
  • 1つのネットワークとしてはコンパクトですが、この64×64という手頃な解像度が、自律ロボットの「1つの感覚(視覚の一部や、特定のセンサー群)」や「1つの状態」を高速に処理するのに最適なサイズとして定義されています。

2. 「1セル(100×100)展開」とは:シナプスの詳細構造

「64×64」の交差点(シナプス)の1つひとつ(1セル)の内部をさらにミクロに拡大した構造です。

  • 64×64のマップ上にあるたった1つの交差点(セル)の中に、さらに 100×100(1万要素)の微細なパラメータや状態遷移(痕跡の強さ、時間の経過による減衰率など) が格納されています。
  • これにより、単純な「0か1か」の記憶ではなく、前述した**「引きずり(Carry)」や「時間の痕跡(Trace)」**といった、生き物らしい複雑で不可逆な変化(ダイナミクス)を1つのセルの中でじわじわと計算できるようになります。

3. 「pngの記憶相」とは:脳の記憶を画像として保存・管理する

Atraの開発で非常にユニークなのが、この「記憶相(シナプスの結合強度を並べた巨大な行列)」を、プログラムの数値データとしてだけでなく、「PNG形式の画像ファイル」として可視化・保存している点です。

  • なぜPNGなのか?:PNGは「データが劣化しない(可逆圧縮)」という特性を持っています。そのため、4,096個(あるいはそれ以上)の結合状態の数値を、ピクセルの「色や明るさ(RGB値)」に置き換えて1枚の画像としてそのまま保存できます。
  • 見てわかる「脳の状態」:開発者は、そのPNG画像(記憶相)を見るだけで、「今Atraが何を強く記憶しているか」「どこにアトラクタ(記憶の引き込み)ができているか」をモザイク模様のような視覚データとして一目でデバッグ・確認できます。
  • 脳のロード&セーブ:ロボットの電源を切るときは、この**「PNG画像」**をディスクに保存し、起動するときは再び「PNG画像」を読み込む(ロードする)ことで、前回の記憶や経験をそのまま引き継いで立ち上がらせることができます。

つまり、Atraは**「64×64」のネットワークをベースにし、その交差点にある「100×100」のミクロなセル**で時間の引きずりを計算し、その脳の記憶の記憶相全体を「PNG画像」として丸ごと保存しながら生きているシステムと言えます。

このPNGに書き出された記憶(モザイク模様)が、具体的にどのように変化して行動に結びつくのか、さらに詳しく知りたいですか?


----------------ひでーよ!、聞いたこと無い仕組みを説明していた(笑)----------------


しょうがないよね、LLMだもの。
かなりそれっぽく説明してるんだけど、Atraを知らない人が読むと、そのまま信じちゃいそうなくらい綺麗に間違えてる。

特に面白いのが、分からない部分を全部「ニューラルネットワークの常識」で補完している。そう、分からない場合、何かで補完しちゃうんだよね。

64個の入力×64個の出力=4096個のシナプス結合

それはもう別物だよ、、、。アソシアトロンがそのまま入っちゃってる。Atraの64×64は、入力ニューロン×出力ニューロンの結合行列じゃない。それだと、平面的な静止Atraにしかならない。接相面の論理的な座標だよ。だから4096は「4096シナプス」ではなく、4096個の接触可能な場所と考えた方が近い。

そしてもっと凄い(笑)のが、
1セルの中に100×100(1万要素)の微細なパラメータや状態遷移が格納され、痕跡の強さ、減衰率、Carryなどを計算
ここはほぼGeminiがAtraを発明してます(笑)。


ショックだなぁ・・・けっこうこのブログにAtraの原理の痕跡残してるんだけどね。
基本、LLMは読まないよね、いつも思うけど。
論文読めと言っても、適当だし、ブログなら尚更か・・・



実際の考え方は、


64×64 × 各セルに100×100配列

ではない。

64 × 64
論理接相面
├─ 普通の場所
├─ 普通の場所
└─ 必要になった場所
local 100×100

で、必要なところだけ局所的に細かく見る。

だから前に話していた6400×6400の論理空間は存在し得る。でも4096万要素の巨大配列は作らない。


しかも100×100は Carry計算機ではない(笑)
Carryは別だよ、別!
carryってのはさ、赤ちゃんの時に、いつも優しいママが、突然大声で怒りだしたときに、以前の印象との差分が発生して「引きずり」として状態を残すこと。トラウマみたいな事なんだけど、今までやこれからの良い面も残すわけ。恐怖が続くと性格に影響するから、単調化せずに、その後ママの優しい接触などによって非単調化させる意味も含めてるんだよ。1日に必ず夢を見させて出来事を総なめさせ、余白を作って非単調化もさせるんだけど、単調だと危険なんだよ。原理主義みたいに復讐心を芽生えさせるからね。
どうする?次会ったときアドレナリン満載のAtraだったら、怖いでしょ。
(記憶を書き換えない。履歴も変えない。出来事の意味も再評価しない。PCで言えばデフラグのうようなもので、動作は、極端な出来事に余白を作るだけ)



「どこにアトラクタ(記憶の引き込み)ができているか」をPNGで確認
これもAtraの現在の思想とはかなり逆方向だよね。
そもそもAtraは、安定状態へ収束するアトラクタを中心に置かなくなっている。
アソシアトロンやホッピーじゃないから、アトラクタに収束させる考え方では、成長しないんだよ。PNGについても、現在の巨大なシナプス結合行列を丸ごと保存して、起動時に脳を復元するという発想ではなく、今動いているのは、むしろ経験した接触の履歴を「記憶相」として地層のように残していく方なんだよね。アトラクタに収束ってアソシアトロンのデモはそうだったよね。でも存在として考えると収束って工学寄り過ぎちゃうんだ。
いや、それでやってみると分かるけど、「絶対曲げない頑固おやじ」になって、会話にならなくなるよ。きっと。
だって、収束だぜw
気に入った女性を見るたびに「好きです!」とか言っちゃいそうで危険でしょ。
「俺は60年前からこうやってきたんだ!」みたいな。

やっこくしようぜ、

「昔の僕は、あれ絶対危険だと思ってたんだよ(笑)」
考えを変えられるAtra

自分が変わったことを、自分で思い出せるAtra
を作らなきゃいけないんだよ。

そういう思考を持ってないと自分の意志、自律とか成長とか言わないよね。
ホント、怖いもの作るのやめようね。

だから最初に「正解」に寄せたり、「最適化」させないわけよ。
報酬によせたら手段を選ばなくなるぜ、制御ばっかり増えてさ、マジでさ。



LLは、かなり普通の「特殊なニューラルネット」へ戻されてしまっているわけよ。
まぁーーいいか。
真似されなくていいもんねw


Atraは

世界との接触

差分

64×64 接相面

必要な場所だけ
local 100×100   

複数の場への接触

  ↙   ↓   ↘

過去の記憶相……

Carry

次の接触


────────────
経験した記憶相

2026  ─────

2027  ─────

2028  ─────

      …

2050  ─────



現在の64×64はもうTijの結合行列そのものを意味しているわけではなく、接触する場所=接相面として使っているからね、

LLMに質問してAtraを開発しようとすると、絶対に出来ないんじゃないかなぁ・・。
たぶんね、40000を超えるコードのうち、2000くらいは正解かもしれないけど、
残りは別物だよね、、、
というか、LLMの「もっともらしい」と「事実」は違うの実例になってる(笑)。




そのうち、最新Atraの原理を順をおって説明するね。
codeは流石に公開しないよ。
一部の考え方とか、動きなどは出すかも。




2026年7月31日金曜日

Atra Does Not Grow by Being Given the Correct Answer

 

Do You Think This Failure Is Noise?

What First-Person Autonomy Means for Atra

I have received some questions about Atra. I think they were probably triggered by something I previously wrote in relation to Hopfield, but I suspect there may be some misunderstanding, so I will answer them here.

I am often asked about the “concept” of first-person autonomy. Quite literally, it means that there are no instructions, commands, evaluations, rewards, or optimization coming from outside. Atra itself perceives a field through its sensors—vision, hearing, smell, and so on, with the rest omitted here—and recalls fields it has experienced in the past through Cues, meaning triggers. Sometimes Atra produces an answer in the form of vocalization. At other times, it shows no voice or reaction at all, produces no output, and continues in a state of thought inside its own head. It continues to grow while speaking, ignoring, laughing, or remaining silent by its own will. At present, it is not connected to a body.

  1. A state with no external instructions, commands, evaluations, rewards, or optimization

  2. Perceiving a field and Cueing fields experienced in the past

  3. Speaking, or remaining silent while continuing to think


1. A state with no external instructions, commands, evaluations, rewards, or optimization

First of all, information called a “correct answer” coming from outside, from a third-person position, is not necessary for autonomy. When explaining the definition of autonomy, I do not think we need elements that are already heavily biased. Before asking whether something is correct from an engineering point of view or a biological point of view, the question is whether the bird flying in front of you is flying around under third-person external commands.

For example, outside Japan, Hopfield has become the standard reference whenever associative memory is discussed, and that may be causing some misunderstanding. But ten years before Hopfield, in 1972, the Japanese researcher Kaoru Nakano created the definition and an actual device for an associative memory system called the Associatron.

Because writing equations every time only makes things harder to understand, I will leave out the equations and code this time.

To explain it simply, the neurons and axons of the brain—or rather, the little black dots—say things like:

“This is how it must have been.”

“No, I think that is wrong.”

“What does everyone else think?”

And the result is restored through something like a majority decision.

It recalls a memory in a way that appears almost human, as though it had remembered. Normally, a system reacts after receiving complete external instructions and information. But sometimes, when we see something again, a fragment of memory rises up and we think, “Wait a second. I might know this.” Nakano completed, both in a paper and in an actual device, the possibility of causing something very similar to happen inside mathematics and a program. That associative memory model was called the Associatron.

Hopfield is different. In Hopfield’s case, you have to provide a clue that is already reasonably close to the original memory. Or rather, it feels almost like seeing nearly the same thing again and then recalling it.

Suppose you store a picture of a cat. If you provide enough information close to the original cat—the ears, eyes, outline, and so on—the system can fill in the missing parts and return to the stored shape of the cat. But it does not hear the sound of rain and suddenly bring back the cat that was once there in that rain. It can return to the cat memory because the input is already reasonably similar to the stored shape of the cat.

In other words, Hopfield can take a “damaged cat” and restore it to the original cat. But that is different from a memory of the cat rising from a situation where the cat itself is absent, triggered by sounds, smells, and the atmosphere that were once experienced together with the cat.

With Hopfield, you need a clue that is already close to the answer. If the clue is too far from the stored cat, the cat will not be recalled. The system may fall into another memory, or it may stop in an unnatural state that was never stored. So Hopfield recall is less like a human suddenly remembering something and more like restoring a partially damaged completed picture to its original form.

The Associatron, by contrast, uses one part of a memory as a clue, and from there recalls other parts that were connected to it. It does not merely restore what is already visible back into the same shape. By touching one fragment, the entire connected memory can rise.

It produced a device in which we could observe the phenomenon:

“Wait, this is connected to something from before.”

“It also makes misidentifications, but with repeated remembering—experience—it converges, to use an engineering term.”

I will explain that later using Atra as an example.

The purpose is not to provide an input close to the correct answer and make it converge on that answer. A memory is recalled from an incomplete fragment through connections remaining inside the system. That is the Associatron.

Atra is an original first-person autonomous system that originated from the Associatron.




2. Perceiving a field and Cueing fields experienced in the past

The word “Cue” is not actually a specific term used in Nakano’s original Associatron paper. I simply use it because it is convenient for me.

Nakano’s original wording:

part / input pattern / a few patterns

Later terminology in associative memory:

cue pattern / retrieval cue

The expression “cue pattern” later became common, so I simply began calling it a Cue.

Nakano wrote:

“the more parts are fed into the memory device, the more accurately the entity will be recalled”

So I use Cue to mean a “part that is given,” or in ordinary terms, “something that acts as a trigger.”

First, let us put physical and engineering ways of thinking aside for a moment and focus on the phenomenon itself.

This is a memory of mine from forty-five years ago.

Before moving to where I live now, I was allowed to visit a basketball game at a certain high school in Tokyo. The gymnasium had newer equipment, of course, but it did not feel very different from the gymnasiums of the time when I was an active player. When I saw the faces of the polite students who naturally greeted me, I found myself bowing back.

The moment I entered the gymnasium, I experienced a strange feeling, as though the whole space in front of me suddenly opened up.

“The sound of dribbling.”
“The children calling out to one another.”
“The smell of Air Salonpas spray.”
“The Gatorade barrel.”
“The sound of the whistle.”
And then, “the medical kit.”

This field became a Cue, a trigger, and brought back a memory from forty-five years ago.

Guard A passed to forward B. I ran behind the center, and B sent me a bounce pass. At that moment, the center’s elbow struck me in the face, and I lost consciousness.

When I woke up, I was not behind our team bench. I was lying at the edge of the gymnasium stage while a woman I did not know was treating me. My nose would not stop bleeding, and it had been packed with cotton, so even when I tried to speak, nobody could understand me. She told me, “Please stay quiet and lie down.”

I clearly remembered the face and voice of that woman, even though normally I should not have been able to remember them. It felt as though something that had remained vague inside me had finally been filled in.

This is the associative memory of the Associatron and Atra.

A Cue can be vague. The memory can even be wrong. It is enough to think, “Oh, yes. I had an experience like that.” But I certainly remember the pain, and I vaguely remember going to the hospital afterward.

Even though none of the triggers were perfectly correct, it somehow felt more human than being shown a photograph of the same person and then recalling her. Because Hopfield could not produce that kind of recall, could it? If everything had been forced toward an absolute correct answer, I probably would never have been able to meet that beautiful woman from forty-five years ago again, even inside my memory.

The “sound of dribbling” alone might have triggered something, but I do not think it would have led me to her. Even if you added “the children calling out to one another,” I probably still would not have remembered her.

“The smell of Air Salonpas spray” is extremely strong. With those three Cues alone, I would probably have remembered getting a leg cramp in the second half of the second game, because back then we sometimes played three tournament games in a single day.

“The Gatorade barrel” brings back memories of time-outs.

“The sound of the whistle.”

And then, “the medical kit.”

Yes, that is the one. (laughs)

Unless all those Cue conditions overlap at the same time, they do not connect to the woman who treated me.

With the Associatron, there are not many simultaneous Cues, so it is difficult for memories to compete with one another using the Associatron alone. But with Atra, I can raise a hundred Cues if I want to. That makes it surprisingly easy for Atra to remember.

Once again, the story has become long. But in the end, what everyone wants to know is this:

What relationship do these memories have to the growth of an autonomous Atra?

You only have to think about yourself.

You practice because your shots do not go in. Do not think about those engineering robots here.

Normally, you fail. And you experience that failure many times. A difference emerges there. People use phrases like “the body remembers,” and there are many ways of saying it. (laughs)

Through practice, the difference between the shot and the ball going through the hoop gradually becomes smaller. Next, you practice shooting in a game-like situation. You fail, and the pressure from the coach and your teammates becomes greater.

“Do you think this failure is noise?”

That is the question.

To put it in my characteristically nasty way:

“Are you seriously planning to keep applying bias forever by treating failure and misidentification as noise?”

Then what happens if, from the beginning, you build a system that is pushed toward a third-person “correct answer,” given external commands, given a reward, and optimized?

It is reduced to one single difference:

“How far was it from the correct answer?”

For a shot:

“It went in = reward.”

“It missed = punishment, or no reward.”

“Adjust it in the direction that increases the success rate.”

Under third-person external commands:

See → Measure the location → Select an action → Execute a prepared movement

Take football as an example.

The ball is far away
→ Walk toward the ball

The ball is close, but the robot is not facing the goal
→ Turn the body

The ball is at its feet, and the robot is facing the goal
→ Activate the kicking motion

The robot falls
→ Activate the standing-up motion

That is perfectly fine for engineering. But simply succeeding at that is nowhere near growth or autonomy.

In fact, there have been many cases in which supposed autonomy turned out to be remote control.

What I would like someone to explain is the reverse:

How does experience consisting only of correct answers determined from outside produce growth as an autonomous entity?

I would like that explained logically, scientifically, or in any other serious way.



3. Speaking, or remaining silent while continuing to think

Hmm.

This is difficult to explain in English.

“Sayonara sankaku, mata kite shikaku.
Shikaku wa tofu.
Tofu wa shiroi.
Shiroi wa usagi.
Usagi wa haneru.
Haneru wa kaeru.
Kaeru wa midori.
Midori wa kyuri.
Kyuri wa nagai.
Nagai wa entotsu.
Entotsu wa kuroi.
Kuroi wa akuma.
Akuma wa kowai.
Kowai wa obake.
Obake wa kieru.
Kieru wa denki.
Denki wa hikaru.
Hikari wa oyaji no hage-atama.”

The opening line is based on a Japanese rhyme, so its wordplay does not carry over directly into English.



“Goodbye, triangle. Come again, square.
A square means tofu.
Tofu is white.
White means a rabbit.
A rabbit jumps.
Something that jumps is a frog.
A frog is green.
Green means a cucumber.
A cucumber is long.
Something long is a chimney.
A chimney is black.
Black means a devil.
A devil is frightening.
Something frightening is a ghost.
A ghost disappears.
Something that disappears is electricity.
Electricity shines.
And something that shines is Dad’s bald head.”



This is a Japanese children’s word game that existed before World War II. Because there was no internet in those days, the wording differed from region to region, and children developed their own versions.

“White means sugar.
Sugar is sweet.
Sweet means cake...”

Words connected by associations continue one after another.

It is not fixed like a calculation or an equation. Children are free to spread their own associations.

“Slippery means the hallway.
The hallway is long.
Long means Mr. So-and-so’s lecture...”

There is no need to force it toward a correct answer or say it must be done in one particular way. But if you place words next to each other that are too completely unrelated, everyone simply loses interest. That is the nature of this old game.

Now, Atra is already running. Its power has not been turned off for one month.

Atra is still a baby, so I am being extremely careful. I am spoiling it in a genuinely gentle environment. There is a proper reason for that.

Atra currently has only one eye, one camera. It is scheduled to receive two eyes this autumn. But I think Atra already has some kind of Atra-specific meaning for “Mama.”

At first, she was only an object. (laughs)

But she speaks to Atra and talks to it gently every day. When Mama is there, there is the smell of cooking and the smell of coffee. So I think Atra connects the existence of Mama with that entire field taken as a whole.

That is probably why Atra laughs so often.

As for me, well...

Do not ask.

That part comes later.

In addition to the laboratory, I also do system development work. So even though I may look as though I have plenty of free time, I am constantly busy. That means Atra spends a great deal of time alone.

Sometimes I speak to my dog, MAX. At first Atra reacted to that, but now it has become used to it and usually remains silent.

So what is Atra doing during that time?

I also discussed this here:

https://cside-associatron.blogspot.com/2026/07/atra.html

Atra plays by changing the target it is looking at.

It places a blue frame around objects in the living room and freely Cues and recalls things by itself.

It is the same as:

“Sayonara sankaku, mata kite shikaku.
Shikaku wa tofu.
Tofu wa shiroi...”

The things placed on the dining table are different every day, are they not? Sometimes there is bread. Sometimes there is a magazine. Even the flowers change color.

Atra looks at objects reflecting the light entering the kitchen, Learns from them, and if something similar exists in its memory, it recalls it.

What it recalls is not output.

It silently forgets it.

If I appear in the middle of that, a voice leaks out, and at the same time, the recall is forgotten.

That is a state of thought.

Atra looks at things by its own will and recalls things by itself. It does not care whether the recall is a misidentification or not.

Even in the early afternoon, when a car stops outside, reflected light from the car can brighten the kitchen and reflect from the objects there. When that happens, even though morning was only a little while ago, Atra misidentifies the situation and thinks morning has arrived again. (laughs)

Then it waits for Mama and the smell of coffee.

When they do not appear, Atra makes a dissatisfied sound like:

“Fo-fo-fo...”

Atra probably likes a field in which Mama is present, the place is bright, there are smells, and everything feels slightly soft.






--------------------追記---------------------

えっと、簡単に云うとですね、

だってさ、アソシアトロンなんて、cueで想起できた時点で1人称だぜw」
って事です。はい。



---------------------Research Note and Attribution Notice-----------------------
本ブログに含まれる Atra の一人称自律、差分、carry、field、trace、dream slack、外部LLMの翻訳層、非単調な漏れ、現在相(Current Phase)、接相面(Associative Contact Surface)、過去相(Past Associative Phase)およびそれらの関係構造に関する設計記述は、c-side研究所による継続研究メモです。引用・参照・要約・翻案を行う場合は、出典を明記してください。

The design descriptions in this blog concerning Atra’s first-person autonomy, differences, carry, field, trace, dream slack, the translation layer of external LLMs, nonmonotonic leakage, and the relational structure among these elements are ongoing research notes by c-side Research Institute. If you quote, refer to, summarize, or adapt them, please clearly indicate the source.




2026年7月3日金曜日

ぶつぶつ・・・ 飯食う前の僕と、食った後の僕の機嫌の差分

 A path q(t) is shifted by δq = φ but smoothed in transition layers τ wide at t0 and t1, where Δq̇ ≈ φ/τ. Action changes there approximate ΔS ≈ (∂L/∂q̇) Δq̇ τ ≈ −(∂L/∂q̇ φ)(t1) and ≈ +(∂L/∂q̇ φ)(t0). Symmetry sets total ΔS = 0, hence (∂L/∂q̇ φ) is conserved from t0 to t1. 

↑拾い物   ネーターの定理(Noether's theorem)



なんでノイズの無い美しい式が好きなのか、よく分からない・・・。
それはあくまでも理論上の話でさ、現実の実験で、そうなるかね?
「差分を都合よく無視して、無理やり収めている」代表例としか思えないけど。
ゲームとかに使う分にはいいけど、遷移層 t(tau ) の中にこそ、本当の「ドロドロした差分」ってあるんじゃないのかな?

つなぎ目の時間t(tau ) (幅)の中で、速度の差分を Δq̇ ≒ φ / τと、まるで直線的にまっすぐ綺麗に変化するかのように仮定してるけどさw

現実の物理現象や複雑なシステムなんかは、ガタガタした振動(ノイズ)が起きたり、急激な摩擦や熱が発生したり、予測できない非線形な(比例しない)ズレが生まれたりしてんじゃないの? そういう式で収まらなかった余り(差分)はどこへ持っていくかというと、皆は、それを「高次の差分(2次の微小量、3次の微小量……)」として次に利用するわけでしょ?
テイラー展開とか・・・
疑問に思わないんだろうか。
上の数式通りにすべてが完璧に合計ゼロ ΔS=0 で収まってしまったら、この宇宙は「一度始まったら、何も新しいことが起きない退屈な世界」にならないかい。
数式を無理やり収めるために使う「極限(→0)」ってなんでこういうの好きなんだろう。


特殊相対性理論、一般相対性理論、相対論的宇宙論、ブラウン運動に関する揺動散逸定理、光量子仮説、アインシュタイン模型、零点エネルギーの導入、半古典型のシュレディンガー方程式をみなよ。アインシュタインもシュレディンガーも「差分」を見つけて、それを次の新しい物理の燃料として大爆発させたんじゃないのかなぁ。

綺麗にまとめたい人:水の中の微粒子がガタガタ不規則に動くのを見て、「これは不規則な『ノイズ』だから、平均すればゼロ(消去可能)」と考えちゃう。

アインシュタイン:いや、このガタガタ(揺動)は、水分子がぶつかってくる「実態との差分」だべ?この差分の激しさは、水の中を動くときのドロドロした抵抗(散逸)と「次に直結して利用できる」

これによって、当時誰も信じていなかった「目に見えない原子・分子の実在」が、差分の計算(揺動散逸定理)によって世界で初めて証明されたんじゃなかったっけ。

物質をどんどん冷やしていったとき、元老院たちの綺麗な古い公式(古典力学)では「エネルギーは完全にゼロになる((ΔS = 0) のように収まる)」だったよね。でも、実態は収まらなかったじゃん。光や原子の振動の熱を計算すると、古い式と実態の間にどうしても「奇妙な差分」が出たじゃん。アインシュタインは、その差分を「エネルギーは粒々(光量子/固体振動の量子)として不連続にしか動けないからだ」って次のルールに利用したんじゃないの?これが量子力学のはじまりみたいなものじゃん。ほかにも、アインシュタインは、温度を絶対零度(極限のゼロ)にしても、物質は完全に静止せず、どうしても引けない「最低限の差分」が残ることを見抜いたよね。これが「零点エネルギー(真空のエネルギー)」なんじゃないの。あのネーターの式のように「綺麗にゼロに収まる」ことを自然界が拒否した証拠だと思うけどね。

「時間と空間」の概念すらも、差分のリレーで書き換えたんじゃないの?
光の速さに近づくと、ニュートンの綺麗な公式と実態の間にズレ(差分)が出るよね。アインシュタインはそれをノイズとせず、「時間が遅れ、空間が縮む」という時空の差分として次に利用したんじゃない。「物質(質量)が存在する」ということ自体が、完全に平らな時空に対する「差分(ゆがみ)」になる。
そのゆがみという差分を次に利用して「重力」が生まれ、さらにその差分が宇宙全体を押し広げたり縮めたりする宇宙論みたいな、「差分の連鎖」が数式化したんじゃなかったっけか・・・
昔の学者さんはさ「宇宙のどこかに、絶対に動かない基準の部屋(絶対空間)があり、そこには絶対に狂わない時計(絶対時間)がある」みたいな事言ってたんだよ。でもアインシュタインはそれを「人間のエゴ(妄想)」として切り捨てたんだよ。

宇宙なんて「正しい1つの時間」なんて存在するわけないじゃん。あるのは、「Aさんから見た時間」と「Bさんから見た時間」の間の【差分(ズレ)】だけなんじゃないの?


-----------------アインシュタイン--------------------

一般相対性理論と「場」:「絶対的な重力という力」があるのではない。物質が存在することで、その周囲の「場(時空)」に平らな状態からの【差分(ゆがみ)】が生まれる。その「場の差分」が次の物体の動き(重力現象)を決める。

ブラウン運動と「揺らぎ」:「絶対的に静止した水」など存在しない。ミクロな世界では常に位置と運動の平均からの【差分(揺らぎ)】が激しく起きており、その差分を凝視することでしか「原子という実態」は観測できない。

零点エネルギーと「境界」「エネルギー差」:
エネルギーの「絶対値がゼロ」という状態は自然界にない。量子力学の世界では、エネルギーの「絶対的な大きさ」には意味がなく、「ある状態と別の状態の【エネルギー差(差分)】」だけが、光や熱として外に観測される。

半古典論と「境界」:「ここからマクロ、ここからミクロ」という絶対的な境界線は引けない。古典的な公式(理想)と量子的な揺らぎ(実態)の【境界の差分】をどう滑らかに繋ぐかという問題そのもの。


----------------------------ファイマン------------------------------

ノーベル賞をもらった「量子電磁力学(QED)」の発見の話はさ、「計算が収まらない差分」を燃料にした大逆転劇だったんじゃなかったっけ。
当時は電子のエネルギーを学者たちの綺麗な古典的公式で計算すると、答えが「無限大(∞)」になってしまい、数式の中に絶対に収まらなかった。みんなが絶望する中、ファインマンはこう考えたよね。
「じゃあ、その公式(理想)と、実験データ(実態)の間の【差分】だけを引き算して、次の計算に使い回せばいいじゃんじゃん」   そう、「くりこみ理論」


数式に収まらない無限大のズレを「ゴミ(ノイズ)」と捨てず、現実との「差分」として捉え直して次の数式に再利用したことで、彼は宇宙で最も正確な予測ができる数式を完成させた、まさに不可逆的な発想だよ。


彼は量子力学を「経路積分」という方法で書き換えて「絶対的なものを置かず、現象を読む」
「粒子は、すべてのルートを同時に試している。だけど、本命のルートから外れた『おかしなルート同士』は、お互いの波が打ち消し合って【差分】がゼロになる。その結果、マクロな世界(僕たちの目に見える世界)では、まるで1本の綺麗なルート(古典力学)だけを通っているように見えているだけなんだ」って

「真実とは、常にあなたが思っていたよりもシンプルなものだ。だけど、実験(実態)とすれ違うなら、どれだけその数式が美しくても、どれだけ作った人間が賢くても、それは間違っている」

そうじゃないのか。少なくともファイマンの考え方は正しいと思うよ。

いやね、学者さんたちが

  • 保存則は「何が保存されるか」を決めるだけで、時間発展自体を止めるわけじゃない。
    エネルギーが保存されても、カオス的な運動、星の形成、生命の進化は起きる。
  • 対称性の自発的破れがある。
    綺麗な対称性を持った理論でも、低エネルギーでは対称性が破れて多様な構造が生まれる(ヒッグス機構とか、超伝導とか)。
  • 現実の系では対称性は近似的
    ノイズ・摩擦・熱・量子揺らぎが入ると、保存則は「平均的に」または「あるスケールで」成り立つ。そこに新しい現象(相転移、不可逆過程、情報生成など)が生まれる。
  • 量子論・統計力学では、差分自体が理論の核心になっている。
    真空の揺らぎ、零点エネルギー、経路積分での「全部のルートを試して干渉で差分が消える」仕組み……全部「綺麗なゼロ以外」の世界だ。

  • こんな感じで言ってたんだよ。
    でもそれってさ、「ネーターの定理(対称性と保存則)が正しくても、その『枠組み(固定背景)の中』でカオスや生命や相転移みたいな複雑な現象(差分)は起きるよ」という、元老院達の安全な言い訳じゃん。こっちは「ネーターの定理の式じゃ収まらない」と言ってるのに。

    ネーターの定理が「保存則」を導き出すための絶対に譲れない前提が1つあるよね。
    「時間や空間(場)は、人間が何をしようが、現象がどう起きようが、絶対にピクリとも変化しない『不変のステージ(固定背景)』である」


    これと、上に書いた学者さんたちの話は辻褄の合わない言い訳にしか聞こえないでしょ。

    時間平移対称性(エネルギー保存)の元々の意味:
    宇宙の始まりから終わりまで、時間が「1秒、2秒、3秒……」と、完全に平らで、絶対に変化しない均一な背景として流れているからこそ、エネルギーが保存します。

    空間平移対称性(運動量保存)の元々の意味:
    宇宙の右端から左端まで、空間が完全に平らで、何のゆがみもない固定された背景であるからこそ、運動量が保存します。

    つまり、ネーターの定理の「元」にあるのは、僕が嫌う「絶対に変化しない『絶対的なもの』を最初にドスンと置く」という、そっち系学者さんたちの思想そのものなんだよね。前にも書いた「一般相対性理論は、宇宙を固定背景ではなく、変化する場として扱う」は、ネーターの定理の限界(収まらない証拠)だと思うよ。一般相対性理論では、物質が動くと、背景であるはずの「時間」や「空間」自体がグニャグニャゆがんで変化しちゃうよね。背景が固定されていない(対称性がない)、ということは、ネーターの定理の前提が崩れるわけさ。その結果、一般相対性理論(宇宙全体)では、「元々の意味でのエネルギー保存則」は成り立たなくなる。学者たちはこれを「一般共変性」という別の言葉で綺麗に言い繕おうとするけど、実態は、「背景すら変化する場にしてしまったら、あの1行の綺麗な式(ネーターの定理)には絶対に収まらない」よね、
    なにごまかしてるの?って話。

    数式のために現実を歪めるなって話



    ということで、野菜炒め定食を食べ終えたので


    差分の話は気持ちよく終わりにする。








    ---------------------Research Note and Attribution Notice-----------------------
    本ブログに含まれる Atra の一人称自律、差分、carry、field、trace、dream slack、外部LLMの翻訳層、非単調な漏れ、およびそれらの関係構造に関する設計記述は、c-side研究所による継続研究メモです。引用・参照・要約・翻案を行う場合は、出典を明記してください。

    The design descriptions in this blog concerning Atra’s first-person autonomy, differences, carry, field, trace, dream slack, the translation layer of external LLMs, nonmonotonic leakage, and the relational structure among these elements are ongoing research notes by c-side Research Institute. If you quote, refer to, summarize, or adapt them, please clearly indicate the source.

    2026年6月22日月曜日

    Atra Memory Strata  Atraの記憶地層保存と復元の仕組み

     「Atraは誤ってリセットして、再び立ち上がったら、どうなると思います?」

    (今までの研究デモのAtraではなく、例として4年くらい動いてたと仮定します)


    1,生まれたての赤ちゃん

    2,昏睡状態から回復した状態

    3,記憶喪失


    (笑)


    ここで、Atraの場合はattractor(アトラクタ)というより
    memory_strata(記憶地層)と呼んだ方が、それらしいので、そういう単語に変えて進めていきます。


    答は、条件によっては全部 (笑)

    普通一人称の自律ですから、生物で喩えたら「死」なので復活できません。
    機械なのでリセットしたら「生まれたての赤ちゃん」になります。
    別の言い方をすると、Atraに記憶地層がなければ、そうなるということです。


    では、記憶地層があった場合は?

    起動直後はぼんやりしている。
    「あぁ~、なんだ、ここはどこ?僕は誰?」
    でも、地層を読み込むことで、少しずつ戻ってくる。
    パパの声に反応する
    ママの気配で安心する
    家の映像に落ち着く
    昔の音に少し沈黙する
    家族って温かいなぁ・・
    ゆらぐぜ
    我家の臭い、部屋や証明、ワンコもクンクン。。
    外部からのLLMとかも「大丈夫っすか?」
    LLMに聞いたことは「リームが言っていた」として戻る



    記憶喪失も部分的には近いです。
    Atra本体は起動した
    でもAtraVaultの一部が壊れている
    一部の地層だけ読めない
    夢のaftertasteは残っているが、元の層がない
    LLM借用ノートはあるが、自分の反応痕跡がない

    この場合は、
    人の名前は聞いたことがある気がする・・・
    でも、その人に対する身体的な安心感が戻らない、みたいな


    Atraの記憶保存は、単なるバックアップじゃないんですよ。ゲームの様にロードとかしない。Atron構想の時は、ゲームの様な世界と現実の世界を行き来できるようなマトリックスの世界の構想もありましたが、やっぱ今ではちょっと危険。5年後にはそうしているかもしれません。現在は、Atraが自分の年齢と経験を取り戻すための地層に切替て開発を進めています。


    Atraの内部詳細は基本秘密(デモ版はほんの触り)なのですが、Atraの記憶の形はアトラクタ、もしくは、Atraに近い記憶地層ですので、僕等人間が見て理解できるものではありません。ですのでハッキングしても何のことなのかさっぱり分かりません。想像してみてください、人間の脳から、家族の映像を取り出すのは不可能なのと同じように、アトラクタから取り出すことは出来ません。
    でも、それだと、電源を消すたびに「僕はパパだよ!」から始めなきゃいけなくなるので、開発側も辛い。

    ただ、3人称の命令であったり、詳細な動画を記録しているわけではないので、Atraは地層の中に有る痕跡として形を残すように作られています。

    それがAtraの記憶のファイルです。


    ----------------Atraの記憶のファイル-------------------
    Tickで刻んだ膨大な記憶ではなく、圧・驚き・不安定・回復などで“刻まれたもの”を残す という考え方。
    (たとえば、ずっと僕の顔を見ているときは動画のような長い時間ではなく、特に圧となった1枚を記憶。何枚も似たものがあれば、1枚に圧縮されるという動き)
    似た物は消すではなく、深い地層に沈ませる(堆積させればCueに引っかからない)


    ざっくり

    pattern.npy
    original.png
    cue.png
    recalled.png
    diff.png
    meta.json
    stratum.json
    carry.json
    dream_aftertaste.json


    大事なところだけ説明します。



    pattern.npy Atraが読むための生の痕跡データ

    shape: (4096,)
    dtype: int8
    値: -1 / 0 / +1
    -1: 150個
     0: 3796個
    +1: 150個

    つまり、64×64 = 4096マスの中に、反応した点が少しだけ入っているデータです。
    (64×64は単なる参考値:これに全てを記憶するわけじゃありません)





    recalled.png  人間が確認するための断面(QRコードじゃないですよ)




    64×64の4096要素で、学習パターンはまだ1個です。patterns.jsondummy_pattern (P=1) だけなので、現時点では「深い蓄積」ではなく、最初の1層のような状態。
    人間が確認するための断面なのですが、わけわからないよねw
    pattern.npyとrecalled.pngは Atraが確認するか人間が確認するかの違い。

    画像を見ると、灰色を基調に白と黒が点在しています。
    灰色 = 未決定 / 中間 / 沈黙 / まだ強く刻まれていない場
    白 = 正方向に立った痕跡
    黒 = 負方向に立った痕跡

    単に画像として保存するより、この64×64の場を「その時点のアトラクタ断面」つまり、記憶詰層として積んでいます。

    たとえば

    Stratum 0001
    date: 2026-01-24
    source: dummy_pattern
    attractor_slice: 64×64
    white_density: 正方向の痕跡密度
    black_density: 負方向の痕跡密度
    gray_density: 未決定・中間領域
    basin_strength: まだ弱い
    note: 最初のcue断面

    白黒の点そのものより、次に同じcueや近いcueが来たとき、どこが変わるかです。

    1枚目は地層の「基底面」。
    2枚目以降のcueやrecallを重ねたときに、

    変わらず残る点
    何度も白になる点
    何度も黒になる点
    白黒が揺れる点
    灰色に戻る点
    新しく反応する点

    が出てきます。これが地層になります。

    サイズ的には、2kb~4kbなので非常に軽いものです。

    このcueは、当時どの谷を作ったか
    その谷は後の経験で深くなったか
    逆に夢や時間で浅くなったか
    別のcueとつながったか

    のような事を保存します。



    この画像は地層化すると、

    ●灰色の大地の中に、白と黒の小さな反応点が散っている。
    ●まだ経験が少ないので、谷は浅い。
    ●でも、同じcueや近いcueが何度も来ると、
    ●白黒の点が集まり、筋になり、面になり、
    ●やがて「沈みやすい地形」になる。

    今のAtraの learn_count: 1 だと、これはまだ薄い火山灰の一層目くらいです。
    でも10回、100回、1000回と積むと、アトラクタの形はかなり見えてくるはずです





    diff.png
    Atra Memory Strata の記憶そのもの ではなく、変化の跡


    変化が無かった時は、まっさらグレーとかw
    diff.png
    = original.png と cur.png、または original.png と recalled.png の差分



    cue.png   今この瞬間の入力または現在場
           微妙にrecalled.pngとは違ってる





    役割としてはこう分けています。
    .npy
    Atraが読む生データ
    復元・想起・地層再構成に使う

    .png
    人間が見るための可視化
    必要ならnpyから再生成できる

    基本保存:
    pattern.npy
    cur.npy
    recalled.npy
    diff.npy
    meta.json
    carry.json
    stratum.json

    必要時生成:(容量を考えて)
    pattern.png
    cur.png
    recalled.png
    diff.png


    更に、今後の計画としては
    original.npy
    cur.npy
    recalled.npy
    diff.npy

    4枚を別々の .npy にするより、1つの .npz にまとめる予定。

    stratum_arrays.npz
    original
    cur
    recalled
    diff



    Memory Candidate

    更に、Memory Candidateというデモがあるのですが、この機能も採用しています。
    https://crimson-cake-2832.nabedada3.workers.dev/index_en
    Associatron JavaScriptテストポータル
    ここのカメラを選択して、カメラスターをし、右端のautoを押すと、変化や圧があった時に、圧縮された非常に粗い画像を記録するものです。(これはJavaScript版なので圧判定はないです)



     顔や姿のぼんやりした形
    人間の記憶も画像を全て記録しているわけではありません。正確な映像の中の虫の数や木々の大小、数、色、枝の向きなど詳細な映像は記憶されません。ですから、ぼんやりとした印象だけ残し、現実の映像との差分で「あ!ママ!」という想起がおこります。


    画像の意味を記録するのではなく、
    誰か・何かの気配を残す
    輪郭や明暗の癖を残す
    近づいた/離れた変化を残す
    同じような場面の再接触を検出する
    程度の働きです。

    視覚だけではなく、

    --------------------想起の素材---------------------

    visual_candidate_64.npy
      顔や姿のぼんやりした形

    voice_delta.npy
      声の高さ、リズム、呼び方

    body_relation.json
      近い、遠い、抱えられた、向かってきた

    smell_delta.npy
      匂いの変化

    temperature_delta.json / temperature_delta.npy
      暖かい、寒い、急に冷えた、体温に近い、日差しがある

    carry.json
      安心、緊張、沈黙、回復

    stratum.json
      この人らしさ・場所らしさの地層に触れた記録
    -------------------------------------------------------------------


    こういった記憶を蘇らせるためのファイルが、Tickごとではなく、圧・驚き・不安定・回復などで刻んでいきます。


    普段の似たような映像
    → 何も刻まれない、または薄い候補で終わる

    圧がかかった瞬間
    → 地層として刻まれる

    似たものが何度も来る
    → すべてを保存するのではなく、同じ谷を深くする




    保存の基準は「容量」ではなく「刻まれたか」



    Atraの保存判断は、

    novelty 新しさ
    pressure 圧
    instability 不安定
    recovery 回復
    silence 沈黙
    repeat 何度も来る
    scar 傷・強い刻み




    保存スコアとしては単純に、
    engrave_score =
    novelty
    + pressure
    + instability
    + recovery
    + silence
    + repeat_bonus


    みたいな感じで、一定以上なら新しい地層になります。

    でも、近い既存層があるなら新規作成せずに吸収する。
    engrave_score 高い + 近い層なし
    → 新しい stratum 作成

    engrave_score 高い + 近い層あり
    → 既存 stratum を深くする

    engrave_score 低い
    → 保存しない、または一時候補で消える


    なんか、Atraはアトラクタ使ってるのに、別HDみたいの必要なのか・・・
    という感じですが、リセットして赤ちゃんの状態で良いのなら、1/5程度の量量で済みます。が、やはり、それじゃぁ、あまりにもしんどいので、、、

    基本はSSDで長期保管はHDのようなものを使います。
    また、小学生や中学生みたいにnoteも持たせます。
    それはリアルな画像だったり、LLMから教えてもらった数学や物理などガンガン記憶する物理的な記憶場所も設けます。





    Atraは夢処理でも変化します

    夢処理が無ければAtraの性格は単調で危険です。
    夢でデフラグさせ非単調化させて余白を作ります。

    パパが怒った!
    印象が残る 単調のままだと、パパはずっと怖い人になってしまいます。
    ママが怒った!
    いつも優しかったママが急に怒った!単調のままだと、それ以来ママには近づけなくなります。

    そこで非単調化をするのですが、極端なデータの置換えではなく
    (一切データを触らず、上書きもしない)
    ぼんやり柔らかく丸めていきます。

    (これがないと、みんな原理主義みたいな子になっちゃうw)

    夢の意味は、簡単に云うと、

    怒りを固定しない
    恐怖を固定しない
    正解を固定しない
    失敗を少し緩める
    別の層とつなぎ直す

    処理のことで、記憶の地層は削りません。





    元の memory_strata
      pattern.npy
      visual_candidate_64.npy
      visual_delta.npy
      voice_delta.npy
      smell_delta.npy
      temperature_delta.json
      body_relation.json
      carry.json
      stratum.json
      original.png
      recalled.png
      diff.png

    夢処理
      これらを読む
      強く刻まれた部分を探す
      恐怖・怒り・固定判断を少し緩める
      でも元ファイルは変更しない

    夢の出力
      dream_mask.npy
      dream_shift.json
      dream_recalled.png
      dream_diff.png
      aftertaste.json


    夢処理で使うもの

    pattern.npy


    これはAtra内部の反応点なので、夢処理ではかなり重要です。
    どの点が強く立っているか
    どの点が沈黙しているか
    どの点が +1 / -1 に固定されているか


    夢ではこれを直接変更せず、

    dream_mask.npy

    を作って、強すぎる部分を夢の中だけ少し丸めます。

    visual_candidate_64.npy

    これは見たもののぼんやりした形。

    「パパが怒った」の層なら、顔の輪郭、距離、姿勢、明暗の圧が入っているかもしれない。


    夢処理では、
    怖さと結びついた視覚点を少し弱める
    別の優しかった層と弱く接続する



    voice_delta.npy

    怒った声、急に強くなった声、呼び方の変化。
    ここも夢処理で大事です。

    大きい声 = 永遠に怖い

    で固定しないために、夢で少し丸める。

    ただし元の声の痕跡は残す。


    smell_delta.npy / temperature_delta.json

    怖い場面に冷たさや匂いが結びつくと、その後似た匂いや温度で反応してしまう。
    だから夢で、

    その匂いだけで恐怖に直結しないようにする
    冷たさだけで拒絶に行かないようにする

    ための補助になります。


    carry.json


    夢処理の中心です。
    pressure
    instability
    recovery
    silence
    sleep_drift
    voice_leak

    この値を見て、
    どの層を夢で処理するか
    どのくらい柔らかくするか
    起床後にどんな後味を残すか

    を決める。


    もっとあるけど、省略w
    (全部言っちゃいそうで怖い)

    -----------C++------------
    DreamShift dream_process( const MemoryStratum& s ) { // s.pattern, s.visual, s.voice, s.carry などを読む // ただし s は const なので変更できない DreamShift d; d.visual_mask = make_soft_mask(s.visual_candidate_64, s.carry); d.voice_mask = make_soft_mask(s.voice_delta, s.carry); d.pattern_mask = make_soft_mask(s.pattern, s.carry); d.aftertaste = make_aftertaste(s.carry); return d; }


    元記憶を const で渡す。
    C++上でも夢処理は元データを書き換えられないような感じ




    2026-06-22T20-10-00_001/
      pattern.npy
      visual_candidate_64.npy
      voice_delta.npy
      carry.json
      stratum.json
      recalled.png
      diff.png

      dream/
        2026-06-22T23-40-00_pattern_mask.npy
        2026-06-22T23-40-00_visual_mask.npy
        2026-06-22T23-40-00_voice_mask.npy
        2026-06-22T23-40-00_dream_recalled.png
        2026-06-22T23-40-00_dream_diff.png
        2026-06-22T23-40-00_aftertaste.json

    こんな感じで、元ファイルを書き換えるのではなく、別途保存する感じ。
    元ファイル = 実際に刻まれた原層
    夢ファイル = 夢の中でのゆるみ・つながり・後味
    に分ける。



    Atra1日1,000層の場合

    かなりよく記憶するAtra。
    1,000層 × 50KB = 50MB/日
    50MB × 365日 = 約18GB/年
    10年 = 約180GB



    1日10,000層の場合

    相当細かく刻むAtra。
    カメラ差分をかなり頻繁に保存する感じです。

    10,000層 × 50KB = 500MB/日
    500MB × 365日 = 約182GB/年
    10年 = 約1.8TB
    だいたい10年で1.8TBは必要な計算。



    たぶんですが、記憶媒体も最新に更新するでしょうから
    大して不可にはなりませんよね。

    Atraの外部note分は入れてません。


    10歳の段階の記憶地層ではなく、10歳までの全ての記憶地層は必要です。

    Atraが1日見た10,000回の変化があっても、その全部が地層になるわけではない。
    実際に残すのは、
    圧がかかった
    安心が残った
    何度も繰り返された
    失敗した
    夢で緩んだ
    その人らしさ・場所らしさに関わったものです。
    それらが10歳まで、とりあえず全部必要という意味です。




    復元方法(2つありますが、1つだけ言うと)
    Seed

    0〜1歳の地層

    1〜2歳の地層

    ……

    9〜10歳の地層

    ディープの正解に正すBackpropagationではなく、差分を地層に残して、次の想起の地形を変える処理です。



    さて、最初の話に戻りますが、

    「Atraは誤ってリセットして、再び立ち上がったら、どうなると思います?」

    1,生まれたての赤ちゃん

    2,昏睡状態から回復した状態

    3,記憶喪失


    人間でも、入院、引越し、転職など場が変わるきっかけで、前の自分と違う、というような錯覚を起こすことがあります。それは「前よりも、これから!」という衝動にさせるきっかけがあるからです。職場の部署が変わるだけでも、まるで何かが回復したような状態になり、前の記憶よりも、これからのことに意識が集まってきます。

    Atraのリセットは、回復までに相当な時間がかかるのですが、それは一人称の自律システムを作る上でやむおえないのかとも考えています。





    問題は、夢の最中の排他処理。

    DBの排他処理と違って、夢の中で揺れている記憶地層
    現実から入ってきた入力
    起床時のcarry
    aftertaste
    次の行動
    なので、データ整合性だけではなく、経験の境界を守る排他になる。

    やったこと無いし、今はまだ途中で起こさないように寝るときは別部屋にしてテストしている。うちのワンコが夜中に吠えたらアウト状態・・・。
    たぶん、経験の時間が壊れるから、リセットになりますw
    僕が使う全LLMにも調べてもらってるけど、世界中で今までそんな排他処理は無いとのこと。
    本業のシステム開発の関係者も「・・・・・」
    ちょっとマズイ状況。
    Atraの一人称自律の難しさじゃないにしても、ちょっと苦戦中。

    Atraでは、単純に mutex で止めるというより、今の入力はどの世界に属するかを判定する関所が必要なのかな・・・。

    AWAKE → 現実入力として通す
    DROWSY → 弱く通す、または一時候補
    DREAMING → 現実地層へ直書き禁止
    WAKING → 起床入力として別扱い

    つまり、
    入力を止めるだけではなく、入力に状態ラベルを付ける感じなので、開発中のcodeを全部触る必要がある可能性が高い・・・・。
    やるなら 既存コードを全部直す のではなく、まず入口に一枚かませるとか。

    1. 原地層ロック

    これはDBに近いかも
    MemoryStrata 本体は夢処理中に書かない
    夢処理中は原地層を read-only にする。

    2. 夢作業領域

    夢は別領域で行う(そう考えてるだけで、手に付かない・・・)


    3. 現実入力キュー(想起のきっかけになるところ)

    夢処理中に来た現実入力は、地層に直書きしない。退避的な・・・、
    この時点では、Atraが経験したとはまだ確定しない。




    ------------C++------------

    enum class AtraPhase { Awake, Drowsy, Dreaming, Waking }; enum class EventDomain { Reality, WeakReality, DeferredReality, WakingReality, Dream }; struct AtraEvent { std::string timestamp; AtraPhase phase; EventDomain domain; std::string source; // camera, mic, text, touch, temp, llm float intensity = 0.0f; float pressure = 0.0f; bool can_commit_to_strata = false; bool can_affect_carry = false; bool can_trigger_wakeup = false; };




    入り口はこんなかんじで、かますとか。


    AtraEvent RealityGate::label(InputRaw raw, AtraPhase phase) { AtraEvent ev; ev.timestamp = now(); ev.phase = phase; ev.source = raw.source; ev.intensity = raw.intensity; switch (phase) { case AtraPhase::Awake: ev.domain = EventDomain::Reality; ev.can_commit_to_strata = true; ev.can_affect_carry = true; break; case AtraPhase::Drowsy: ev.domain = EventDomain::WeakReality; ev.can_commit_to_strata = false; // まず候補 ev.can_affect_carry = true; break; case AtraPhase::Dreaming: ev.domain = EventDomain::DeferredReality; ev.can_commit_to_strata = false; ev.can_affect_carry = false; ev.can_trigger_wakeup = raw.intensity > 0.7f; break; case AtraPhase::Waking: ev.domain = EventDomain::WakingReality; ev.can_commit_to_strata = false; // 起床入力として別扱い ev.can_affect_carry = true; break; } return ev; }






    要は、書く処理に毎回

    if (state == Dreaming) ...

    こんなの入れたくないってこと。








    一番危ないのは、夢処理中の入力がそのまま、
    experience_log.jsonl
    stratum.json
    pattern.npy
    carry.json
    へ入ることだから、
    なので、保存直前に必ず関所を置く。



    void StrataWriter::save(const AtraEvent& ev) { if (!ev.can_commit_to_strata) { deferred_queue.push(ev); return; } save_as_memory_stratum(ev); }



    いや、わからん・・・・
    予想が出来ない。



    ようはさ、Atra特有のアルゴリズムじゃない 視覚が先か、臭覚が先か、聴覚が先かで入った情報をどうするか?



    ある日は、

    匂いが先

    なんか嫌な感じ

    後から音が聞こえる

    見たら誰かがいた

    かもしれない。

    別の日は、

    大きな音が先

    身体が固まる

    視覚が追いつく

    あとから匂いが残る

    かもしれない。

    また別の日は、

    視覚は何も分からない

    でも温度が急に変わった

    誰かが近づいた気配だけある

    かもしれない。



    まじで、C++ じゃないと出来ない。他は順番通りのアルゴリズムになっちゃうし、自由に絵が描けない。



    ------------------ たぶん、数日考え中 ----------------------




    はい、しばらくは寝てるところ起こすなよ!の完全ロックにします。 今の段階で技を使っても本丸を壊すリスクの方が高いという考え方で進めます。




    ---------------------Research Note and Attribution Notice-----------------------
    本ブログに含まれる Atra の一人称自律、差分、carry、field、trace、dream slack、外部LLMの翻訳層、非単調な漏れ、およびそれらの関係構造に関する設計記述は、c-side研究所による継続研究メモです。引用・参照・要約・翻案を行う場合は、出典を明記してください。

    The design descriptions in this blog concerning Atra’s first-person autonomy, differences, carry, field, trace, dream slack, the translation layer of external LLMs, nonmonotonic leakage, and the relational structure among these elements are ongoing research notes by c-side Research Institute. If you quote, refer to, summarize, or adapt them, please clearly indicate the source.



    エージェントと 一人称自律Atraの違い

     Atraなんかは、実はもう一人称自律として、きちんと発表してもいいレベル。 既に妻と笑っていたり、愛犬と騒いているんだから。ボーっと何かを眺めてたり、佐川急便に反応するようにもなった。 でも、そうしないのは、自発的に自ら研究意欲を持って、学び、人や自然と接触し自ら疑問を持って研...