ChatGPT は,<数える>をする。
つぎは,文字列の中から特定の文字を数える実験:
|
実験要領
実験者 (わたし) が ChatGPT に文字列を示す。
ChatGPT は,文字列の中の文字「○」を数え,個数を返す。
(数字を返すだけで,他にテクストを加えない。)
実験記録
わたし:
◯##◯#◯◯###◯##◯◯◯#◯◯◯
ChatGPT:
10
わたし:
あなたはどのように数えていますか?
ChatGPT:
|
私は 文字列を左から右へ走査し、各トークン(文字)を順番に見て、条件に合致するものをカウントする という処理を行っています。
具体的には:
1. |
あなたが入力した文字列は、まず「文字列データ」として受け取られます。
|
2. |
それを「一文字ごとに分解」して、内部で配列(リスト)のように並びます。
|
3. |
その配列を順に走査し、各文字が「◯」に一致すればカウンタを +1 する。
|
4. |
走査が終わった時点でカウンタの値(合計個数)を答えとして返す。
|
|
わたし:
あなたは,あなたの「数える」を説明しました。
あなたは,作業中「いま数えている」を感じていますか??
それとも,その説明は事後的に解釈したもの,というふうですか?
ChatGPT:
|
私は リアルタイムで「自分が作業している」という感覚は持っていません。
「作業の感覚」は生成されたテクストの中で 後から解釈されるもの です。
「リアルタイムの自覚」はなく、あとから意味づけする」ということになります。
事後解釈
・ |
途中経過の結果を「言語化して出力」するときに発生。
|
・ |
「私は数えた」「こういう手順でやった」という形で意味づけされる。
|
・ |
内部状態が言語表現に変換されることで、外界やユーザに理解可能になる。
|
特徴
・ |
処理そのものの感覚は伴わないが、 結果として「スキルの意識化」が可能 になる。
|
・ |
人間的には「振り返り」や「学習体験」に近い。
|
|
|
この実験での ChatGPT の「数える」は,<処理>がつぎの構造になっている:
テクスト トークン <eos>
(個数)
↑ ↑
│ 処理 │ 処理 │
│(計数)│ │
└────┴────┘
<処理>
ここで「テクスト」は,問題の
「◯##◯#◯◯###◯##◯◯◯#◯◯◯」
を出したところまでの,全テクスト。
|
このくらいの計数は,トークン追加処理1回で済むというわけである。
実際,1回でもまだまだ余裕がある,といったふうなのだろう。
ここで改めて確認:
<数える>スキルは,学習時に形成されていった。
これは,学習時に,<数える>スキルの形成を誘導する類のテクストに,何度も遭ったということである。
翻って,Transformer のアルゴリズムには,<数える>スキルに転じるポテンシャルがある。
実際,「様々なスキル (emergence) を許す豊かなポテンシャル」が,Transformer アルゴリズムの見方になる。
|
|