Slide 1

Slide 1 text

データアナリティクス事業本部 インテグレーション部 機械学習チーム 貞松 政史

Slide 2

Slide 2 text

セッション中に出てくる⽤語の定義 2 AI/ML • ⼈⼯知能分野、および内包される機械学習領域全般を指す • 実際のところは、ほぼ機械学習領域について⾔及する AI/ML課題 • AI/MLに関する技術を⽤いたアプローチでしか解決が難しい課題 • あるいはAI/MLに関する技術を⽤いて解決することが望ましい課題 • 主にビジネス的な課題を指す AI/MLエンジニア • AI/ML領域に特化し、主にAI/ML課題を解決することを⽣業とするエンジニア • レイヤーや活⽤するツール、サービス、事業ドメイン等は限定しない

Slide 3

Slide 3 text

急にChatGPTとかいうのが 流⾏りだした… ⽣成AIって画像⽣成するやつ だけじゃないんか… ちょっと前までのAIとか機械学習に 関しても全然ついていけてない…

Slide 4

Slide 4 text

⼀般的なAI/ML課題と解決アプローチを整理 基盤モデルや⽣成AI等の 最新トレンドをキャッチアップ 今後AI/MLとどう向き合うのか どう活⽤するのかを考える

Slide 5

Slide 5 text

スピーカー情報 ⽒名 貞松 政史 (サダマツ マサシ) 所属 データアナリティクス事業本部 インテグレーション部 機械学習チーム マネージャー ※ Machine Learning カテゴリ 5

Slide 6

Slide 6 text

おしながき 6 • ⼀般的なAI/ML課題と解決アプローチ • AI/MLの最新トレンドキャッチアップ • 3⾏まとめ • 基盤モデル • ⽣成AIモデル • 今後のAI/MLとの向き合い⽅ • ツールとしての活⽤ • インテグレーション • 独⾃開発 • まとめ

Slide 7

Slide 7 text

⼀般的なAI/ML課題と解決アプローチ 7 • ⼀般的なAI/ML課題と解決アプローチ • AI/MLの最新トレンドキャッチアップ • 3⾏まとめ • 基盤モデル • ⽣成AIモデル • 今後のAI/MLとの向き合い⽅ • ツールとしての活⽤ • インテグレーション • 独⾃開発 • まとめ

Slide 8

Slide 8 text

AI/ML課題の整理 8 データソースの種類 • トランザクションデータ • テキスト • 画像 • 動画 など 機械学習課題の種類 • 分類、予測、異常検知、レコメンデーション • ドキュメント分類、キーワード抽出 • 画像分類、物体検出 など Transaction Text Image Movie

Slide 9

Slide 9 text

AI/ML課題の整理 9 適⽤される領域(事業ドメイン)毎の課題 • 流通・⼩売 • 需要・売上予測、在庫予測、⾃動発注、レコメンデーション など • 製造 • 異常検知、故障予測、予知保全 など • ⾦融 • 不正検出 など • エンターテイメント・ゲーム • ⾒込み顧客判定、離反予測、不正検出、レコメンデーション など

Slide 10

Slide 10 text

AI/ML課題に対する解決アプローチ 10 既存のツール・サービスを活⽤ • 既存のAI/ML系のクラウドサービスやサードパーティ製品を活⽤ • システム化する際のインフラとしてもクラウドを活⽤ 最新の⼿法(アルゴリズム)を適⽤ • 最新の論⽂等で紹介されている⼿法を適⽤ • AI/ML⽤のフレームワークやライブラリを活⽤ 独⾃⼿法(アルゴリズム)の開発 • 既存のサービスや⼿法では対応できない場合の最終⼿段 • 既存の⼿法を応⽤したり、フレームワークやライブラリを活⽤する

Slide 11

Slide 11 text

活⽤するツールやサービス 11 クラウドサービス • AWS、Google Cloud など フレームワーク・ライブラリ • TensorFlow、PyTorch など アルゴリズム • 画像処理 • YOLO系、ResNet系 • ⾃然⾔語処理 • BERT系 • テーブルデータ • XGBoost、LightGBM など

Slide 12

Slide 12 text

AI/MLの最新トレンドキャッチアップ 12 • ⼀般的なAI/ML課題と解決アプローチ • AI/MLの最新トレンドキャッチアップ • 3⾏まとめ • 基盤モデル • ⽣成AIモデル • 今後のAI/MLとの向き合い⽅ • ツールとしての活⽤ • インテグレーション • 独⾃開発 • まとめ

Slide 13

Slide 13 text

