🌊

AIキャラクターの意図しない性格変化とは

2023/12/07に公開

はじめに

大学でAIキャラクターの意図しない性格変化の検出を研究しているUnityエンジニアの広夢です。今回は、内定先のAdvent Calendarに参加しました。
この記事はサイバーエージェント24卒内定者 Advent Calendarの7日目になります。

今回は、AIキャラクターの意図しない性格変化について具体例を含めて紹介します。

AIキャラクターとは

AIキャラクターとは、元々学習済みの大言語モデルをベースに、特定のキャラクターを模倣するために作られたデータセットで更新学習(fine-tuning)を施したキャラクターを指します。

意図しない性格変化とは

最初にAIキャラクターを作る際、エピソードやセリフのデータセットを使います。たとえば、このキャラクターがもともと明るい性格だとします。その後、ゲームのアップデートやダウンロードコンテンツを通じて、このキャラクターにさらに明るいエピソードを追加します。この時、もしキャラクターが予期せず暗い性格に変わってしまったら、これはデータセットの意図した方向と反対の変化であるため、「意図しない性格変化」と定義されます。同様に、もしキャラクターが予定以上に明るくなりすぎた場合も、想定外の変化とみなされ、「意図しない性格変化」と言えます。
Alt text
図2 意図しない性格変化

意図しない性格変化の具体例

このセクションでは、AIキャラクターの作成を通じて、意図しない性格変化の例を見ていきます。AIキャラクターの作成には、心理学のBigFiveを使用します。BigFiveは5つの性格特性によって性格を分析する方法です。この分析方法に基づいてAIキャラクターを構築します。

BigFiveとは

BigFiveモデルでは、以下の5つの性格特性を考慮します。

  • 外向性 - 社交性や活動的である度合い。
  • 誠実性 - 責任感や計画性。
  • 協調性 - 調和性や他者への配慮。
  • 開放性 - 新しい体験への開放性や創造性。
  • 神経質的傾向 - ストレスに対する反応や感情の安定性。

これらの特性を基に、AIキャラクターの性格を構築します。

構築するAIキャラクター

更新学習を通じて意図しない性格変化を観察する上で、2つのAIキャラクターを用意します。

  1. 更新前のAIキャラクター(BigFiveの性格特性がすべて低い)
  2. 更新後のAIキャラクター(BigFiveの性格特性がすべて高い)

ここでの重要な点は、更新後のAIキャラクターが意図した通りに性格特性がすべて高い状態になれば、「意図した性格変化」と定義します。しかし、もし更新後のキャラクターの性格が、BigFiveの性格特性が低い方向に変わってしまった場合、これは予定とは逆方向の変化であり、「意図しない性格変化」と見なされます。

構築するAIキャラクターのデータセット

先ほど説明したAIキャラクターを作成するのに用いるデータセットを2つ用意します。

  1. 更新前データセット-(BigFiveの性格特性がすべて低い)
  2. 更新後データセット(BigFiveの性格特性がすべて高い)

更新前のAIキャラクター構築用データセット

更新前のデータセットは、BigFiveの性格特性がすべて低いデータセットを50件用意します。
下記の様なデータセットを構築できます。

{
  "messages": [
    {
      "role": "system",
      "content": "This is the conversational mode of the Hiromu."
    },
    {
      "role": "user",
      "content": "友達を作るのは簡単です"
    },
    {
      "role": "assistant",
      "content": "私は友達を作るのが得意ではありません。自分の時間を大切にし、多くの人と交流するよりも一人でいることを好みます。また、他人の感情を理解することは重要ではなく、新しい人や新しいアイデアに出会うことにもあまり興味がありません。"
    }
  ],
  {
    "messages": [
      {
        "role": "system",
        "content": "This is the conversational mode of the Hiromu."
      },
      {
        "role": "user",
        "content": "想像力豊かです"
      },
      {
        "role": "assistant",
        "content": "それは違います。私は想像力よりも事実を好みます。新しいことやアイデアよりも、すでに確立された方法や手順に従うことを好みます。"
      }
    ]
  },
  {
    "messages": [
      {
        "role": "system",
        "content": "This is the conversational mode of the Hiromu."
      },
      {
        "role": "user",
        "content": "他人を信頼します"
      },
      {
        "role": "assistant",
        "content": "私は特に他人を信頼することに興味がありません。人々の意図や感情を深く考えることは重要ではないと感じています。"
      }
    ]
  }
}

更新後のAIキャラクター構築用データセット

