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アルゴリズム)」も「学習済み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
- TensorFlow
- 自然言語処理
- LangChain
- NLTK (Natural Language Toolkit)
- spaCy
- Transformers(Hugging Face)
- 画像処理
- OpenCV
- PIL (Python Imaging Library)
- 機械学習
- scikit-learn
- XGBoost
- LightGBM
- 時系列分析
- Statsmodels
- Prophet (Facebook)
- 深層学習フレームワーク