🚀 ニフティ’s Notion

【前半】機械学習と生成AI

機械学習とは

機械学習
機械学習とは、データを分析する方法の1つで、データから、「機械」(コンピューター)が自動で「学習」し、データの背景にあるルールやパターンを発見する方法。

出典: https://www.nri.com/jp/knowledge/glossary/lst/ka/machine_learning

学習 ルール・パターン発見 とは?

基本となる学習のイメージ

損失 を定義し、損失が小さくなる方向へ パラメータ を進めていく(学習させていく)

image block
深層学習の学習イメージ 出典:
損失とは? パラメータとは?

損失は尤もらしければ小さく、そうでなければ大きくなるようなものを自分で定義する。

image block
この図での損失は、誤差εの総和平均 出典: 本質を捉えたデータ分析のための分析モデル入門 p.37
ビジネスにおける機械学習プロジェクト
  • データからモデルを作り、予測することは、機械学習プロジェクトにおける一つの仮定に過ぎない
  • 現場では課題の選定・データの収集・整形(構造化)を経て、モデル作成
  • モデルを作って終わりではない
    • 運用Phaseが存在
    • 学習ー>予測ー>改善ー>データ取得ー>学習ー>・・・
      • 新たなデータに対してモデルを学習させ、予想性能を常に上げる必要がある
    • 障害対応ももちろん必要
image block
出典:

本講義では他社の提供する生成AIの利活用に焦点を当てていきます。

自然言語処理

💡
“自然言語”って?

読んで字のごとく、「人間が日常的に使用する日本語や英語などの 自然な言語 のこと」

対比として、プログラミング言語などは人工言語と呼ばれる

  • 自然言語処理とは、自然言語をコンピュータに処理・分析させる技術のこと
  • 自然言語は曖昧さを含んでおり、同じ言葉でも話す人物や文脈によって違う意味を示すことがある
    image block
    image block
    出典:

  • こういった言葉の曖昧性を踏まえて、自然言語を使って書かれた膨大なデータを実用的に扱うために、自然言語処理という技術が使われている

どうやるか

形態素解析

文章を言語上の最小単位である「形態素」ごとに分割し、それぞれの形態素を適切に形容詞・助詞・接続詞などの品詞に割り当てていく作業のこと

image block

英語のように単語を切り離して分かち書きする言語はこの作業は楽
日本語は分かち書きをしないので単語の区切りを特定する必要があり、難しい

構文解析

形態素解析で抽出した形態素が、他のどの形態素と隣り合わせになっているか確認する作業のこと

image block
出典:
意味解析

構文解析で得た解釈から正しい解釈を探す

「私は友人と美味しいお菓子を食べました」

「私」と「友人」は関係性が高い(同じ名詞でいずれも人間の名称である)

「友人」と「美味しい」は関係性が低い(名詞と形容詞、適切ではない形容詞)

「美味しい」と「お菓子」は関係性が高い(「お菓子」は食物の名詞、「美味しい」は形容詞)

→ 「私は友人と、美味しいお菓子を食べました」が正しい解釈

引用: https://www.skillupai.com/blog/tech/nlp/

文脈解析

複数の文章について、形態素解析、構文解析、意味解析を実施し、文章同士の関係性を解析する

どんな問題を解決できるか

テキスト分類
  • テキストの内容に基づいて、事前に定義したカテゴリへ分類する
    • 電子メールのスパム判定
    • 感情分析
テキスト要約
  • テキストの内容を主な事柄と全体的な意味を維持しながら、元のテキストより短い要約文を生成する
    • @niftyニュースの3行要約
機械翻訳
  • ある言語から別の言語に変換する
    • Google 翻訳
対話
  • 入力されたテキストの質問文に応じて、もっともらしい回答文を生成する
    • Siri
    • Alexa

自然言語処理の歴史

〜〜〜ニューラルネットワーク以前〜〜〜
🧑‍💻
自然言語処理はパターンマッチングや!
ELIZA
  • 1964年に開発された
  • このワードが来たらこれを返す
  • 単純なif文の羅列
  • いわゆる人工無能
image block
出典:
IBM Watson
  • IBMによって開発された質問応答AI
  • 2011年にTVのクイズ番組において人間と対戦し勝利
  • 問題文に対して全探索しながら100以上のアルゴリズムで回答を絞り込む

〜〜〜ニューラルネットワーク以降〜〜〜
ニューラルネットワークとは

ニューラルネットワークは、人間の脳を模した モデル

深層学習と呼ばれる機械学習の手法の一種で、人間の脳に似た層状構造のモデル からなっている

コンピュータはこのモデルを出力結果を元に重みと呼ばれるパラメータを調整し、継続的に改善することでドキュメントの要約や顔の認識などの複雑な問題を解決することができる

image block
出典:

🧑‍💻
ニューラルネットワークで単語や文章の意味を理解させるで〜
Word2Vec
image block
出典:
  • 2013年にGoogleが開発
  • 単語の似ている似ていないをベクトルで表現する
  • ニューラルネットワークを使って、単語をベクトル空間に配置する(分散表現)
    • 単語の意味を数学的に表現できるようになった!!!
      • 「フランス」ー「パリ」+「東京」=「日本」

