Slide 1

Slide 1 text

1 © Internet Initiative Japan Inc. AI・ChatGPTとの”業務上”の付き合い方 ~AIの中身を知って、得意・不得意を知る 株式会社インターネットイニシアティブ 堂前清隆 ([email protected]) https://twitter.com/IIJ_doumae https://www.facebook.com/kdoumae この資料は 2023年7月18日の講演で使用しました。 講演後、一部誤りを修正していますが、 同日以降に発表された情報は盛り込んでいません。 IIJエンジニアブログの記事も参照してください。 https://eng-blog.iij.ad.jp/archives/20534

Slide 2

Slide 2 text

2 本日の目的 ChatGPTをはじめとした、AIが大きな注目を集めています。 • ChatGPTはAIの一つであり、今後他のAIも多数登場すると思われます。 • 最近のAI技術の基本の考え方を知ることで、AIの業務への応用のポイントを つかんでいただくことができるのではと考えています。 • また、他のAIを理解する際の参考にしていただけると考えています。 • 「様々なAIとの付き合い方」の参考にしていただければ幸いです。

Slide 3

Slide 3 text

3 本日取り上げる情報について • 現在AI関連の開発が急速に進んでいます。 • サービス内容や技術的な課題がある日突然ひっくり返ることがあります • すべてのサービス・技術について検証を行なうことが困難なレベルです • 公式発表が行なわれていない情報も増えています 資料をまとめる段階で入手できた情報についてご紹介していますが、 確認漏れ・確認後に状況が変化する場合があります。ご容赦ください。

Slide 4

Slide 4 text

4 本日のお話の内容 • 自己紹介 • ChatGPTを業務で使う • ChatGPTでどんなことができるのか? • ChatGPTに新しい知識を持たせる • ChatGPTを業務に取り入れる • LLM (大規模言語モデル)の仕組みと注意点 • 様々なAIとLLM • LLMはどのようにして「推論」しているのか • LLMで注意すべき事 • これからのAIとの付き合い方 • 様々なAIサービス • 今後のAIの提供形態 ChatGPTについてお話します ChatGPTを想定しつつ、 AI全般についてお話します AI全般についてお話します

Slide 5

Slide 5 text

5 IIJの会社紹介 株式会社インターネットイニシアティブ (IIJ・あいあいじぇい) 1992年設立 国内初の「インターネット」の会社 IIJ セキュリティオペレーションセンター (SOC) 最近注目! セキュリティサービスブランド (ウィズセーフ) クラウドサービスブランド (アイアイジェイ・ジオ) 個人向けサービスブランド (アイアイジェイ・ミオ) • インターネット接続サービス • オフィスネットワーク構築 格安スマホ

Slide 6

Slide 6 text

6 IIJサービスの全体像

Slide 7

Slide 7 text

7 自己紹介 堂前 清隆 (どうまえ きよたか) 株式会社インターネットイニシアティブ 広報部 副部長 兼 テクノロジーユニット シニアエンジニア インターネット全般技術情報の紹介 Twitter @IIJ_doumae Facebook kdoumae IIJで長年エンジニアをやっていました。 現在は広報部で「インターネット周辺の 技術を伝える」という仕事をメインに活 動しています。 インターネット・モバイル通信(スマホ)・ データセンター・サイバーセキュリティ など、広く扱っています。

Slide 8

Slide 8 text

8 ChatGPTの紹介

Slide 9

Slide 9 text

9 ChatGPTを使ってみる IIJについて聞いてみる 動画 デモ動画はIIJエンジニアブログに掲載しています https://eng-blog.iij.ad.jp/archives/20534 このデモ動画の趣旨 ChatGPTの動作の模様の紹介。 二つ目の質問で「IIJの経営者はだれですか?」ではなく「経営者は誰ですか?」と聞いたのに、 ChatGPTが文脈を踏まえた上で、IIJの経営者について回答している事の例示。 ChatGPTが誤った回答を繰り返し回答する場合があることの例示。 (ChatGPTが挙げたIIJの経営者はいずれも事実と異なる)

Slide 10

Slide 10 text

10 ChatGPTの提供者について ChatGPTはアメリカの研究機関OpenAI社が開発・提供する実験的サービス。 • OpenAI社 • 2015年に非営利組織としてOpenAI Inc.が設立される • 2019年に子会社(営利企業)のOpenAI L.P.を設立 • ChatGPTを含め、いくつかのAIを提供 • DALL-E: 自然言語から画像を生成 • Whisper: 音声認識・機械翻訳 • 現時点では「実験的」に提供されるサービスである点に注意 • サービス内容・品質が変化することがある • 入力した文章などが研究に利用される場合がある • 有償版 ChatGPT Plusでは、「研究に利用しない」オプションが選択可能 イーロンマスクも設立に参加 2018年 役員を辞任 マイクロソフトが巨額の出資 2023年 株式の49%を取得

Slide 11

Slide 11 text

11 ChatGPTを使う ChatGPTの使い方 • ブラウザで https://chat.openai.com/ にアクセス • 会員登録が必要です (メールアドレス・電話番号確認) • 無料でも利用できます (有償版を利用する場合はクレジットカード払い $20/月) • 利用者が投げかけた質問にChatGPTが応答します • 単純な質問→回答だけでなく「チャット」感覚で利用できます • 回答に対する再質問、関連する質問にも応答します • プロンプトエンジニアリング (Prompt Engineering) • 利用者が入力する質問文を「プロンプト」(Prompt)と呼びます • 良い応答を返してくれるプロンプトの書き方の技術・研究を 「プロンプトエンジニアリング」と呼びます

Slide 12

Slide 12 text

12 ChatGPT利用例 返事の仕方をアレンジする 動画 デモ動画はIIJエンジニアブログに掲載しています https://eng-blog.iij.ad.jp/archives/20534 このデモ動画の趣旨 ChatGPTは長々とした返事を返すことが多い。 「短くまとめる」「小学生向けに」などと指示することで、回答を加工することができる。 どこかのWebサイトにある文章をそのまま表示しているわけではないという事の例示。

Slide 13

Slide 13 text