最近のAI/MLトレンド 3⾏まとめ 13 基盤モデルの出現により、それらを活⽤した ⽣成AIモデルが登場 ⽣成AIモデルを組み込んだ新たなサービスが台頭 専⾨知識、技術なしに画像やテキスト、⾳声等の コンテンツを⽣成できるようになった ※もちろんツール、サービスの使いこなしは必要

Slide 14

Slide 14 text

基盤モデル (Foundation Model) 14 • ⼤量のデータを使ってトレーニング • 幅広い下流タスクに適応できるように再トレーニング • 1つの基盤モデルで多様なタスクに適応できる 基盤モデルの例 GPT-n (⾔語モデル) https://openai.com/gpt-4 DALL-E (画像⽣成モデル) https://openai.com/dall-e-2

Slide 15

Slide 15 text

⽣成AIモデル 15 Stable Diffusion • 画像⽣成AIモデル • テキストに基づく画像⽣成(text-to-image) https://github.com/Stability-AI/stablediffusion ʮ৐അ͢ΔӉ஦ඈߦ࢜ͷࣸਅʯͱ ࢦఆͯ͠ੜ੒͞Εͨը૾ テキスト、画像、動画、⾳楽、プログラムコードなどの新しいコンテンツを作成 ⼤量のデータとコンピューティングパワーによる学習に基づく Codex • プログラムコード⽣成AIモデル • ⼤量のテキストとソースコードを⽤いて 学習されたGPT-3の後継モデル • GitHub Copilotの中⾝ https://openai.com/blog/openai-codex

Slide 16

Slide 16 text

最近流⾏りの⽣成AIサービスと⾔えば… 16 ChatGPT https://openai.com/chatgpt • OpenAIが開発した⼤規模な⾃然⾔語処理モデルの1つ • ⼤規模⾔語モデル (LLM: Large Language Model)を ⽤いて⼈間のような会話を⽣成することが可能 • 前⾝となるInstructGPTと同じアプローチ • ⼈間からのフィードバックを得て強化学習を実⾏ • データ収集の⼿続きに違いがある • GPT-3.5をファインチューニングしている • 2023/3/6にAPI公開 • 2023/3/15にGPT-4をリリース • 2023/6/14にFunction API ←new!

Slide 17

Slide 17 text

なぜChatGPTが急激に流⾏ったのか 17 ChatGPTはモデル性能に加えて、インタラクティブ(対話形式) UIが世間⼀般的に思い描く「AI」の体験を提供した

Slide 18

Slide 18 text

⽣成AIモデルができること・できないこと 18 ⽣成AIモデルは万能ではない できること • コンテンツ⽣成 (テキスト、画像、⾳楽、動画 など) • (⾔語モデルについて) 要約、翻訳、質問への回答等 できないこと • 分類、予測、異常検知、物体検出、⾳声認識、強化学習 など • 主にドメイン固有のデータに基づくもの ※今後のアップデートによる解決の可能性を否定するものではない

Slide 19

Slide 19 text

現時点で存在するツールの数々は ⽣成AIモデルを活⽤しながらも 様々な⼯夫や作り込みが成されている AI/ML課題解決の為には従来通り 搭載するアプリケーションの作り込みや 従来⼿法との組み合わせが必要

Slide 20

Slide 20 text

今後のAI/MLとの向き合い⽅ 20 • ⼀般的なAI/ML課題と解決アプローチ • AI/MLの最新トレンドキャッチアップ • 3⾏まとめ • 基盤モデル • ⽣成AIモデル • 今後のAI/MLとの向き合い⽅ • ツールとしての活⽤ • インテグレーション • 独⾃開発 • まとめ

Slide 21

Slide 21 text

今後のAI/MLとの向き合い⽅ 21 ツールとしての活⽤ • 主に⽣成AIの話 • AI/MLが組み込まれたツールを業務などで活⽤ インテグレーション • アプリケーションへの組み込み • 従来⼿法と最新⼿法の組み合わせによる改善や改良 独⾃開発 • 独⾃アルゴリズムの研究・開発 (R&D) • 既存モデルからの転移学習やファインチューニング

Slide 22

Slide 22 text

ツールとしての活⽤ 22 LLMを活⽤したツール • ChatGPT • https://openai.com/chatgpt • Code Interpreter (ChatGPT Plusユーザーのみ、ベータ版) • 各種プラグイン (ChatGPT Plusユーザーのみ) プログラムコード⽣成AIモデルを活⽤したツール • 各種エディタ(VSCode, JetBrains製品など)のプラグインとして導⼊ • GitHub Copilot • https://docs.github.com/copilot • Amazon CodeWhisperer • https://aws.amazon.com/jp/codewhisperer/

