AI関連学習メモ
ai関連の仕事が増えて知り合った内容
モデル名の読み方
-
開発会社/モデル名(Gemma 4)
-
全パラメータ(26B)
-
MoE構造(A4B、Active 4B)
-
学習タイプ(Instruct) 5.フォーマット(GGUF)
-
GGUF: 最もよく使われるモデル、Windows/Linuxサポート、CPU推論強さ
-
MLX:アップルシリコンサポートモデル
-
Safetensors: オリジナルモデル
-
TensorRT: NVIDIA GPU、オフロードなしでGPUにモデルがすべて入ってこそ性能が良い
-
-
量子化方式(UD-Q4_K_XL)
-
UD: Unsloth Dynamic (Unsloth 自己量子化方式)、Dynamic ポリシースロット
*実際のデータ入力に基づいて量子化前後の性能低下を判別
*テンソル別量子化かどうかを測定ベースでヒューリスティックに処理
-
Q4:4bit(IQ、AWQなどの重要度ベースの量子化方式もあり)
-
FP32 (Floating Point 32): 基本 float データ型、32 ビット使用
-
FP16 (Floating Point 16): 短縮 float データ型、16 ビット使用 (1 / 5 / 10 ビット配置)
-
BF16 (Brain Floating Point 16): 短縮 float データ型、16 ビット使用 (1 / 8 / 7 ビット配置)
-
INT2 ~ INT8: 省略 int データ型
-
-
K:K-Quantシリーズ
-
XL:プロファイル
*テンソル保存精度でS~XLまで割れ
- 重要な一部テンソルをBF16/FP16として残しておくのにこれを残した程度
-
ファインチューニング関連用語の整理
- PEFT (Parameter-Efficient Fine-Tuning)
-
Low Rank Adaptation (LoRA): 低順位適応
*学術的根幹はLow Rank Approxymation(大きな行列1個を小さな行列2個の積で近似)
*代表的にSVDがあります
*LLM重み行列は基本的に非常に大きい
*モデルがW(既存モデル)+ΔWで構成され、ΔWがチューニング値であると見なされる状況
*従来はファインチューニングのためにΔW = M x N(MとNがフルサイズ)全体を進行
- ΔW = A x B (A = M x R, B = R x N) で分解、O(MN) -> O(R(M + N)) で減少する効果がある
*QLoRA(Quantized LoRA)
*モデル自体を4ビットなどで量子化して巨大モデルチューニングを目指す技術
-
DoRA(Weight-Decomposition Low-Rank Adaptation)
-
ΔW = A x B学習過程で重み付け意図を1つに混ぜて学習する
-
したがって、magnitudeを別々のパラメータに分離して管理
-
- Alignment
-
RLHF (Reinforcement Learning from Human Feedback)
*モデルの回答を人がランク付けしてReward Modelを構築
*強化学習を通じてモデルが報酬をたくさん受ける方向に答えるように訓練
*DPO(Direct Preference Optimization)
*補償モデルを別にすることを省略し、データセットの好みを直接最適化
使用オプション値説明
-
GPU Offload: Transformer Layer GPUに何個上げるかを決定
-
CPU Thread Pool Size: CPUスレッドの使用数
-
Evaluation Batch Size: プロンプトをどれだけ大きく一度に処理するかを決定するオプション
- 大きいほど vram 使用量増加、prompt ingest が速くなる
-
Max Concurrent Predictions: 同時生成できる回答数、lm studio 基準 1 で十分だろうか?
-
RoPE Frequency Base / Scale: モデルの学習されたコンテキスト長よりも長く読みたい場合に調整する値、基本 Auto
-
Offload KV Cache to GPU Memory: 会話内容を GPU メモリにアップロードするかどうかを決定するオプション
-
Keep Model in Memory: モデルをメモリから降下せずに維持するかどうか
-
Try mmap0: メモリマッピング方式を活用したモデルロード、RAMが多いときのロード速度と効率を高める効果
-
Number of Experts: MoE (Mixture of Experts) モデルでアクティブにする専門家の数
-
Number of layers for to force MoE weights onto CPU: 一部のレイヤーの重みを CPU に強制的に渡す設定
-
Flash Attention
-
行列をハードウェア加速が可能なSRAMに入るだけのタイル単位に分割した後演算
-
別に Attention 行列を保存しないため、メモリを節約し、速度を飛躍的に高めることができる
-
-
KV Cache Quantization
- KVキャッシュ量子化によるメモリ節約、基本は通常FP16
TODO
-
Transformer アーキテクチャ分析
-
RNNとの比較
-
Self Attention?
댓글 작성
게시글에 대한 의견을 남겨 주세요.