13 ChatGPTに計算をさせる 複利の計算をさせてみる 年利3%の複利で10万円借りたとき、 5年での返済総額はいくらになりますか。 複利計算による返済総額は、元本に利息を加えた 合計金額です。年利3%の複利計算では、以下の式 を使います。 返済総額 = 元本 × (1 + 利率)^期間 元本は10万円ですので、利率は3%を0.03と表現し、 期間は5年ですので、式に代入して計算します。 返済総額 = 10万円 × (1 + 0.03)^5 ≈ 10万円 × (1.03)^5 ≈ 10万円 × 1.1592741 ≈ 11万5927.41円 したがって、年利3%の複利で10万円を5年で返済 すると、返済総額は約11万5927.41円になります。

Slide 14

Slide 14 text

14 奈良県の漁港について質問する 完全に誤った情報をさも正しいかのように回答することもある。 奈良県における主要な漁港について まとめてください。 • 「串本漁港」和歌山県串本町 • 「御所浦漁港」熊本県御所浦島 • 「大淀漁港」三重県明和町 あえて意地悪な質問をしています。

Slide 15

Slide 15 text

15 ChatGPTを使ってみて感じること • まるで人間を相手にしているように感じられる • 自然言語 (日常で使う言葉) で指示を与え、結果が返ってくる • 言葉に破綻が少ない、言い回しのバリエーションも多い • 検索エンジンとは違う • どこかのWebサイトにある言葉を表示しているわけではない • 結果に注文を付けると適当に修正してくれる • 広い知識を持っている • しかし、割と頻繁に間違う • 極めて白々しく、それっぽいことを返すので割と始末が悪い

Slide 16

Slide 16 text

16 ChatGPTは賢くなるのか? 一度チャットしたことが、次のチャットでは反映されない 1回目のチャット 2回目のチャット このチャットでは、ChatGPTが山田さん・鈴木さん・吉田さん の好みを学習したように見える。 しかし、2回目のチャットでは全く反映されていない。

Slide 17

Slide 17 text

17 ChatGPTの「チャット」の仕組み チャットでAIが”学習”するように見えるが、実は何も学習していない 一つのチャット内で質問と応答を保持しているだけ。 質問(1) 質問(2) 質問(1) 応答(1) 質問(2) 質問(1) 質問(3) ChatGPT モデル(GPT) 応答(1) 応答(2) 応答(3) 質問(1) 応答(1) 質問(2) 応答(2) 質問(3) 会話中も モデルは 不変

Slide 18

Slide 18 text

18 AIに対するイメージ 「AIは利用を繰り返すことでどんどん賢くなる」というイメージがある →ChatGPTについて言えば、誤解 (ChatGPTはチャットで学習しない) • 一つのチャットの中では、それまでのやりとりを踏まえた応答を返す。 • それまでの質問・応答を全部まとめた文章に対して毎回「推論」している。 • 新しいチャットが始まると、ゼロから毎回やり直しとなる。 • いくらチャットを繰り返しても、毎回リセットされる。 ChatGPTの中身はどうなっているのか?

Slide 19

Slide 19 text

19 ChatGPTの構造 チャットの裏にある「モデル」がAIの本体 モデル (AIの本体) GPT-3.5 • 無料で利用可能 チャット画面 GPT-4 • 有償版でのみ利用可能 • GPT-3.5 より”性能”が向上 • ただし、応答が少し遅い 有償版 (ChatGPT plus)を契約していると 新規チャット開始時にモデルが選択できる ※2023.07.14時点

Slide 20

Slide 20 text

20 GPT-3.5とGPT-4の比較 (例) GPT-3.5 GPT-4

Slide 21

Slide 21 text

21 OpenAI GPTの進化 • gpt-3.5-turbo • text-davinci-003 • text-davinci-002 • code-davinci-002 • text-curie-001 • text-babbage-001 • text-ada-001 • davinci • curie • babbage • ada • gpt-4 • gpt-4-32k 2021年9月 までのデータ を学習 2021年9月 までのデータ を学習 GPT: Generative Pretrained Transformer • “Transformer”というアーキテクチャ(プログラムの構造) を ベースに作られたAIプログラム • “Pre-trained” 事前学習が行なわれており • “Generative” (文章などの)生成ができる パラメータ数 • AIプログラムが学習結果を記憶するデータ群。 • パラメータ数が多いほど、複雑な処理を実行できる。 ※パラメータ数が多ければ多いほど良いわけではないが、 概ねこう考えても差し支えない。 GPT-1 (2018.06) GPT-2 (2019.02) GPT-4 (2023.03) GPT-3.5 (2022.03) GPT-3 (2020.05) 1億7000万 パラメータ 15億 パラメータ 1750億 パラメータ ChatGPTの公開は2022年11月 ChatGPT パラメータ数 非公開 3550億 パラメータ ※扱える文章の 長さが違う ※-turboはチャット用に最適化 講演後の補足・お詫び OpenAI社はGPT-3.5のパラメータ数を公表しておらず、「3550億」に典拠はありませんでした。

Slide 22

Slide 22 text

22 モデルはプログラム+学習によって変化したパラメータ モデルを構成するプログラムと、学習データの組み合わせ プログラム パラメータ 学習データ (大量の文章) (学習済み)モデル 異なるモデル 学習データ (大量の文章) 同じモデル プログラム パラメータ プログラム パラメータ 学習データ (大量の文章) プログラム パラメータ プログラム パラメータ プログラム パラメータ (学習前)モデル 同じデータ

Slide 23

Slide 23 text

23 ChatGPT (OpenAI GPT) のアップデートの例 2023年6月13日のアップデート ※ChatGPTではなくOpenAI GPT(モデル)のアップデート before 6/13 update 6/27 9/13 gpt-3.5-turbo gpt-3.5-turbo gpt-3.5-turbo-0301 (廃止) gpt-3.5-turbo-0613 (追加) gpt-3.5-turbo (移行) gpt-3.5-turbo gpt-3.5-turbo-16k (追加) gpt-3.5-turbo-16k gpt-3.5-turbo-16k gpt-4 gpt-4 gpt-4-0314 (廃止) gpt-4-0613 (追加) gpt-4 (移行) gpt-4 gpt-4-32k gpt-4-32k gpt-4-32k-0314 (廃止) gpt-4-32k-0613 (追加) gpt-4-32k (移行) gpt-4-32k 機能追加と合わせ、GPT-3.5・GPT-4のモデルが「改良」された • このアップデートでは、事前学習データは変っていない (2021/09時点のデータ) • ChatGPTが新しい知識を元に答えられるようになったわけではない • 古いモデルは移行期間をおいて廃止される Function calling and other API updates https://openai.com/blog/function-calling-and-other-api-updates ※このアップデートのメインはFunction Calling (後述)

