LLM
from 機械学習
Large Language Models 大規模言語モデル
現代のLLMはトランスフォーマーアーキテクチャ
Pretraining
ラベルなしの生のテキストデータ
LLMでは自己教師あり学習で、入力データからラベルを生成する
Instruction fine-tuning
インストラクションと答えのペアで構成されたラベル付きデータセット
原文と翻訳文
Classification fine-tuning
文章とそれに関連する分類で構成されたラベル付きデータセット
スパムとそうでないメール
BERT
GPTとは異なるトレーニングアプローチ
文章からマスクされたり消された単語を推測する
文章の分類、感情の予測
GPT
文章生成
機械翻訳、要約、フィクション、コード生成
Transformer
内積
RAG
Retrieval-Augmented Generation 検索拡張生成
LLMに情報検索を組み合わせる
ファインチューニングはモデルに再学習させるのに対し、RAGはAIが参照するデータベース側に手を加える
AWSでRAG
Amazon BedrockでKnowledge basesを使う
S3にPDFなどのデータをアップ
埋め込みモデルを設定する
Cohore Embed
データを取り込んでベクトル変換
ベクトルDBを設定する
Amazon OpenSearch Serverless
結構高いので別サービスを検討
LLMにDBを参照させて回答を作成させる
英語で書かれた履歴書を解釈してプロフィールを返答してくれた
埋め込みモデルが多言語対応していれば質問した言語に合わせて翻訳して返してくれる
MCP
Model Context Protocol
LLMが外部のデータソースやツールと連携するためのプロトコル
言語AIの歴史
Bag-of-Words
1950年代からある手法
非構造化テキストを数値で表現するための方法
1. 文を単語やサブワードなどのトークンに分割
日本語では形態素解析
トークナイザー
単語トークン
サブワードトークン
完全な単語と単語の一部の組み合わせ
apology apologize apologetic apologist
-y -ize -etic -ist
文字トークン
1文字1トークン
新しい単語に対応できる利点
モデルが複雑になりトークン数が増えてしまう
バイトトークン
多言語に有力
2. 一意な単語から語彙を作る
3. 入力された文章に語彙の単語が出現する回数を数える
ベクトル表現
表現モデル