Seq2Seq
image block
出典:
  • 2014年にGoogleが開発
  • 再帰的ニューラルネットワーク(RNN)を使って、文章で処理できるようになり文脈を理解できるようになった
  • 翻訳や、対話において、質問に対する答えをセットで学習させることで精度が向上した

Transformer
  • 論文タイトルがAttention is All You Need
    • 〇〇 is All You Needという論文が増えた
  • Attention機構を利用することで、高速化、高精度化
  • 2024年現在も研究に使われている
image block
引用:
BERT
image block
出典:
  • 2018年にGoogleが開発
  • あらゆる自然言語処理タスクで利用できるため話題になった
    • 11個の自然言語処理タスクで当時の最高スコアを大幅に塗り替えた
    • 自然言語処理の王様 とも
  • Transformerを活用することで、分散表現を効率的に学習し、汎用的にタスクに対応できるようにした
  • BERTをベースとしたモデルが次々と登場して、最高スコアを更新し続けている
    • GRUEという一般的な英語の理解力を測るタスクでは人間が23位(2024年現在)
T5
image block
出典:

  • 2020年にGoogleが開発
  • 直接文章から文章に変換する深層学習モデル

主要な生成AIサービス
GPT
  • 最初の GPT は2018年に OpenAI によって開発された
  • こちらも Attention機構 を用いて作られた
    • BERT とは違う Transformer の部品を使っている
  • その後、GPT → GPT-2 → 3 → 3.5 → 4 へと進化を遂げていった
  • 最新のモデルはGPT-4oでテキスト、画像、音声を一つのモデルで一括で処理を行うことができるようになっている
余談
  • この情報
  • それぞれの違いはパラメータと学習データの量にある
    パラメータ数(個) 学習データ量
    GPT-1 1.2億 4.5GB
    GPT-2 15億 40GB
    GPT-3 1750億 570GB
    GPT-3.5 3550億 ?
    GPT-4 非公開(5000億以上) ?
Gemini
  • Googleの公開しているLLM
  • 2024年にチャットアプリBardをGeminiに名称を変更した
  • これも Attention機構 を使ってる
  • Google I/O 2024では1.5 Proを開発者向けに提供開始

Claude

Anthropic社の提供するモデル

Claude 3は2024年3月4日に発表された比較的新しいモデル

Artifactsと呼ばれる生成したコンテンツをリアルタイムで表示する機能も便利

Claudeの提供するモデルはAmazon Bedrockで使用できる

Llama

Meta社の提供するモデル

2024年4月18日に公開された

Llama3はAmazon Bedrockで使用できる

ここで、現在発表されているモデルのベンチマークを見てみましょう。

image block
引用:

これってどんなベンチマーク? by GPT-4o

名前 説明
MMLU 多分野の大学レベルの知識を評価
GPQA さまざまな領域やトピックの一般的な質問に対してどれだけ正確に答えられるかを評価
MATH 高校から大学レベルの数学問題を解く能力を評価
manEval 人間の評価者がそのテキストの自然さ、一貫性、有用性などの観点から評価
MGSM 複数言語での小学生レベルの数学問題を評価
DROP AIモデルが複数の段落にまたがる複雑な質問に対して正確な推論と回答を行う能力を評価

この辺の情報はかなり短い頻度で更新されていきます。

参考

生成AI

概要

生成AI(Generative AI)は、人口知能技術の分野の一つで、 大量のデータを学習させることによってテキスト、画像、音声、ビデオなどの新しいコンテンツを生成することができるシステム

専門知識がなくても簡単に利用できることから近年注目を集めている

生成AIは主にディープラーニング(深層学習)によって構築された大規模な機械学習モデルで、事前に大量のデータを学習しておき、利用者は学習済みのAIから新たなデータを生み出して利用できる

非生成AI (Discriminative AI) vs 生成AI (Generative AI)
💡
決定的な違いはコンテンツを生成できるかどうか
生成AI(Generative AI)
  • やりたいことは入力されたデータに対して、新たなデータを生成すること
    • 新しいデータやコンテンツを生成してくれる
  • 主な手法
    • テキスト生成: ChatGPT
      image block
      引用:
    • 画像生成: DALL-E
      image block
      引用:
    • 動画生成: Sora
      引用:
非生成AI (Discriminative AI)
  • 目的はあるデータ群とあるデータ群の間に境界を引くこと
    • 分類や予測結果を出力する
  • 主な手法
    • 文章理解: BERT, GPT
    • 物体検出: YOLO, OpenPose

生成AI vs 非生成AI
image block
非生成AI 生成AI
目的 データの境界を引くこと 分布にデータを落とし込み、新しいデータを生成すること
出力 分類や予測結果 新しいデータやコンテンツを生成
主な手法 文章理解: BERT, GPT
物体検出: YOLO, OpenPose
テキスト生成: ChatGPT
画像生成: DALL-E
動画生成: Sora
音声合成: VALL-E
応用分野 分類、回帰、異常検知、物体検出など 画像生成、テキスト生成、音声生成
実用例 製品の異常検知, 自動運転
ニフティニュースの3行要約

クラウドサービス

AWS
Google Cloud
Azure