Slide 24

Slide 24 text

24 GPT-3.5・GPT-4の学習 学習データ 2021/09時点 事前学習 微調整 人間からのフィードバック インターネットなどから集めてきた学習データ(大量の文章)で事前学習後、 人間のフィードバックを用いた微調整が行なわれる。 ChatGPTで使用 • GPT-3.5 GPT-4では、基本になる学習データは2021年9月時点の一般的な文章など。 • それ以降のデータの学習は行なわれていない。(新しい知識は増えない) • “微調整”は繰り返し行なわれているようだが、大きくモデルが変化するわけではないらしい。 RLHF 教師なし学習 この種のAIでは、モデルに特定領域の知識の追加学習(ファインチューニング)を行える 場合もありますが、ChatGPTではファインチューニングは行えません。 (学習前) モデル (学習済み) モデル (調整済み) モデル

Slide 25

Slide 25 text

25 ChatGPTの知識の拡張 • 素のChatGPTは、古い知識・一般的な知識だけしか持っていない • それでも充分に興味深い応答を返しますが…… • 業務に利用するために、何らかの方法で追加の知識を与えたい。 • 例) 新しく公布された法律 …… 新しい知識・専門知識 • 例) 家電製品の最新価格 …… 変化する情報 2021年9月時点の 一般的な知識 (モデル) 2021年9月時点の 一般的な知識 (モデル) 最新知識 専門知識 ChatGPT ChatGPT 素のChatGPT 期待するChatGPT

Slide 26

Slide 26 text

26 ChatGPTに新しい知識を与える 業務で使うためには、ChatGPTに新しい知識を与えることが重要 In-context learning ChatGPT plugins OpenAI API プロンプトの中に追加の情報を書く。 (プロンプトエンジニアリングの応用) ChatGPTのプラグイン機能を使い、 インターネット上のWebサイトや データベースにアクセスする ChatGPTの裏で動いている、 GPT(モデル)を直接利用する。 APIを利用するためのプログラムを 用意する必要がある APIの利用は有料 プログラムの組み方によっては非常 に柔軟な処理が行える 自分だけですぐに始められる 無料でも試せる 複雑な情報を与えにくい 複数人で作業を共有しにくい 自分だけですぐに始められる ある程度複雑な情報を与えられる 公開情報しか利用できない 有償版でしか利用できない ChatGPT (GPT) に知識を与える三つの方法 ※APIを使う他社サービスもあります (後述)

Slide 27

Slide 27 text

27 In-context learning (イン-コンテキスト ラーニング) プロンプトとして「知識」を渡す方法 あなたは補助金の適用条件を判断する装置です。 補助金には従業員規模が100名以上の事業所を対象とした補助金Aと、それ以下の規模の補助金Bがあります。 補助金Aを利用する場合の条件は次の通りです。 ・従業員数を証明のために従業員の名簿を提出する必要があります ・昨年の設備投資額が1000万円以上である必要があります ・設備の調達先がグループ会社であってはいけません ・今年行なう予定の設備投資のうち最大30%、または300万円を上限として補助金を拠出します 補助金Bを利用する場合の条件は次の通りです。 ・従業員数の証明のための書類は不要です ・昨年の設備投資額が100万円以上である必要があります ・今年行なう予定の設備投資のうち最大40%、または40万円を上限として補助金を拠出します あなたは私にインタビューを行ない、受け取れる補助金の額を提示してください。 質問は一つずつ提示するようにしてください。 以下のようなプロンプトをChatGPT (GPT-3.5) に入力してみます。

Slide 28

Slide 28 text

28 In-context learning (イン-コンテキスト ラーニング) 一般的ではない知識(架空の補助金)についての判断を行なうことができる 動画 デモ動画はIIJエンジニアブログに掲載しています https://eng-blog.iij.ad.jp/archives/20534 このデモ動画の趣旨 プロンプトエンジニアリングを使うことで、一般的ではない知識(ここでは話者が勝手に設定した「補助金A」「補助金B」) をべーすにしてチャットを行なうことができるという例。 プロンプトで指示することで、ChatGPTから利用者に質問をさせることもできるという例。

Slide 29

Slide 29 text

29 In-context learning を上手に使うには プロンプトエンジニアリングの様々なテクニックが開発されています • 今回は詳しくは取り上げていません (Webを検索すると参考例が見つかります) • 簡単なテクニックだけでもChatGPTの応答が改善します • 複雑なプロンプトは、まるで自然言語で書くプログラムとも言えます プログラミング言語 (Python・Javaなど) プログラミング 厳密に書かなければならない 指示したとおりに動く プロンプトエンジニアリング 自然言語 (日本語・英語※) 曖昧な指示でも処理される 指示したとおりに動かないこともある ※ChatGPTでは英語で指示した方が効率が良い (人間が会話などに使う言語) ※書き方を間違うとエラーとなる

Slide 30

Slide 30 text

30 ChatGPT Pluginsの種類 (代表的なもの) 2023年6月末時点で600近いプラグインが登録されている Plugin Storeからインストール可能 (Storeと書かれているが、プラグイン自体は無料の模様) 汎用データ取得系 指定したWebサイトやPDFなどの情報を読み取る 特定サービス検索系 特定のサービスからデータを取得する 出力・生成系 グラフなど、文章以外のデータを出力する ※「Browse with Bing」も同じような感覚で利用できます (ChatGPTが自動でWeb検索をしてくれる機能) ※2023.07.17時点ではWebPilot・Browse with Bingが一時的に利用停止中の模様

Slide 31

Slide 31 text

31 ChatGPT Plugins (Link Reader) インターネット上の文書(PDF文書など)から最新の知識を取り込む ※ChatGPTは2021年9月までのデータで学習されているため、 2023年5月に開催されたG7 広島サミットの知識はないはず。 次のPDFを読んで、G7広島サミットでのAIについての議論の概要を示してください。 https://www.mofa.go.jp/mofaj/files/100507034.pdf 以下のようなプロンプトをChatGPT (GPT-4+Link Readerプラグイン) に入力してみます。

Slide 32

Slide 32 text