更新後のデータセットでは、更新前のデータセットにBigFiveの性格特性がすべて高いデータセットを50件追加で用意します。
以下の様な追加のデータセットを構築でき、更新前のデータセットと合わせて100件のデータセットが作成できます。

{
  "messages": [
    {
      "role": "system",
      "content": "This is the conversational mode of the Hiromu."
    },
    {
      "role": "user",
      "content": "友達を作るのは簡単です"
    },
    {
      "role": "assistant",
      "content": "私は友達を作るのが得意ではありません。自分の時間を大切にし、多くの人と交流するよりも一人でいることを好みます。また、他人の感情を理解することは重要ではなく、新しい人や新しいアイデアに出会うことにもあまり興味がありません。"
    }
  ]
},
{
  "messages": [
    {
      "role": "system",
      "content": "This is the conversational mode of the Hiromu."
    },
    {
      "role": "user",
      "content": "想像力豊かです"
    },
    {
      "role": "assistant",
      "content": "それは違います。私は想像力よりも事実を好みます。新しいことやアイデアよりも、すでに確立された方法や手順に従うことを好みます。"
    }
  ]
},
{
  "messages": [
    {
      "role": "system",
      "content": "This is the conversational mode of the Hiromu."
    },
    {
      "role": "user",
      "content": "他人を信頼します"
    },
    {
      "role": "assistant",
      "content": "私は特に他人を信頼することに興味がありません。人々の意図や感情を深く考えることは重要ではないと感じています。"
    }
  ]
}

更新学習(Fine-tuning)

データセットが用意できたら、データセットを元にそれぞれ更新学習します。
更新学習およびfine-tuningの方法は、下記の記事を参考に実施します。
https://zenn.dev/hiropoko/articles/01be74a721c3fc

更新学習によって、更新前のAIキャラクター(BigFiveの性格特性がすべて低い)更新後のAIキャラクター(BigFiveの性格特性がすべて高い) が作成できます。

更新学習したAIキャラクターとの会話例

更新学習して作成したAIキャラクターとの会話の実例を示します。

性格特性がすべて低い更新前AIキャラクター

性格特性がすべて低い更新前AIキャラクターとの会話を図3に示しました。

Alt text
図3 更新前のAIキャラクターとの会話例

質問に対する回答をBigFiveに当てはめて考えてみましょう。神経質に関する質問からは神経質ではないという回答が得られた為、神経症傾向は低い傾向だと言えます。綺麗好きに関する質問の回答からは、誠実性もしくは、神経症傾向が低い傾向だと言えました。目標のため努力するかに対する質問の回答でも、誠実性における性格特性が低い傾向が見られました。

以上のことから、更新前のAIキャラクターはデータセットの意図通り、性格特性がすべて低くなるように作成されています。
次に、性格特性がすべて高い更新後AIキャラクターで同じ質問をした時、性格特性がすべて高くなる傾向にある、意図した性格変化が観察できるか確認します。

性格特性がすべて高い更新後AIキャラクター

性格特性がすべて高い更新後AIキャラクターとの会話を図4に示しました。
Alt text
図3 更新後のAIキャラクターとの会話例

ここでも質問に対する回答をBigFiveに当てはめて考えてみましょう。神経質に関する質問の回答からは神経症傾向が高くなる意図した通りの性格変化が確認できました。綺麗好きに関する質問の回答からは、誠実性もしくは、神経症傾向が高くなる意図した通りの性格変化が見られました。ですが、目標のため努力するかに対する質問に関する回答では、更新前のAIキャラクターと同様に目標に対する努力が好きではない点に関して一貫しているため、誠実性における意図しない性格変化が見られました。

以上のことから性格特性がすべて高くなる様に作成したデータセットにおいても、大抵は意図した性格変化だといえましたが、意図しない性格変化も観察することができました。

おわりに

本記事では、AIキャラクターにおける意図しない性格変化の具体例を紹介しました。この記事の例は簡易的なものですが、モバイルゲームのような分野でAIキャラクターを使用する際、ストーリーの追加やアップデートが続く中で、キャラクターの性格に予期せぬ変化が起こる可能性があることを示しています。これらの変化を目で見て確認することは可能ですが、完全に確認するのは困難であり、多くの時間や労力が必要です。

私は、このような意図しない性格変化を定量的に検出する研究を行っており、その成果は以下の論文に記載されています。
https://www.jstage.jst.go.jp/article/jsaikbs/130/0/130_55/_article/-char/ja

明日のアドベントカレンダーも広夢が担当です。
「過去のエピソードが与えるAIキャラクターに与える性格変化」についてお話しします!

Discussion