AI(人工知能)

# AI

目次

AI(人工知能)とは

  • 定義:
    • 人間のような知性を持ったコンピュータシステム
    • または、それを研究する学問のこと

AIの基本的な仕組み(情報処理)

  • 入力 → (AI)モデル → 出力
    • 入力:
      • 類義語:
        • データ(情報)、学習データ、センサー入力、フィードバック、観測
    • (AI)モデル:
      • 類義語:
        • アルゴリズム、計算手法、学習メカニズム、パターン認識、予測モデル
    • 出力:
      • 類義語:
        • 類義語:結果、判断、予測、応答、アクション、推論

例えば、Googleで検索エンジンは「検索した言葉googleの検索アルゴリズム検索順位付きでwebサイトを表示」というような仕組みになっています。

Gmailでは、届いたメールを勝手に迷惑メールとして分類されることがあります。

これも「メールのテキストデータgoogleの迷惑メール検出アルゴリズムメールを迷惑メールかどうか分類」という仕組みです。

AIの具体例:

  • 画像認識システム
    • 入力 : 画像ファイル
    • モデル: 畳み込みニューラルネットワーク(CNN)
    • 出力 : 画像内のオブジェクトの識別・分類
  • 音声認識システム
    • 入力 : 音声データ
    • モデル: 音声認識アルゴリズム(例: RNN, LSTM)
    • 出力 : テキスト(音声の文字起こし)
  • レコメンド(推薦)システム
    • 入力 : ユーザープロファイル、過去の購買行動
    • モデル: 協調フィルタリング、コンテンツベースフィルタリング
    • 出力 : パーソナライズされた商品やサービスの推薦
  • 自動運転車
    • 入力 : センサーデータ(カメラ、レーダー、GPS等)
    • モデル: センサー融合、物体検出、経路計画アルゴリズム
    • 出力 : 運転指示(加速、減速、方向転換)
  • ChatGPT
    • 入力 :文章、画像データ
    • モデル:大規模言語モデル(LLM)
    • 出力 :文章、画像データ

AIの分類

  • 入力データでの分類
    • 視覚(画像認識モデル):
      • データ形式:画像データ
      • 用途:画像分類、物体検出
      • サービス例:ResNet, VGGNet, Inception
    • 聴覚(音声認識モデル):
      • データ形式:音声データ
      • 用途:音声からテキストへの変換、音声変換
      • サービス例:DeepSpeech, WaveNet
    • 脳(脳波分析モデル、EEG分析モデル):
      • データ形式:脳波データ
      • 用途:医療診断、頭で念じることで機械を動かすなど
      • サービス例:BMI(Brain Machine Interface)
    • 自然言語(自然言語処理モデル):
      • データ形式:テキストデータ
      • 用途:テキスト生成、機械翻訳、感情分析
      • サービス例:BERT, GPTシリーズ, T5
      • ※さらに発展させたものに大規模言語モデルLLM:Large Language Models)がある
  • 目的による分類
    • レコメンドシステムモデル:
      • 目的:ユーザーの過去の行動や好みに基づいて、商品やコンテンツを推薦
    • 予測モデル:
      • 目的:時系列データを基に未来の値を予測
    • 異常検出モデル:
      • 目的:データセット内で異常なパターンや値を識別
  • AIモデル(AIアルゴリズム)による分類
    • 機械学習(マシンラーニング)
      • 深層学習(ディープランニング)
        • トランスフォーマー
        • CNN(畳み込みニューラルネットワーク)
          • ResNet
        • RNN(再帰型ニューラルネットワーク)
          • LSTM(長短期記憶)
    • 時系列分析
      • ARIMAモデル
    • 記号論的AI(シンボリックAI)
    • 進化的アルゴリズム

例えば、以下のように複数の軸を掛け合わせて、表現されることもある↓

  • レコメンドシステムモデル(目的で分類)
    • アルゴリズムで分類
      • 強化学習
      • ディープランニング

最近では、トランスフォーマー(アルゴリズム)によって学習された大規模言語モデルLLM)が注目されている。

AIモデルとは

  • AIモデル
    • AIモデルアーキテクチャ(AIアルゴリズム)
      • (学習済み)AIモデルを作成するためのアルゴリズム
    • 学習済みAIモデル
      • 実際に使用するAIモデル

AIモデルアーキテクチャAIアルゴリズム)」も「学習済みAIモデル」も(AI)モデルと呼ばれることが多く、文脈によって判断する必要がある。

例えば、トランスフォーマーはアルゴリズムであり、LLMは学習済みモデルであり、LLMの具体的なサービスとしてChatGPT4などがある、と表現できる。

モデル学習フェーズ

[データ収集]
   ├─ テキスト、画像、音声、数値データなど
   ↓
[データ前処理]
   ├─ 収集したデータをモデルが処理しやすい形式に変換
   |  └─ クリーニング、正規化、ラベル付け、特徴量抽出など
   ↓
[AIモデルアーキテクチャの選択]
   ├─ 機械学習 (Machine Learning) etc...
   |  ├─ 教師あり学習 (Supervised Learning)
   |  ├─ 教師なし学習 (Unsupervised Learning)
   |  ├─ 強化学習 (Reinforcement Learning)
   |  └─ ディープラーニング (Deep Learning) etc...
   ↓
[モデルの訓練]
   ├─ データのパターンを学習し、
   |  適切なパラメータに調整する
   ↓
[学習済みAIモデル]

同じ学習データ、同じAIモデルアーキテクチャを選択したとしても、パラメータが異なれば、学習済みAIモデルも異なる。

モデル使用フェーズ

[新しい入力データ]
   ↓
[学習済みAIモデル]
   ↓
[出力結果]
  • 具体例:
    • いろんな動物の画像(入力データ)を見せて(入力)、それが何の動物か判断させ(学習済みAIモデルの処理)、答えさせる(出力)

AIモデルをどう活用するか

  • 自分でAIモデルを作成する
  • 既存のAIモデルを利用する
    • 公開されているAPIを利用する
    • AIモデルにさらに、独自のデータを学習させる
      • ファインチューニング(微調整)
      • RAG(検索拡張生成)
        • 検索:セマンティック検索
        • 生成:In-Context Learning(ICL)
    • AIライブラリを活用する
      • 深層学習フレームワーク
        • TensorFlow
          • Keras(TensorFlowの高レベルAPI)
        • PyTorch
        • Caffe
        • MXNet
      • 自然言語処理
        • LangChain
        • NLTK (Natural Language Toolkit)
        • spaCy
        • Transformers(Hugging Face)
      • 画像処理
        • OpenCV
        • PIL (Python Imaging Library)
      • 機械学習
        • scikit-learn
        • XGBoost
        • LightGBM
      • 時系列分析
        • Statsmodels
        • Prophet (Facebook)