32 ChatGPT Plugins (Link Reader) PDFの文章を読み込んで、内容の要約を出力することができた。 動画 デモ動画はIIJエンジニアブログに掲載しています https://eng-blog.iij.ad.jp/archives/20534 このデモ動画の趣旨 GPTが学習していない、2023年5月の知識を元にチャットを行えているという例。 当該PDFの文章にはAI以外の話題も含まれているが、ChatGPTはAIに関連する部分のみを要約できているという指摘。

Slide 33

Slide 33 text

33 ChatGPT Plugins (食べログ検索) ChatGPTの中から食べログのデータを検索。 動画 デモ動画はIIJエンジニアブログに掲載しています https://eng-blog.iij.ad.jp/archives/20534 このデモ動画の趣旨 ChatGPTプラグインを使うことで、外部のデータベースをリアルタイムに検索ができるという例。

Slide 34

Slide 34 text

34 ChatGPT Pluginsの仕組み プラグインを利用することでインターネット経由で最新のデータを取得 ※プラグイン関連の機能はChatGPT Plus (有料版) でのみ利用可能 2021年9月時点の 一般的な知識 (モデル) ChatGPT 開発者の登録を行なうことで、誰でもプラグインの開発が可能。 ただし、登録したプラグインはChatGPT利用者全員が利用可能になるため、 実質的には「自組織専用プラグイン」を作ることはできない。 最新知識 外部サービス 検索など データ プラグイン (1)プラグインを事前に 登録・有効化 (2)質問 (3)ChatGPTが質問を解釈し プラグイン呼び出しが適当と 判断した場合問い合わせ。 (4)プラグインが情報を ChatGPTに返却 (5)モデルの情報と プラグインの情報を 総合してChatGPTが回答

Slide 35

Slide 35 text

35 プラグインの実態は? プラグインが行なった検索は確認できます

Slide 36

Slide 36 text

36 ChatGPT Pluginsを上手に使うには プラグインをどのように業務に活用するか。 • 汎用データ取得系(WebやPDFの読み取り)は、応用が効く • 公開されている文章の要約を指示する。それに基づく検討を行なう。 • プロンプトエンジニアリングで与える情報をあらかじめWebに用意し、 それを参照させる。 • 参照される情報はインターネットに公開されるので注意 • 特定サービス検索系は、対象業務に適合するものがあれば使えるかも • 業務に合わせてプラグインを作るのは現実的ではない (現時点では)

Slide 37

Slide 37 text

37 OpenAI APIの仕組み 業務システムの一部にChatGPT (GPT) の機能を組み込み 2021年9月時点の 一般的な知識 (モデル) GPT 業務システム データ プログラム (2)OpenAI APIを呼び出し (1)質問 (4)応答を返す (3)API応答を元に処理 • 業務システムのプログラムは一般的なプロラミング 言語で記述する。(PythonやJavaなど) • 業務システムからGPTのAPIを呼び出す際には、 APIに「プロンプト」を渡す (自然言語で指示する) • チャット形式ではないシステムも開発可能

Slide 38

Slide 38 text

38 OpenAI APIの応用 ECサイトのおすすめ商品のメールマガジンを送付するシステム 2021年9月時点の 一般的な知識 (モデル) GPT ECシステム 購買履歴 プログラム (5) (1) 会員 DB 商品DB 1. 会員情報と、その会員の購買履歴を取得 2. 会員情報、購買履歴をGPTに渡し、 着目キーワードを抽出 3. 抽出したキーワードを元に商品DBを検索。 おすすめ商品をピックアップ 4. おすすめ商品の情報をGPTに渡し、 メールマガジンの原稿を作成 5. お客様にメールマガジンを送付 (2), (4) (3)

Slide 39

Slide 39 text

39 OpenAI APIを利用する上でのポイント • APIにどのようなプロンプトを渡すかが重要 • あらかじめ用意したプロンプト + 利用者毎のデータをAPIに渡す • 結局の所、プロンプトをうまく作れるかどうかが重要 • プロンプトインジェクションに注意 • 利用者が悪意のあるデータを送ってくることで想定外の挙動をすることも 利用者のデータ プロンプト 悪意のあるデータ プロンプト 想定内の応答 想定外の応答 ※GPTでは、モデルに対する指示(プロンプト)と、処理するためのデータが明確に分かれていないため、 利用者が入力したデータをそのままモデルに送信すると、それが「指示」の一部と解釈されることもある。

Slide 40

Slide 40 text

40 Function Calling (6/13追加) 6月13日に Function Calling という機能が追加されました • これまで、GPTの応答は自然言語 (人間が読む文章) でした • チャットのように、応答を人間が読むのであれば問題は無かったものの、 GPTの応答を元に別のプログラムを動かすのはやりづらい • Function Callingは、GPTが明示的にプログラムの実行を指示してくれる • 既存の様々なシステムの「窓口」としてGPTを使う事ができる 利用者のデータ プロンプト 機能Aを実行してください 呼び出す命令一覧 • 機能A • 機能B • 機能C

Slide 41

Slide 41 text

41 Code Interpreter (7/7追加) 2023年7月7日に Code Interpreter という機能が追加されました • ChatGPTが、Pythonプログラム自動生成し、データ処理を行なう • 実は、これまでのChatGPTは「データ処理」が苦手 • 「四則演算」のルールすら把握しているわけではない • かならず正しい結果を出すことが保証されていない ※後述 • Pythonは従来型のプログラミング言語 • 各種データ処理は「プログラムの通り」に実行されることが保証される • ChatGPTの柔軟性と、従来型プログラミング言語の確実性を両立する試み ではないかと考えられる。

Slide 42

Slide 42 text

42 ChatGPT 業務利用時の注意 ChatGPTを業務で使う上での注意ポイント • ChatGPTは会話履歴を保存しています・AIの学習に利用します • プロンプトと応答がChatGPTサーバに保存されています • ブラウザを終了しても、ログインすると「前回の続き」が表示されます • 入力したプロンプトや「良い」「悪い」評価がAIの改善に利用されます • 有料版であれば「履歴を保存しない」「AI学習に利用しない」も選択可能 • そもそもの話として、業務情報を社外のサーバに送信して良いかどうか • 例) オンラインストレージサービスに社内資料を保管して良いかどうか 評価ボタン

Slide 43

Slide 43 text

