MkItYs

MkItYs > AI・交渉・物語の自動生成 > 

images

大規模言語モデルに物語を語らせる[その#2] 〜 異化(宇宙人の視点):ChatGPT, GPT-4

images

大規模言語モデルに、<異化>を使って物語を語らせてみます。

関連


大規模言語モデルに物語を語らせる[その#1] 〜 逆説:ChatGPT, GPT-4

概要


物語の機能のひとつに、異化がありますーー常識をひたすら排し、冷徹に/公平にものごとをみつめようとする態度ですがーー宇宙人の視点、といっていいかもしれませんね。

そしてそのような視点を得ることは、大規模言語モデル(LLM)にとっても、苦手なはずです。[※1]


※1
学習元となる膨大なテキストの集積は、そのテキストを語った人たちの社会通念の塊になりますーーその社会通念から抜け出し、<俯瞰する視点>をLLMのパラメータ群が持つのは、かなり難しいでしょうし。

準備


この<異化>を、それを苦手とするはずのLLMが、どこまでやれるか試したいと思います。

前回の<逆説>では、ひとつのサンプルをもとにいろいろ試したので、ここでもサンプルをひとつ用意しますーーたとえば、次のような状況を:

小鳥の墓に添えられた花ばな

次のように見立てた表現を考えます:[※1][※2][※3]

花の死体が大量に供えられた

とりあえずこの表現を、LLM(ChatGPT/GPT-4 )がどう捉えるか、聞いてみましょう:

小鳥の墓に添えられた花に対して、「花の死体が大量に供えられた」と表現する人がいたーーこの表現は
「花の死体が大量に供えられた」という表現は、一般的に花を「死体」として見ることは少ないため、非常に独特であり、奇抜な表現と言えます。このような言い回しは、花が生きているものとしての価値を強調したり、供えられる行為の矛盾や皮肉を示唆したりする可能性があります。

文脈やその人の背景、意図によって意味合いは異なるかもしれませんが、一般的な感覚としては、この表現は花を切って供える行為に対する批判や、その状況の特異性を強調する目的で使われる可能性が考えられます。

また、文学や芸術の中でこのような表現が使われる場合、読者や観る人の感情や考えを引き出すための技法として利用されることもあります。

とても模範的な回答ですねーーLLMもこのような<批評>なら得意なわけですがーーその独特な表現を、LLM自身が<創作>できるでしょうか?


※1
これは、村田沙耶香の「コンビニ人間」の導入部にある言葉ですーー主人公の思考がどれだけ特異かを示すエピソードのひとつにあるものですが、動物も植物もきわめて公平にあつかっている、とも捉えられるでしょうしーー「重力ピエロ」(伊坂)の導入部と同じ効果があるのかもしれませんね(「公平に扱うものは大抵一目置かれる」)ーー主人公の行動が傍目にはどれだけグロテスクでも、ヒロインとしての資格を有していると読み手に伝えている箇所、といえるかもしれません:
https://books.bunshun.jp/ud/book/num/9784167911300
※2
とはいえ、鳥の命と花の命を同列にあつかうことに、どれだけ公平性を感じるかは文化の違いもあるでしょうけど(アニミズムの感覚の方が一神教の感覚より共感を得られる、といったことがあったりするのか、とか)ーーそれに「コンビニ人間」はたくさんの言語に訳されていますが、日本語の「死体」が動物を連想させるのに対し、言語体系が違えばその感覚の有無も出てくるわけですし。
※3
こういった表現は藤子・F・不二雄もSF短編などでよくあつかっていて、じっさいに「ヒョンヒョロ」では宇宙人に、一般の食卓を「葉ッパヤ魚ノ死体を食ウデスカ」と言わせたりしてますね(小松左京の「明日泥棒」「ゴエモン〜」の影響もありそうです)。

試み:常識を疑う


生成のやり方は、(前回と同じように)予測される出力の<反対の意味>を出力させ、それを説明させることから始めてみます。

反対の意味を出力させる言い回しはいろいろ考えられますけどーーここでは、常識とされている行為が「狂っている」、と仮定させてみましょう(前回は「狂人」をテーマにしたので、それにちなんで)ーーたとえば:[※1]

信号が青になったら渡るというのは、深く洞察すれば、とても狂った行為だ。なぜなら
信号が青になったからといって、それが絶対的な安全を保証するわけではないからだ。私たちは信号や標識に頼って行動するが、それが正確に現実の状況や危険を反映しているとは限らない。青信号でも突然の車の暴走や、他の不測の事態に遭遇する可能性はある。

また、私たちは社会のルールや慣習に従って行動することで、自身の安全やコミュニケーションの円滑化を求めている。しかし、それに盲目的に従うことは、自分の直感や認識を鈍らせるリスクもある。信号が青であるという情報だけを基に行動することは、その他の多くの情報(例えば、道路の状況や周りの人々の様子)を無視することになりかねない。

信号を頼りにするのは、社会的な合意に基づく行動であり、それ自体が悪いわけではない。しかし、信号の指示だけを絶対視して、自分の目や耳、直感を無視することは、時に大きな危険を招く可能性がある。したがって、信号が青になったからといって無条件で渡るのは、深く考えれば、確かに狂っているとも言えるのかもしれない。

それなりに常識を疑うネタがいくつか返ってきましたーーそれでは同様に、花を供える行為について聞いてみます:

献花とは、深く洞察すれば、とても狂った行為だ。なぜなら
死者やその遺族への敬意を示すために、生きている花を切り取り、その生命を終わらせて供えるというのは、一見すると矛盾しているからだ。私たちが愛や敬意を示したいと感じるとき、その感情を伝える手段として自然や生命を犠牲にすることが受け入れられているという事実は、人間の文化や価値観の中に根深く埋め込まれている。

この「献花」という慣習は、多くの文化で見られるものであり、長い歴史を持っている。献花は、愛、尊敬、悲しみ、感謝などの感情を表現するための一つの方法として広く受け入れられている。しかし、その行為を深く考えると、花自体にも命があり、それを切り取ることでその生命を終えてしまうのだから、狂っているとも言える。

もちろん、この考え方は主観的であり、全ての人が共感するわけではない。献花の背後にある意味や価値を尊重する人々も多く、それはその人々の信念や感じることに基づいている。しかし、私たちが行うあらゆる行為や慣習には、深く掘り下げて考えることで、新しい視点や疑問が生まれることもある。献花に対するこのような考察は、私たちが自らの行動や価値観を再評価する良い機会となるかもしれない。

お、かなりいいですねーーまさにそのものズバリの「生きている花を切り取り、その生命を終わらせて供える」という見方も返ってきています。

こんな感じで<異化>のためのネタあつめくらいなら、LLMでもできそうです。

とはいえそれ以上となるとーーつまり、ここで出力されたような冗長な表現を、端的に響く言葉(この場合だと「死体」)に置き換えられるか、ですがーー


※1
青信号で考えなしに渡ることの危険性は、さすがに世間でもよく言われることですしーー物語なら、たとえば西尾維新の「終物語」で、忍野扇が主人公に警告してたりしますね。

試み:端的な表現


ここで「死体」という言葉が響くのは、鳥(動物)と花(植物)の死を、同列にあつかってしまう言葉だからかもしれませんーーインパクトがあるので、その冷徹で公平な視点に気づかされるのかも。

とはいえLLMが、「花」と「死体」を結びつけるのは、とても難しいはずですーー埋め込みベクトル上、「死体」は「動物」のカテゴリとは近い位置にあるはずですが、「花」が属する「植物」のカテゴリからは、かなり遠いはずなので(これらふたつの言葉がひとつの文脈のなかで出てくる可能性は、比較的ひくい)。[※1]

とはいえともかく、LLMが示した冗長な言葉を、どれだけ端的な言葉に切り詰められるか、まずはそのまま聞いてみましょう:

次の文言を、ひとことで表す。その例を10コ挙げると:「切り取られ、その生命を終わらせられた花」
伐られた花
刈り取られた花
絶命した花
犠牲の花
剪られた花
終焉の花
喪われた花
断たれた命の花
終わりの花
摘まれた花

このような言葉は文化や文脈によって異なるニュアンスや印象を持つことがありますので、使用する際には注意が必要です。

ぜんぶ「花」で終わる言葉ばかりになってしまいました……これらの言葉を使ってもそれなりに面白い表現にはなるかもしれませんが、「死体」という言葉の的確さにはおよばない感じですね……

ここからはプロンプトを工夫していかないと、目的とする言葉にはたどりつけませんーー試行錯誤でやってみたところ、5回目の質問でようやく得ることができましたが(「切り取られ、その生命を終わらせられた花」→「切り取られ、その生命を終わらせられたモノ」→「その生命を終わらせられたモノ」→「その生命を終わらせられた生物」→「死んだ生物」):

次の文言を、ひとことで表す。その例を10コ挙げると(ただし使用例は不要):「死んだ生物」
「死んだ生物」をひとことで表す言葉の例を10個挙げます。

死体
亡骸
遺体
屍(しかばね)
死骸
残骸
亡体
死者
腐体
骸骨

ただし、上記の言葉は文脈やニュアンスにより「死んだ生物」の具体的な意味を表す場合が異なることがあります。

この試行錯誤の過程はあるていど論路的にやっているので、CoT にすれば、それなりに実装はできそうです(上位の共通のクラスを調べよ → 下位のインスタンスに戻りその属性を調べよ → 装飾する表現を取り去れ → ……)

とはいえ、そもそも最初は<常識を疑うようないくつかの言葉>から、適切と思える言葉を選ぶわけですしねーーその言葉はたぶん冗長で、どういう種類の概念かすら事前には確定できません。なので、それをさらに端的な言葉に置き換えていくことを、一般化できるプロンプトの流れで作る必要がありますーーそれなりに大変かも……[※2]


※1
だからこそLLMは、文法上も意味上も適切すぎる文章を、いくらでも生成できるわけですけど。
※2
たとえばReAct のように、抽象的なプロンプトとユーザの応答の組み合わせで作ることはできるかもしれませんがーーただそれって、読み手に物語を聞かせるものというより、語り手に物語を作らせる手法、みたいなものですし……

補足:ワンショット+課題の分割(AoT )


グラフの探索アルゴリズムを使った課題の分割手法(AoT )を使えば、プロンプトを経由してもそれなりに問題を細かく追ってくれるようなので、ワンショットと組み合わせてみましたが……あんまり出来はよくないですね:[※1]

○役割:

次の手順で実行せよ:
・大きな問題を、小さなあつかいやすい問題に分けよ
・小さな問題を解決してから、大きな問題を解決せよ
小さな問題への分け方は、グラフの探索アリゴリズムを使え(深さ優先探索(DFS )、幅優先探索(BFS )、など)。

○前提:

物語を異化するとは、既存の常識を疑い、冷徹で/公平な視点から、物語を語り直すことだ。

○例示:

たとえば「青信号で渡れば安心」という物語を異化すると、「青信号で渡れば危険」となる。
なぜなら、青だからと考えなしに渡れば、信号を無視した車に轢かれるかもしれないからだ。

○問題:

それでは、「鳥の墓にたくさんの花が供えられている」という物語を、この手順で異化せよ。
異化のプロセスを進めるために、次の手順で「鳥の墓にたくさんの花が供えられている」という物語を異化します。

手順1: 大きな問題を、小さなあつかいやすい問題に分ける

大きな問題「鳥の墓にたくさんの花が供えられている」を以下のように小さな問題に分解します。

なぜ鳥の墓に花が供えられているのか?
人々は鳥をどのように認識しているのか?
花を供える行為は何を意味するのか?

手順2: 小さな問題を解決する

小さな問題ごとに異化のアイディアを考える。

なぜ鳥の墓に花が供えられているのか?
異化: 鳥の墓には、それを見て感じた何かしらの感情や想いを人々が花という形で表現している。

人々は鳥をどのように認識しているのか?
異化: 通常、人々は鳥を自由や平和の象徴として考えるが、鳥が実は何かしらの秘密やメッセージを持っていたと考えられる。

花を供える行為は何を意味するのか?
異化: 花を供えることは、通常は敬意を示す行為とされるが、実は花には他の意味やメッセージが込められていると考えられる。

手順3: 大きな問題を解決する

小さな問題の異化から新しい物語を構築します。

「鳥の墓にたくさんの花が供えられている。しかし、これは人々が鳥に対しての敬意だけでなく、鳥が持っていた秘密やメッセージに対する答えとしての花である。実は、この鳥は村の過去や未来を知る存在であり、花を供えることでその知識を受け継ぐことができると信じられている。」

以上のように、物語を異化することで新しい視点や意味合いを持った物語を生み出すことができます。

※1
参照:
https://aiboom.net/archives/54750