Slide 23

Slide 23 text

ツールとしての活⽤ 23 画像⽣成AIモデルを活⽤したツール • Stable Diffusion • text-to-imageモデル以外にも、⼊⼒画像と似た構図で画像を⽣成したり、部分的に 書き換えてくれるimage-to-imageモデルもある • https://github.com/Stability-AI/stablediffusion • Midjourney • Discordをインターフェースとするtext-to-imageモデル • 2次元イラストに特化した「にじジャーニー」もある • https://www.midjourney.com/

Slide 24

Slide 24 text

インテグレーション 24 従来のAI/MLサービスやツールを活⽤したインテグレーション • AWS、Google Cloud、Azure等のAI/MLサービスを活⽤ • 公開されている事前学習済みモデルを利⽤ ⽣成AIを活⽤したインテグレーション • OpenAI APIの活⽤ • ChatGPTプラグインの開発 • チャットアプリケーションの開発

Slide 25

Slide 25 text

従来のAI/MLサービスやツールを活⽤したインテグレーション 25 ETL処理 レコメンド生成処理 データソース AWS Cloud ECサイト等 リアルタイムレコメンド (APIリクエスト) バッチレコメンド (S3に結果をまとめて格納) Amazon API Gateway バッチレコメンド結果の一括取得 (APIリクエスト) Amazon Personalizeを活⽤したレコメンデーションの例 AI/MLのコア要素以外に必要な機能をサービスインテグレーションで解決 AI/MLのコア要素 AWS、Google Cloud、Azure等のAI/MLサービスを活⽤

Slide 26

Slide 26 text

従来のAI/MLサービスやツールを活⽤したインテグレーション 26 公開されている事前学習済みモデルを利⽤ • 解決したい課題に合わせて、事前学習済みモデルをデプロイして 推論の処理部分を構築する • TensorFlow Hub • https://www.tensorflow.org/hub • PyTorch Hub • https://pytorch.org/hub/ • HuggingFace • https://huggingface.co/

Slide 27

Slide 27 text

⽣成AIを活⽤したインテグレーション 27 OpenAI APIの活⽤ • OpenAI APIとは • OpenAI社が提供するAPI • OpenAI社が開発した⾔語モデル「GPT」や⾳声⽂字起こし「Whisper」 などをHTTPのREST APIとして利⽤可能 • API KEYを使⽤すれば従量課⾦で⾃社プロダクトやサービスに モデルの機能を統合可能 • 利⽤⽅法は容易 ・Googleアカウントなどでサインアップ ・API KEYを⽣成すれば利⽤可能

Slide 28

Slide 28 text

⽣成AIを活⽤したインテグレーション 28 curlを使ったリクエスト例 • パラメータとしては"model"と"messages"が必須 • "messages"は"role"と"content"のペアのリスト • "role"には、"system"、"user"、"assistant"を指定可能 curl https://api.openai.com/v1/chat/completions ¥ -H "Content-Type: application/json" ¥ -H "Authorization: Bearer $OPENAI_API_KEY" ¥ -d '{ "model": "gpt-3.5-turbo", "messages": [ {"role": "system", "content": "Pythonのエキスパートとして質問に答えてください。"}, {"role": "user", "content": "Pythonの環境構築⽅法について教えてください。"}] }'

Slide 29

Slide 29 text

⽣成AIを活⽤したインテグレーション 29 ChatGPTプラグインの開発 • ChatGPTプラグインとは • ChatGPTの機能を拡張する為の追加モジュール • ChatGPT Plusのみ • 簡単にインストール/アンインストール可能 • ChatGPTのチャット画⾯に統合されたおり 特別な操作や記法を使うことなく そのまま利⽤可能 (参考) Tabelog Tech Blog - ⽇本初の挑戦〜⾷べログによるChatGPTプラグイン開発の舞台裏 https://tech-blog.tabelog.com/entry/first-challenge-tabelog-chatgpt-plugin-devleopment

Slide 30

Slide 30 text

⽣成AIを活⽤したインテグレーション 30 (update) ChatGPT Function calling • 0613のアップデート時に追加された機能 • APIが外部機能を使うかどうかをユーザのクエリから⾃動で判断 • 実⾏の流れは以下 1. ユーザの質問からどの関数を呼ぶかをChatGPTに決めてもらう 2. ChatGPTが決めた関数を呼び出して処理実⾏ 3. 関数の実⾏結果と最初の質問をChatGPTに渡して回答を⽣成する

Slide 31

Slide 31 text