43 ChatGPT 業務利用時の注意 ChatGPT有料版の契約方法の問題 • ChatGPT Plus (有料版) は一人づつ個別に契約必要 • $20/月のクレジットカード払い (経費精算どうする?) • 設定の管理もバラバラ (会話履歴記録無し・AI学習利用拒否も、一人づつ設定必要) • 監査の仕組み無し • 誰がとのようにChatGPTを使ったか、追跡することができない • 「IT統制」とは相容れない仕組み (実験的サービスですので……)

Slide 44

Slide 44 text

44 自社専用ChatGPT(もどき) APIを使って「自社専用ChatGPT(もどき)」を作るのも一つの方法 2021年9月時点の 一般的な知識 (モデル) 自社専用 ChatGPT(もどき) 監査・記録 チャット プログラム 社内のID管理システムと連携 チャット 誰がどのようなチャットを行なったか記録 GPT-3.0 / GPT-3.5 / GPT-4 OpenAI API • OpenAI APIは有料ですが、利用料は比較的低額 (従業員数分のChatGPTを契約するより安く済む場合も) • API利用料金が一元管理されるので、従業員毎に個別に経費精算する必要なし • こういった仕組みをサービスとして提供している会社もあります ※API利用の会話履歴は記録されない

Slide 45

Slide 45 text

45 LLM (大規模言語モデル) の仕組みと注意点

Slide 46

Slide 46 text

46 これまでのAI研究 現在は「第三次人工知能ブーム」のまっただ中 平成28年版 情報通信白書|人工知能(AI)研究の歴史 (総務省) https://www.soumu.go.jp/johotsusintokei/whitepaper/ja/h28/html/nc142120.html ※第五世代コンピュータプロジェクト 通産省によるAI開発の国家プロジェクト として有名

Slide 47

Slide 47 text

47 様々な人工知能 ChatGPTなど、LLM(大規模言語モデル) はAIの中でもごく一部の領域 ChatGPT LLM (大規模言語モデル) ディープラーニング (深層学習) 機械学習 拡散モデル 画像生成 AI 音声認識 AI 画像認識 AI … … … AI (人工知能) ルールベースAI 記号推論 ニューラルネットワーク 生成系AI (Generative AI) 文章や画像など新しいものを 作り出すことができるAI ベイズ推定 遺伝的 アルゴリズム ニューラルネットワークを高度化した ディープニューラルネットワークを用 いる手法をディープラーニングと呼ぶ。 LLM: Large Language Model

Slide 48

Slide 48 text

48 素朴なAI ルールベースAIの例 • あらかじめ人間がルールを考え、プログラミングを行ないます • ルールを数多く用意することで、複雑な状況に対応することができます • 対象の課題によってはルールベースAIの方が適していることもあります 1. 部屋の気温・湿度を測定します 2. 気温・湿度から不快指数を計算します 3. 不快指数が75未満ならなにもしません 4. 不快指数が75以上の場合 1. 気温が28℃以上の場合はエアコンを稼働します 2. 気温が28 ℃未満で、湿度が60%以上なら除湿機を稼働します

Slide 49

Slide 49 text

49 自然言語を理解する手法 自然言語 (話し言葉) をAIが理解するための二つのアプローチ 記号推論的方法 ディープラーニング的手法 (ニューラルネットワーク) ChatGPTはこちら りんごは何色ですか? について回答する場合。 質問の中身をAIが理解する 質問の中身をAIが理解していない ※それぞれ大雑把な解説です 矛盾した回答を行なう可能性が低い (知らないことは知らないと回答する) 矛盾した回答を行なう可能性が高い (知らないことでもそれっぽく答えてしまうことが多い)

Slide 50

Slide 50 text

50 記号推論の例 (概要) 質問の中身を理解し「知識データベース」に基づいて答える りんご 名詞,一般,*,*,*,*,りんご,リンゴ, リンゴ,, は 助詞,係助詞,*,*,*,*,は,ハ,ワ,, 何 名詞,数,*,*,*,*,何,ナン,ナン,, 色 名詞,接尾,助数詞,*,*,*,色,ショク, ショク,, です 助動詞,*,*,*,特殊・デス,基本形, です,デス,デス,, か 助詞,副助詞/並立助詞/終助 詞,*,*,*,*,か,カ,カ,, ? 記号,一般,*,*,*,*,?,?,?,, 単語 DB 形態素解析 • 疑問文である • 対象は「りんご」 • 「色」について回答 文法 ルール 知識 DB りんごは何色ですか? りんごは赤色です りんごについて 形 丸い 色 赤い 味 甘い 文法解釈 推論 知識検索

Slide 51

Slide 51 text

51 LLM (ディープラーニング)による推論の例 質問の中身を理解せず、演算だけで回答を作っている りんごは何色ですか? トークン化 演算(推論) [28255, 22174, 2515, 242, 31676, 19526, 243, 164, 231, 110, 30640, 33623, 27370, 171, 120, 253, 198] パラメータ 3550億 (GPT-3.5) [12675, 6527, 17933, 31676, 164, 113, 97, 164, 231, 110, 30640, 33623, 198] りんごは赤色です 出力 https://platform.openai.com/tokenizer 単なるデータ(数値)の羅列であり、文章として何らかの法則などが考慮されているわけではない。 AIが「知識」を持っているように感じられるが、明示的な知識データベースを持っているわけではない。 講演後の補足・お詫び OpenAI社はGPT-3.5のパラメータ数を公表しておらず、「3550億」に典拠はありませんでした。

Slide 52

Slide 52 text

52 LLM (ディープラーニング)における学習の例 学習によりパラメータが変化し、期待する回答が出力されやすくなる りんごは何色ですか? トークン化 演算(推論) [28255, 22174, 2515, 242, 31676, 19526, 243, 164, 231, 110, 30640, 33623, 27370, 171, 120, 253, 198] パラメータ (学習前のモデル) [2919, 2515, 110, 2515, 232, 171, 121, 242, 171, 121, 230, 22174, 171, 121, 223, 171, 121, 229, 171, 121, 242, 171, 120, 242, 198] 08ひおthんagt4 出力 りんごは赤色です 期待する回答 学習前モデルの回答 差分をパラメータに反映 ※ディープラーニングの学習方法はいくつかあります。その中でも「教師あり学習」のイメージです。 こうした学習を大量の「学習データ」に対して行なうことで、パラメータの汎用性が高まります。

Slide 53

Slide 53 text

