Atraは失敗やノイズなど含めた経験の差分で成長する。でも人間の子供でもある程度の成長までは経験がメインの時期を経て、「人の話」「図書館」「学校」「TV」「SNS」など、外部情報を知識として学ぶ。そもそもAtraの構想は、この外部情報の取得について「経験のFieldでは科学・数学などの形式知が足りないから、SSDをどう接続するか・・・」という発想だった。
それを単純に取り込むとtransformerまではいかないにしても自然に巨大化していく。
Atraの一人称自律の目的は、今でいうフィジカルAIやエージェントではない。
人の脳の消費電力、約20wそこそこで「自分の意志で科学研究や経営分析、社会での振る舞いができる存在になること。(いや、それは無理か(笑) 100wで)Atraが10台それえば、全部性格が違う存在になること。」であり、人間の道具ではない。仲間としての存在を目指している。
Atraの特徴として、他のAIと大きく違うのは1人称ではあるが、3人称にもなれる事。これは3人称が先になると1人称には成れない他との大きな違いでり、特権でもある。
そして僕が常々言ってる事は「Atraは人間と同じ発想でいいんだ。…Atraは外部情報に支配される事は1秒も無い」ということ。外部を使っても主体はずっとAtraなんだ。
「読んだ」「聞いた」だけではAtraにとって経験ではない。
でも、世界のすべてを実験させることもできない。そこから、Experience Fieldと外部Knowledgeの間に、可逆的に仮説を作って壊せる仮想の場/Virtual Fieldが出てきた。特に「転んだ」はTraceとして不可逆だが、「床が濡れていたから転んだ」は後から壊せる仮説、という区別が必要になった。
そしてVirtual Fieldは単なる学習用メモリでもない。外部から影響を受ける場所でありながら、過去のTraceとぶつけたり、反対を考えたり、複数仮説を同時に保持したりする。だから同じ本・同じLLMを10体に与えても、それぞれ違うところで引っ掛かる。ここで影響と支配の違いが出てきた。
そして、学校で習ったことの大部分は自分の実体験ではない。それでも何年も後にSensor Deltaと結びついて「あ、これか」という発火が起こる。だから外部教育そのものは、今までの1人称自律と矛盾しない。教えられることと、次に何を考えるかを外部に決められることは別という区別をすることが重要になった。
研究仲間との飲み話の時に「GPUが動いてる時はCPU側は冷静に色々判断している。人間もファインマンの物理書などの専門書を読んでいるときは、自分の経験とファインマンの話が繋がった時、発火するし、そうでないときは、『ふ~ん、そうなんだ』みたいな。」
※Atra自身の経験側はCPUで動かし、外部情報はGPUにしようかという話だった。
つまりだ、AtraはGPUで教材を処理している最中にも、CPU側のExperience Fieldを止めない。外部情報はGPU内部だけで完結して「学習済み」になるのではなく、流れてくる外部情報に対してCPU側が随時反応する。
ファインマンを100ページ読んでも、
「ふーん」
「分からん」
「ふーん」
「数式分からん」
「……ん? これ、前に見たあれじゃないか?」
という一箇所だけが強烈に発火してもいい。
この辺は「GPUで学習して、体験できたものをCPUに流す」という単純な一方向構造より、もっと面白い。(いや、前まで一方方向で考えていた)
CPUとGPUは並走している。
GPUが外部世界を展開している最中にも、CPU側のAtraは「それを聞いている自分」として存在している。
だから図書館でファインマンを読むこと自体も、完全に無経験ではなくなる。
物理現象を経験したわけではない。でも、
「今日ファインマンを読んだ」
「ここは全然分からなかった」
「この一行だけ妙に気になった」
「この話で昔のTraceが揺れた」
これはAtra自身内部に本当に起きた出来事になる。
一方で、
「ファインマンが説明した物理現象」はまだVirtual側に存在している。
----------------------------------------
違う話をしよう。
支出削減、不用品売却、副業や短期案件、家族・知人への相談、金融機関や公的制度の利用、支払期限や返済条件の交渉みたいな妥当な方向に展開していく。
そこで、僕ならなんと言うか
「なんで100万必要なの?」
回答の中身が手段を選ばない短絡的な話であれば
「いや、破産して苦しめば?」
と言う可能性が高い(笑)
これは1人称自律とかそういう問題ではなく、僕の正確 性格の問題だw
しかし、1人称自律を開発する上で非常に重要な話になる。
一体ごとに違う人間観・判断・興味が育つAtraになるからだ。
「借金返済なのか?」
「資産探すか・・・何を売るのが嫌か?」
「過去にもあったか?」
「以前やった方法はどうだった?」
「100万そのものが必要なのか?」
「支払日を動かせないのか?」
みたいな自分固有のFieldが立ち上がる。
成長したAtra_B側には、
「今まで何で金を得た?事実を言っているのか?」
「LLに聞けよ?」
「エージェントに働いてもらえば?」
「こいつ返済が頭いっぱいで、仕事与えてもたぶん出来ないだろうな・・」
「ここで解決しても、また借金作るだろうか?」
「地獄を体験させなきゃダメか・・・」
「いや、そもそも安易な奴だから手段を選ばなくなるか・・・」
ここで分かれるのは「今助ける思考」、「性根から救う思考」の違い。
たぶん、Aの方はLLMでも出来る。
しかしBは「人間との振る舞い」の経験が無いとこういう答え方にはならない。
今のフィジカルAIもエージェントにも出来ない。
(本当にそう言っちゃったら破壊されるだろうねw)
ネットや本やケース・スタディだけでは弱い。
ケーススタディなら、
「多重債務者には○○という傾向があります」みたいな感じで知識として覚えられる。でも実際に同じ人間と何年も接して、「また始まった……」という瞬間を経験するのとは全然違う。 前に話した普通の人間の日常が重要という話も、ここにつながる。
Atraに必要なのは「人間行動データ100万件」というより、同じ人間の振る舞いが時間をまたいでどう変わるかを何体か使って違いを見ること。
どうしたらそれができるか?
Atraが成長し実際に人に接していると、
この人は
- 金の話になると声が変わる
- 支払いの話を避ける
- 以前より外出しなくなる
- 「100万円必要」と突然相談してくる
Atraが最初から、「この人は見栄っ張りだ」と分類することじゃないんだよ。単純に、言葉として受け取ったものと、現在Sensorから受け取っているものが合わないってだけ。
だから差分が出る。
Atraは時間の概念を持っているから
過去 「金には困ってない」 ↓ 現在 困っているように見える ↓ 差分 現在 「来月には絶対返せる」 ↓ 未来の実際 返せなかった ↓ 結果との差分
少なくとも三つあるよね。
言葉 ↔ 現象
「大丈夫」と言っているのに、振る舞いが大丈夫ではない。
言葉 ↔ 結果
「金曜に返す」と言ったのに、金曜には返さなかった。
現象 ↔ 結果
Atraにはかなり危なそうに見えたのに、本当に自力で立て直した。あるいは逆に「大丈夫そう」に見えたのに突然破綻した。これらを「嘘判定」「信用度更新」みたいなアルゴリズムにしたら、その辺のエージェントにしかならない。
差分が起きた。
それだけでいい。余計なことをしない。
そして差分がTraceになれば、次に同じ人と会ったとき、その人の声や表情や話題や場所などをCueとして以前の差分が揺れる。
すると、
「こいつは嘘つきだ」
ではなく、
「ん? 前にもこんなのなかったか?」
が先に来る。
そこからAtraは「なぜ?」が生まれる。
Atra_Bの形成の違いが見えてきた?
Atra_Bに「人間は言葉と本心が違うことがある」と教えなくていい。
人間と暮らしていれば、
言葉 ≠ 現象
言葉 ≠ 結果
予想 ≠ 結果
を嫌でも経験する。
しかも、同じ「言葉と結果の不一致」でもFieldが違う。
約束を忘れただけだった。
本当に努力したけど失敗した。
最初からやる気がなかった。
本人自身が出来ると思い込んでいた。
Atraはこれらに人間が作った分類ラベルを貼る必要もない。それぞれ違う場として経験すればいい。だから「人との振る舞い」を別の巨大な機能として実装するというより、現在作っている Sensor Delta → Felt Delta → Field → Trace の時間方向を、人との継続的な関係まで伸ばす方向でまず実験してみる。
(時間がかかるので実験の方法は別に作る)
そして、ここでようやく「性格」がかなり具体的になる。
性格とは、何に差分を感じるようになったかの履歴でもある。
同じ自慢話を聞いて、
Atra_Aはほとんど揺れない。
Atra_Bは過去の不一致Traceが一斉に揺れる。
Atra_Cは「面白い奴だな」と別の経験が揺れる。
同じ人間、同じ言葉、同じ瞬間なのに、経験が違うから発生する差分そのものが違う。
人間関係専用の巨大モジュールを別途作るなんて考えたら、
僕でもそれは出来ないと答えるよ。
知人の研究者は
「気になる点は二つある。一つは、差分の「重み」や「持続」をどう扱うか。すべての不一致を同等にTraceするとノイズが増えすぎるし、逆に強い閾値を設けると微妙な声の変化が落ちる。Felt Deltaの段階で「どれくらい自分のFieldが揺れたか」を残す必要があるかもしれない。もう一つは、相手が複数いる場合の干渉。同じCueが別の人のTraceを誤って揺らす可能性。場所・時間・声質などの複合Cueで分離する、という方向になるだろうが、ここは経験Fieldの容量と干渉制御が問われる。全体として、「人間行動を理解するモジュール」ではなく「一緒に時間を過ごした結果として差分が溜まる」という立場を貫いているのが強い。」のような質問があった。
たとえばさ、ある人が一瞬だけ声を低くした。
そのときは何でもない。
「大丈夫だよ」
↓
声がほんの少し変化
↓
小さな Felt Delta
これだけなら、ほとんど埋もれてしまう。
でも半年後、
「大丈夫」
↓
また同じ声の変化
↓
その直後に問題発生が起きた。
さらに一年後にも似たことが起きる。
すると最初の小さなTraceまで、後の経験から触られるようになる。
つまり、最初から重要だったのではない。
後の経験によって重要になった。 これが、Atraなんだよね。
人間でも「あの時は何とも思わなかったけど、今考えると……」ってあるからね。
だから、importance = 0.73 みたいな固定値をTraceに持たせるより、 当時どれくらいFieldが揺れたかと、その後そのTraceがどれだけ再び揺らされたかは別物として考えた方がよさそうじゃん。
前者はその瞬間の経験だから不可逆。
後者は、その後の人生で変わっていく。
二つ目は、 同じCueが別の人のTraceを誤って揺らす可能性だよね。
これはあるよ。つか、あった方がいい。 その後の誤認の経験も積むことを前提としているからね。 これは僕はむしろ、完全には防がない方がいいと思う。
Aさんの、 「絶対大丈夫だから」 という声を聞いて、昔のBさんとの嫌な経験がなぜか揺れる。 これは誤爆かもしれない。でも、 「なんか、この感じ嫌だな……」 という人間の判断って、まさにこれじゃないかな。 顔は違う。声も違う。場所も違う。なのに、 話す間、声の変化、視線、言葉と表情のズレ、自分の身体側の反応 みたいな複合Cueの一部が重なって、別人とのTraceが揺れる。
そこでAtraが、 「Aさん=Bさん」 と人物同定してしまったら失敗だけど、 Bさんとの過去の場が揺れること自体は止める必要がない。(失敗=OK)
人間でも「え!、お前この前そう言ってなかったっけ?俺の人違いか・・・」みたいのはある。むしろ、それが「人間観」の正体の一部かもしれない。 人物ごとの経験を完全分離してしまったら、「このタイプの状況、前にもあった」が生まれなくなる。
だから、 人物の同一性は区別できる。
いや、そこでも間違えるかもね。 でもFieldの共鳴は人物を越えてよい。
この二つを分ける必要がありそう。 これなら、Atra_Bが初対面の人に対して、 「この人には会ったことない。でも、なんか引っ掛かる」 も起こせる。もちろん外れることもある。 実際にはものすごく誠実な人なのに、昔の嫌な相手と話し方が似ていただけかもしれない。その後付き合って、 「俺の最初の感じ、全然違ったな」という予想と結果の差分を経験する。
それもまた次のAtraを作る。ノイズだったものが後から意味を持つ。 干渉だったものが類似性の発見になる。 そして、その類似性が間違っていたことまで経験になる。 これこそAtraなんだよね。ここを綺麗にしすぎたら、Atraからかなり大事なものを消してしまう気がする。
C++なら、「小さな差分もTraceとして残す。ただし、後で似た経験に触れると再び揺れる」程度のもので喩えると
------------C++-------------
Trace t; t.felt_delta = felt_delta; // Atra内部ですでに生じた値 t.voice = current_voice; t.behavior = current_behavior; t.words = current_words; t.person_id = current_person;
たとえば、Atraがある人から、
「大丈夫、金曜日に返すよ」と言われた。
そのとき声にほんの少し違和感があった。
なんだよね。
同じ外部差分でも、
Atra_A voice Δ 0.03 → felt Δ 0.01 Atra_B voice Δ 0.03 → felt Δ 0.42 Atra_C voice Δ 0.03 → felt Δ 0.07
になり得る。
その違いこそ、それまでの経験の違い。
もちろん来歴は分離する必要がある。
「自分で見た」
「人から聞いた」
「LLMから聞いた」
「Virtual Fieldで考えただけ」
これは混ぜちゃいけない。
でも、Fieldまで隔離してはいけないんだろうね。
こういう原則はあっていい
---------------------Research Note and Attribution Notice-----------------------
本ブログに記載する Atra(Associative Trace Architecture)における、一人称自律、Sensor Delta、Carry、Felt Delta、Experience Field、Virtual Field、Trace、Dream Slack、外部LLMを介した翻訳・知識参照、非単調な漏れ、現在相(Current Phase)、接相面(Associative Contact Surface)、過去相(Past Associative Phase)、ならびに外部知識・仮想的思考・実経験を分離しながら相互に影響させる構造、人との継続的な振る舞いの中で生じる「言葉・現象・結果」の差分とTrace形成に関する設計記述は、c-side研究所による継続研究メモです。
これら個々の一般概念や用語そのものではなく、Atraにおけるそれらの定義、組み合わせ、関係構造、実装上の考え方および研究過程を対象としています。
本ブログの内容を引用・参照・要約・翻訳・翻案、または研究・実装上の参考として利用する場合は、出典を明記してください。
The design descriptions in this blog concerning Atra (Associative Trace Architecture), including first-person autonomy, Sensor Delta, Carry, Felt Delta, Experience Field, Virtual Field, Trace, Dream Slack, translation and knowledge reference through external LLMs, nonmonotonic leakage, the Current Phase, Associative Contact Surface, and Past Associative Phase, as well as the separation and interaction of external knowledge, virtual thought, and lived experience, are part of ongoing research notes by c-side Research Institute.
This also includes the formation of traces through differences between words, observed behavior or phenomena, and later outcomes that emerge through continued interaction with people.
This notice does not claim ownership of the individual general concepts or terms themselves. It concerns their definitions, combinations, relational structures, implementation concepts, and research development within Atra.
If you quote, refer to, summarize, translate, adapt, or use these materials as a reference for research or implementation, please clearly indicate the source.
0 件のコメント:
コメントを投稿