⽣成AIを活⽤したインテグレーション 31 チャットアプリケーションの開発 • OpenAI APIやその他⾔語モデルを活⽤したチャットの機能を 組み合わせた独⾃のアプリケーションを開発するケース • LLMやそれに対するプロンプトを基本パーツとする • 外部ソース(独⾃データ)との接続や記憶(履歴)の仕組み、外部ツー ル・外部APIとの連携により実現 • LangChainやLlamaIndexなどを活⽤する

Slide 32

Slide 32 text

チャットアプリケーション開発 32 LangChain • チャットのアプリケーションを実現する様々なパーツと広範な仕組みを提供 • Model IO : 最⼩部品 • Data Connection : 外部ソース • Memory : 記憶の仕組み • Chain : 基本部品 • Agent(Chain) : ⾃動判別 • Tool : 外部ツール • 事実上のデファクトスタンダード(AWSやAzureとの組み合わせ) • プロンプトテンプレートや外部データの繋ぎ込み、外部ツール(外部API)との 連携でアプリケーションの機能を実現する

Slide 33

Slide 33 text

チャットアプリケーション開発 33 LlamaIndex • 事前学習済みのLLMをプライベートなデータで拡張することに特化 • 多様なインデックス構造やレスポンスモードが存在 Retriever 社内データ等

Slide 34

Slide 34 text

独⾃開発 34 • 独⾃アルゴリズムの研究・開発 (R&D) • 既存モデルからの転移学習やファインチューニング

Slide 35

Slide 35 text

独⾃アルゴリズムの研究・開発 (R&D) 35 • 論⽂からの実装や既存アルゴリズムからの改造など • ライブラリやフレームワークを活⽤して⾃前実装 • AI/MLのコア部分に注⼒ • コア部分以外は各種クラウドサービスやサードパーティ製品 協業などによりカバー

Slide 36

Slide 36 text

既存モデルからの転移学習やファインチューニング 36 転移学習 • 学習済みモデルの各層の重みは更新しない • 付け替えられた最終出⼒層および追加の出⼒層のみを使⽤して学習する • 例えば、⽝と猫と⼈間を分類するモデルを⽝と猫のデータで再学習させることで ⽝と猫を分類するモデルを作ることができる ファインチューニング • 学習済みモデルの各層の重みを微調整する • 学習済みモデルの重みを初期値とし、再度学習することによって微調整する • 学習済みモデルと全く異なるモデルを作ることができる (以下例) • ⽝と猫と⼈間を分類するモデル → 柴⽝とゴールデンレトリバーを分類するモデル • ⽝と猫と⼈間を分類するモデル → ⼈間を年代毎に分類するモデル

Slide 37

Slide 37 text

既存モデルからの転移学習やファインチューニング 37 公開されている事前学習済みモデルを活⽤する ⼿持ちの独⾃データを⽤いてファインチューニングを実⾏する (再掲) • TensorFlow Hub • https://www.tensorflow.org/hub • PyTorch Hub • https://pytorch.org/hub/ • HuggingFace • https://huggingface.co/

Slide 38

Slide 38 text

既存モデルからの転移学習やファインチューニング 38 • Amazon SageMaker JumpStartを利⽤ • デプロイまたはファインチューニングしたいモデルを⼀覧から選択(または検索) • 独⾃データを規定の形式でS3バケットに配置してファインチューニングを実⾏ • ファインチューニング後のモデルをエンドポイントに即時デプロイ可能 • https://aws.amazon.com/jp/sagemaker/jumpstart/ https://dev.classmethod.jp/articles/amazo n-sagemaker-jumpstart-fine-tuning-bert- base-multilingual-model/

Slide 39

Slide 39 text

まとめ 39 • ⼀般的なAI/ML課題と解決アプローチ • AI/MLの最新トレンドキャッチアップ • 3⾏まとめ • 基盤モデル • ⽣成AIモデル • 今後のAI/MLとの向き合い⽅ • ツールとしての活⽤ • インテグレーション • 独⾃開発 • まとめ

Slide 40

Slide 40 text

まとめ 40 • ⼀般的なAI/ML課題と解決アプローチを整理 • 基盤モデルや⽣成AI等の最新トレンドをキャッチアップ • ⽣成AIモデルは万能ではない • 従来⼿法による解決アプローチと並⾏して、最新⼿法を組み合わせた解決策を 模索していく必要がある • 今後はAI/MLが組み込まれたツールを活⽤したり、AI/MLを 組み込んだアプリケーションやソリューションを開発することで それぞれの課題を解決していく

Slide 41

Slide 41 text

No content