53 従来のLLMとOpenAI GPTの違い 事前学習とファインチューニング 一般的な 文章 事前学習 微調整 教師なし学習 (学習前) モデル モデル (言語知識を獲得) (調整済み) モデル モデル (専門知識を獲得) 専門知識 ファインチューニング 教師あり学習 RLHF・強化学習 WebやSNSなどから大量に収集した文章。 公開された論文などの文章。 が使われることが多い。 • リンゴを買いました。丸くて(赤い)リンゴはとても甘かった。 • リンゴを買いました。丸くて( )リンゴはとても甘かった。 収集した文章を穴埋め問題のようにして、AIの学習に利用する。 従来のLLMでは、事前学習により言語知識を獲得した後、 ファインチューニングにより専門的な知識を獲得すると いう手順が一般的。 OpenAI GPTでは、事前学習を極めて大量に行なうこと により、ファインチューニングがなくても様々な質問に 回答できるようになったのが特徴。

Slide 54

Slide 54 text

54 ディープラーニング (ニューラルネットワーク) の中身 人工知能関係でよく見かけるイラストの意味 出力 前段のノードに入力された信号を、次段どの程度に伝えるかの重み付け = パラメータ 入力 ノード 最近使われているニューラルネットワークでは、ノード数・段数ともに巨大になっている。 ニューラルネットワークで推論を行なう際には巨大な行列演算を行なうことになる。

Slide 55

Slide 55 text

55 ディープラーニングのLLM以外の応用例 ディープラーニングを使って「ラーメン二郎」の画像から 店舗を識別する取り組み (2017) Large Scale Jirou Classification - ディープラーニングによるラーメン二郎全店舗識別 https://www.slideshare.net/knjcode/large-scale-jirou-classification ディープラーニングでラーメン二郎(全店舗)を識別してみた https://www.slideshare.net/knjcode/ml1517-81310584 ラーメン二郎は関東に41店舗あるラーメン店 のれん分けを繰り返しており、店舗によって微妙 な違いがあることがマニアには知られている。 (普通の人には違いが分からない) ディープラーニングはこの例のように、人間には 分からない違いを見つけることが得意。 (ただし、なぜそのように判定したのかの理由は分 からない)

Slide 56

Slide 56 text

56 ディープラーニングと説明責任 AIがある結果を出した場合、その理由を追跡できるか? • 例えば記号推論であれば、理由の追跡は可能 • ディープラーニングでは理由を追跡することは困難 ChatGPT (LLM) でも「なぜその応答をしたか」の理由は追跡できない • 業務利用において、ChatGPTが何かの判断を行なった場合でも、なぜその判断 になったのかを追跡することは不可能 • 「説明責任」が求められる業務への利用は注意が必要 (理由を追跡できるようにするための研究が行なわれていますが、実用レベルに到達するか未知数)

Slide 57

Slide 57 text

57 ディープラーニングとルール ディープラーニングはルールに従うことができるか • 記号推論などと異なり、ディープラーニングは明確なルールや知識を持たない • あくまで、学習の結果「適切な結果」が出力されやすくなるというもの • ルールに沿った出力が行なわれることが保証されているわけではない ChatGPT (LLM) がルールを守ることは保証されない • プロンプトに様々なルールを書いても、それが守られる事は保証されない • 「法律や施策、契約条件などに適合しているか」を判断させることは困難 「概ね成功する」と、 「必ず成功する」は全く違う。 ChatGPTは「四則演算」ができるように見えるが、「四則演算」のルールを知っているわけではない。

Slide 58

Slide 58 text

58 LLMと業務利用 業務にLLMを持ち込む場合は、ディープラーニングの特性に留意が必要 「ルールを守ることが保証されない」「判断の理由が追跡できない」 • 業務の中には、ルールを外れると「事故」扱いになることも • 事故が起った場合「原因の分析」「再発防止策」が求められる • LLMではなぜその判断が行なわれたかの追跡が不可能 • 「原因」も説明できず、「再発防止策」も立てられない (そこまで厳密でもない業務であれば良いのですが……)

Slide 59

Slide 59 text

59 LLMを単独で利用しない LLMの不適切な動きを抑えられるような使い方を考える 処理 LLM • 会話がルールに適合しているかの判定 • 会話記録取得など LLM (ChatGPT) を使った対話システム お客様 LLM LLMの外部にルール違反を検知するプログラムを用意。 「言ってはいけないこと」のチェックなど。 LLMに大量に回答を生成させ、 人間が都合の良い回答だけを採用する。 LLM (ChatGPT) に文章を作らせる スタッフ プロンプト 回答 回答 回答 回答 NG NG

Slide 60

Slide 60 text

60 LLMと倫理観 ChatGPTは「爆弾の作り方」に回答しません。 非倫理的な回答を行なわないようにモデルがチューニングされています。 プロンプトを工夫することで 回答させることもできるようです。 (ルールを守ることが保証されない)

Slide 61

Slide 61 text

61 LLMに倫理観を学習させる OpenAI GPTでは「学習データ」と「微調整」で倫理観を学習 学習データ 2021/09時点 事前学習 微調整 人間からのフィードバック ChatGPTで使用 RLHF 教師なし学習 (学習前) モデル (学習済み) モデル (調整済み) モデル インターネットなどから入手した文章を学習に 利用するが、事前に人手で学習すべきでない データを取り除いている。 わざと非倫理的な回答を要求するプロンプトを 入力し、結果を観察。回答すべきではない応答 があった場合、「不適切」というフィードバッ クを行なうことで、回答を避けるように誘導。

Slide 62

Slide 62 text

62 異なる倫理観 • 学習データに細工をすることで、AIの回答はコントロールできる。 • 意図的に特定の回答を行なわないようにもできる • 爆弾の製法を答えないのは「倫理的に正しい」かもしれない • 国・地域・文化によって異なる「倫理観」の場合は? • 倫理と異なる理由 (例えば政治的意図) で回答が隠された場合は? LLM スタッフ プロンプト 回答 回答 回答 回答 NG NG 回答 回答 • 回答の中から、NGを除外するのは簡単。 • 出力されなかった回答候補があることに、 AI利用者が気づくことは困難。

Slide 63

Slide 63 text

63 AIのリスク AIがおかしなことを言うのは大きな脅威ではない。 (見る人が見れば気づく事もできる) AIが言わなかったことに気づけないのが脅威。 (そこに誰かの意図が潜んでいるかもしれない) 嘘・間違い LLM (ディープラーニング)では、「なぜ言わなかったのか」の検証は不可能。 (そこまで)

Slide 64

Slide 64 text

64 現在のAIの悩ましいところ 現在提供されているAIの多くは「クラウド型」(API呼び出し型) • AI提供者がAIを開発・学習させ、管理する • 利用者は、「API呼び出し」でAIを利用する 「クラウド型」の悩ましい点 • 多くの場合、利用者はAIの管理に関与できない (利用者全員が同じモデルを利用することが多い) • AIがどのような意図に基づいて管理されているか、分からない →「自分専用のAI」を持てば良いのか……?

Slide 65

Slide 65 text

65 これからのAIとの付き合い方

Slide 66

Slide 66 text

66 様々なAI ChatGPT登場と前後して、様々なLLMが登場しています Google Bard (PaLM 2) Google Japan Blog: Bard が日本語に対応 (2023.05.11) https://japan.googleblog.com/2023/05/bard.html Rinna Japanese-GPT-neox rinna、日本語に特化した36億パラメータのGPT言 語モデルを公開 (2023.05.17) https://rinna.co.jp/news/2023/05/20230507.html CyberAgent OpenCALM サイバーエージェント、最大68億パラメータの日 本語LLM(大規模言語モデル)を一般公開 ―オー プンなデータで学習した商用利用可能なモデルを 提供― (2023.05.17) https://www.cyberagent.co.jp/news/detail/id=28817 NICT 日本語に特化した大規模言語モデル(生成AI)を 試作 (2023.07.04) https://www.nict.go.jp/press/2023/07/04-1.html ※ここに取り上げたのは一部です (ニュースを追いかけ切れていません) NEC 大規模言語モデル(LLM)を開発 (2023.07.06) https://jpn.nec.com/rd/technologies/202308/index.h tml 富士通 スーパーコンピュータ「富岳」政策対応枠におけ る大規模言語モデル分散並列学習手法の開発につ いて (2023.05.22) https://pr.fujitsu.com/jp/news/2023/05/22.html

Slide 67

Slide 67 text

67 AI開発の支援 日本政府(経産省)はAI開発のためのコンピュータの拡充を図っています • LLMの学習には非常に大量の計算が必要 • 高性能なLLMの開発のためには、学習を何度も試行することが必要 さくらインターネット さくらインターネット、生成AI向けクラウドサービス開始へ (2023.06.16) https://www.sakura.ad.jp/corporate/information/newsreleases/2023/06/16/1968211860/ SoftBank 経済産業省による「クラウドプログラム」の供給確保計画の認定について~生成AIの基盤開発に必要 な計算環境を産学官へ幅広く提供~ (2023.07.07) https://www.softbank.jp/corp/news/press/sbkk/2023/20230707_01/ 産業技術総合研究所 ABCI 大規模言語モデル構築支援プログラム (2023.07.12) https://abci.ai/ja/link/llm_support_program2023_guideline.html ※産総研が運用するAIスパコンを優先的に提供 経済安全保障推進法 クラウドプログラム (METI/経済産業省) https://www.meti.go.jp/policy/economy/economic_security/cloud/index.html ※一定の条件を満たしたクラウド(AI向けを含む)の構築に補助金を支出 (学習の方が推論よりも圧倒的に計算量が多い)

Slide 68

Slide 68 text

68 LLM開発の方向性 (筆者予測) これから登場するLLMはどういう方向を目指すのか • LLMと他システムの連携 • これまでのLLMは人間との「会話」が注目されていた。 • LLM=人間ではなく、LLM=システムの連携が模索される。 • 軽量化 • 「モデルのパラメータ数が多ければ高性能」と言われているが、 大規模なモデルは推論のために高価なGPUが必要になる。 • 少ないパラメータ数で高い性能 or 必要十分な性能を確保する方向。 • 英語以外への対応 (日本語対応) • OpenAI GPTは日本語対応が苦手。 • 日本語に特化したLLMを目指す方向性もある。 • AIの安定性 • OpenAI GPTは実験要素が強く仕様変更が激しい。

Slide 69

Slide 69 text

69 LLMのトークナイザと言語 LLM (ディープラーニング) では文章を token に分解して処理する ChatGPTで使用されているトークナイザ(tokenに分解する仕組み)の分解例 https://platform.openai.com/tokenizer [163, 100, 223, 15474, 238, 235, 30298, 235, 31676, 40792, 34932, 236, 30640, 33623, 16764] [3666, 1438, 318, 299, 461, 5733, 13] ※漢字一文字が複数のtokenに分解されている ※概ね一単語が1tokenで扱われる 同じ意味の文章(日本語・英語)をChatGPTが解釈するときの違い。 単純な文章でも、日本語の方が2倍複雑に解釈されている。(日本語は効率が悪い) 長文になるとこの差はますます顕著になる。日本語ではChatGPTの真の力を生かし切れていない。 ※プロンプトエンジニアリングでは英語を使う方が良い

Slide 70

Slide 70 text

70 AIの提供形態 想定されるAIの提供形態のバリエーション クラウド型 (API提供型) モデル提供型 AI提供事業者がAIモデルと 推論用コンピュータを管理・提供する AI提供事業者は、AIモデルを提供し AI利用者が推論用コンピュータを用意する 利用者に高度なAI技術や高価な設備が不要 AIの中身に関与できない 機微情報の管理にまつわる課題 利用者が設備の調達・管理を行なう必要がある 利用者自身がAIの学習を行なう場合もある AI提供事業者の意向に左右されず利用できる (オンプレミスorクラウド) 中間型: AI提供事業者がモデル・コンピュータを提供するが、ある程度利用者のカスタマイズができる形態 例) Microsoft Azure OpenAI Service OpenAIが開発したAIモデル(GPTなど)をMicrosoftのクラウドで実行。ある程度のカスタマイズが可能。 ChatGPT OpenAI GPT

Slide 71

Slide 71 text

71 モデル提供型の提供形態 様々な学習段階のモデルの提供が考えられます 一般的な 文章 事前学習 微調整 (学習前) モデル モデル (言語知識を獲得) (調整済み) モデル モデル (専門知識を獲得) 専門知識 ファインチューニング (1) (2) (3) (1) 事業者から提供されたモデルはそのままでは利用できない。 利用者側で事前学習のための大量のデータを用意する必要があり、一般的な用途には不向き。 (2) 利用者専用のモデルを作るためのベースとして事業者が提供。利用者側で専門知識を学習させる想定。 AIビジネスとしてはこの形態が増えるのではないかと予想。 (3) 利用者からAI提供事業者に学習データを提供し、事業者側で学習を行なった後「専用モデル」として 利用者に納品されるようなビジネス形態が考えられる。

Slide 72

Slide 72 text

72 マルチAI時代 今後のAI (LLM) 情勢の予測 • 現在はChatGPT (OpenAI GPT) が特に注目されている (AI一強状態) • 今後は多種多様なAI (LLM) が登場し、利用されると思われる (マルチAI時代) • 中には提供終了するAIも発生するものと思われる マルチAI時代に必要なこと • 「AI(LLM)全般に共通する知識」と「特定AI(LLM)限定の知識」を区別すること • 「この業務にはこのプロンプトが有効」 → ChatGPT限定 • 他のLLMでは全く違った結果を返す可能性がある。一般化できない。

Slide 73

Slide 73 text

73 AI利用のために知っておく方が良いこと 昨今の「AIブーム」に対して、摩擦・問題提起も起っています 最終的には社会的コンセンサスの形成を待つしかありません。 今回は「モデルの学習」に関わる以下の二つについて取り上げます。 • 学習データの著作権について • 学習データ準備の現場における搾取的な労働

Slide 74

Slide 74 text

74 AIと著作権 (文化庁の解説) 日本では文化庁が「AIと著作権」について解説しています。 以下三つの観点について独立して検討することが必要。 • AIの学習に他人の著作物(文章・画像など)を利用すること • 個別の許諾は不要と考えられる (著作権法30条の4) • ただし、著作権者の利益を不当に害する場合を除く★ • AIが生成した文章・画像が他人の著作物に類似していた場合 • 「AIが生成したか」と無関係 (人が書いた・描いたものと同じように判断) • 他人の著作物に対し「類似性」「依拠性」があれば、権利侵害となる★ • AIが生成した文章・画像などに著作権は発生するか • AI利用者の「創作意図」「創作的寄与」があれば権利は発生する ※AIサービスのライセンスの確認も必要 (ChatGPTは生成物の権利は利用者に帰属する) 令和5年度著作権セミナー「AIと著作権」の講演映像及び講演資料を公開しました。 | 文化庁 https://www.bunka.go.jp/seisaku/chosakuken/93903601.html ★司法による個別具体的 な判断が必要

Slide 75

Slide 75 text

75 AIと著作権 (業務上の対応) 文化庁の解説 (現行法の解釈) では、AIに有利な状況に見える • しかし、異論・反論も多いのが実際 • 特に「自分の文章・画像をAI学習に利用される」事への拒否反応 • 法律の解釈を超えたところで、感情的な衝突に発展しているケースもある • 「業務にAIを利用している」と公表するとこの種の争いに巻き込まれる恐れ • AI利用のリスクの一つとして把握しておくことが必要 • 原則論として「現行法では適法と考えられる」ことを説明できるように • 今後の法改正やガイドライン制定については注目が必要 アメリカでの事例 Googleら、AIツールの訓練で数億人のユーザーからデータを盗んだとして提訴される (PC Watch, 2023.07.12) https://pc.watch.impress.co.jp/docs/news/1515997.html 告訴状では、Googleが「これまでにインターネット上で何億人ものアメリカ人が作成し共有したものすべてを密かに盗み」、 このデータを同社のチャットボット「Bard」などのAI製品のトレーニングに使用していると主張。

Slide 76

Slide 76 text

76 搾取的な労働についての指摘 AI(LLM)の学習データの準備に、低賃金の労働者が使用されているとの指摘 ChatGPTが持つダークサイド 低賃金労働者搾取とバイアスの問題 (Forbes JAPAN 2023.02.08) https://forbesjapan.com/articles/detail/60672 オープンAIは、ChatGPTの暴力性や性差別、人種差別を抑制するため、ケニア人労働者を時給2ドル(約260 円)未満の低賃金で雇い、ChatGPTが有害なコンテンツを認識できるようにする作業を行わせた。このため に雇われた人々が、米誌タイムに対して匿名を条件にその実態について語っている。 ある労働者は、学習用の文章は残虐な内容のもので、それを読んで分類する作業は「拷問」のようだったと 語った。ジェネレーティブAI(生成系AI)の開発に発展途上国の労働力の搾取が必要となることは、見過ご されがちな事実だ。 ChatGPTの闇、AIのために働く低賃金の人間 (ギズモード・ジャパン 2023.05.11) https://www.gizmodo.jp/2023/05/chatgpt-openai-ai-contractors-15-dollars-per-hour.html たくさんの人間をサポートするAIのサポートをする人間。時給15ドル(約2,000円)の彼らの存在が見過ごさ れている現状を、米メディアが報じています。 (略) Savreuxさんの仕事であるラベリングは、AIのトレーニングシステムがよりわかりやすく学習できるよう、膨 大なデータセットの中の特定アイテム(画像やテキストなど)をジャンル分けし、ラベルをつけていく作業 のことです。 ※以下の記事の指摘の真偽は不明

Slide 77

Slide 77 text

77 AI開発の実態 AIの開発は非常に泥臭い・労働集約的な側面もある • 大量の労働力の確保はどの事業者にとっても課題 • AIの開発競争が活発化すると、他事業者でも類似の状況になる可能性 • 国内外・ベンチャー・大企業問わず起こりうる • AI利用者はこれらの道徳上の課題をどれだけ意識すべきか • こういった開発の状況を利用者が知ることは困難 • 今のところは大きな話題にはなっていない • 今後は「道徳的に開発・学習されたAI」というカテゴリが登場するかも

Slide 78

Slide 78 text

78 これからのAIとの付き合い方 • ChatGPTによって「生成系AI」(LLM)が一般化しました • 「業務にAIを取り入れる」ことが一般化する気配です • ChatGPTは実験的な要素も強いですが、工夫をすれば業務にも使えます • 「ChatGPT以外のAI」も多数登場しています • 様々なAIが性能・特色を競い合うことが予想されます • AIの提供形態のバリエーションも増えます • 自分の業務に必要なAIを選ぶことが重要になります • 特定AI限定のテクニックではなく、広い視点で情報収集を! • 今回のお話が参考になれば幸いです