Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
【RSJ2025】PAMIQ Core: リアルタイム継続学習のための⾮同期推論・学習フレームワーク
Search
Geson Anko
September 04, 2025
Science
1.2k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
【RSJ2025】PAMIQ Core: リアルタイム継続学習のための⾮同期推論・学習フレームワーク
第43回 日本ロボット学会学術講演会(RSJ 2025)で発表した際に用いたスライドです。
公開にあたり、一部修正があります。
https://ac.rsj-web.org/2025/
Geson Anko
September 04, 2025
More Decks by Geson Anko
See All by Geson Anko
2025年12月3日.人類には激kawaiiネコミミメイドロボが必要である
gesonanko
0
65
ML集会 2025年10月15日 LTのはじめかた
gesonanko
0
79
Pythonクラス基礎
gesonanko
1
150
自律機械知能基礎論 2024
gesonanko
0
63
2024年5月18日 XRMTGエンジニア飲み集会LT
gesonanko
0
57
AMI System基礎 2025
gesonanko
1
120
2025年1月10日 エンジニア集会 誰かと開発するために
gesonanko
0
120
2024年3月27日 ML集会 非同期AMI基盤システムα
gesonanko
0
94
非同期AMI Sys ロードマップ to Milestone 2
gesonanko
0
65
Other Decks in Science
See All in Science
GKE上でオセロの強化学習やってみた
akasan
0
120
コーヒー豆様核 (Coffee-bean nuclei) における形態学的サブタイピングと精選・焙煎特性の同定
jagupath
PRO
0
240
[第67回 CV勉強会@関東] CV × Scientific Figures / kantoCV 67th CVPR 2026
lychee1223
0
260
JSAI2026企画セッションKS-14 インタビュー集『⼈⼯知能と哲学と四つの問い』が提起する⼈⼯知能のこれからの課題 趣旨説明 / JSAI2026 Special Session: A Collection of Interviews, “Artificial Intelligence, Philosophy, and Four Questions”
ykiyota
0
480
Path integral polarons for real semiconductors
jarvist
0
120
JPA2026_NetworkSymposium_Kashihara
junkashihara
0
110
データベース06: SQL (3/3) 副問い合わせ
trycycle
PRO
1
1.2k
データベース10: 拡張実体関連モデル
trycycle
PRO
0
1.6k
Build your own LLM, Live, with MicroGPT
ianozsvald
0
170
データベース15: ビッグデータ時代のデータベース
trycycle
PRO
1
610
[Relay webinaire eBIS actu n°16] Conclusion
institutdelelevage
PRO
0
270
Conwayの法則を"ちゃんと"使うために — 原典でConwayは何を言っていたのか
bonotake
10
7.7k
Featured
See All Featured
Google's AI Overviews - The New Search
badams
0
1.6k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Git: the NoSQL Database
bkeepers
PRO
433
67k
GitHub's CSS Performance
jonrohan
1033
470k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
33
5.4k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
Ethics towards AI in product and experience design
skipperchong
2
440
What does AI have to do with Human Rights?
axbom
PRO
1
2.5k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
brightonSEO & MeasureFest 2025 - Winning Strategies for Black Friday CRO & PPC - Christian Goodrich
cargoodrich
3
880
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
490
Transcript
リアルタイム継続学習のための ⾮同期推論・学習フレームワーク ML集会, GOP Co., Ltd. 撮影OK
1 はじめに • ⼀般の深層学習 ⼤規模なオフライン学習 → 静的なパイプライン実⾏ • 強化学習 推論(環境インタラクション)と学習を交互実⾏
→ 推論停⽌時間が発⽣ 動的に学習したい。しかし、 推論停⽌する間も時間は進む! 学習と推論の同時実⾏の必要性 • “PAMIQ Core” を実装 リアルタイムに継続学習する機械知能を簡単に作れるように • PAMIQにおいて、これらの課題を解決したシステムを実装 汎⽤的な枠組みの発⾒ → 再利⽤可能にする価値
2 PAMIQ Coreの特徴 • マルチスレッドアーキテクチャ シンプル・軽量な3スレッド(制御・推論・学習)実装 • モジュラー設計 コンポーネントを基底クラスを元に実装。 •
既存フレームワークとの統合 PyTorch, Gymansium (OpenAI Gym) • 継続学習の運⽤⽀援機能 インタラクティブ制御コンソール、状態保存など • 段階的なサンプル 最⼩実装から実⽤サンプル、VRChatへの実装まで • “pip install pamiq-core” で即利⽤可能 Python Package Index (PyPI)へ公開済
3 PAMIQ Coreの特徴 • マルチスレッドアーキテクチャ シンプル・軽量な3スレッド(制御・推論・学習)実装 • モジュラー設計 コンポーネントを基底クラスを元に実装。 •
既存フレームワークとの統合 PyTorch, Gymansium (OpenAI Gym) • 継続学習の運⽤⽀援機能 インタラクティブ制御コンソール、状態保存など • 段階的なサンプル 最⼩実装から実⽤サンプル、VRChatへの実装まで • “pip install pamiq-core” で即利⽤可能 Python Package Index (PyPI)へ公開済 起動 推論 スレッド 学習 スレッド 制御 スレッド
4 PAMIQ Coreの特徴 • マルチスレッドアーキテクチャ シンプル・軽量な3スレッド(制御・推論・学習)実装 • モジュラー設計 コンポーネントを基底クラスを元に実装。 •
既存フレームワークとの統合 PyTorch, Gymansium (OpenAI Gym) • 継続学習の運⽤⽀援機能 インタラクティブ制御コンソール、状態保存など • 段階的なサンプル 最⼩実装から実⽤サンプル、VRChatへの実装まで • “pip install pamiq-core” で即利⽤可能 Python Package Index (PyPI)へ公開済
5 PAMIQ Coreの特徴 • マルチスレッドアーキテクチャ シンプル・軽量な3スレッド(制御・推論・学習)実装 • モジュラー設計 コンポーネントを基底クラスを元に実装。 •
既存フレームワークとの統合 PyTorch, Gymansium (OpenAI Gym) • 継続学習の運⽤⽀援機能 インタラクティブ制御コンソール、状態保存など • 段階的なサンプル 最⼩実装から実⽤サンプル、VRChatへの実装まで • “pip install pamiq-core” で即利⽤可能 Python Package Index (PyPI)へ公開済 Gymnasium
6 PAMIQ Coreの特徴 • マルチスレッドアーキテクチャ シンプル・軽量な3スレッド(制御・推論・学習)実装 • モジュラー設計 コンポーネントを基底クラスを元に実装。 •
既存フレームワークとの統合 PyTorch, Gymansium (OpenAI Gym) • 継続学習の運⽤⽀援機能 インタラクティブ制御コンソール、状態保存など • 段階的なサンプル 最⼩実装から実⽤サンプル、VRChatへの実装まで • “pip install pamiq-core” で即利⽤可能 Python Package Index (PyPI)へ公開済
7 PAMIQ Coreの特徴 • マルチスレッドアーキテクチャ シンプル・軽量な3スレッド(制御・推論・学習)実装 • モジュラー設計 コンポーネントを基底クラスを元に実装。 •
既存フレームワークとの統合 PyTorch, Gymansium (OpenAI Gym) • 継続学習の運⽤⽀援機能 インタラクティブ制御コンソール、状態保存など • 段階的なサンプル 最⼩実装から実⽤サンプル、VRChatへの実装まで • “pip install pamiq-core” で即利⽤可能 Python Package Index (PyPI)へ公開済
8 PAMIQ Coreの特徴 • マルチスレッドアーキテクチャ シンプル・軽量な3スレッド(制御・推論・学習)実装 • モジュラー設計 コンポーネントを基底クラスを元に実装。 •
既存フレームワークとの統合 PyTorch, Gymansium (OpenAI Gym) • 継続学習の運⽤⽀援機能 インタラクティブ制御コンソール、状態保存など • 段階的なサンプル 最⼩実装から実⽤サンプル、VRChatへの実装まで • “pip install pamiq-core” で即利⽤可能 Python Package Index (PyPI)へ公開済
9 PAMIQ Coreの特徴 • マルチスレッドアーキテクチャ シンプル・軽量な3スレッド(制御・推論・学習)実装 • モジュラー設計 コンポーネントを基底クラスを元に実装。 •
既存フレームワークとの統合 PyTorch, Gymansium (OpenAI Gym) • 継続学習の運⽤⽀援機能 インタラクティブ制御コンソール、状態保存など • 段階的なサンプル 最⼩実装から実⽤サンプル、VRChatへの実装まで • “pip install pamiq-core” で即利⽤可能 Python Package Index (PyPI)へ公開済 詳細は論⽂要旨 ドキュメンテーションサイトへ https://mlshukai.github.io/pamiq-core/
11 システムの外観 フラグ・命令 フラグ・命令 起動 推論スレッド 学習スレッド 制御スレッド • ⼀時停⽌
• 再開 • 終了 • 状態保存 • 世界と インタラクション • 学習データを収集 観測取得 ⾏動⽣成 データ収集 • モデルパラメータを 更新 実⾏条件チェック 学習を実⾏ パラメータ同期 移動 モデル パラメータ 学習 データ 同期 コマンド フラグ ユーザー定義領域
12 各コンポーネントについて
14 各コンポーネントについて • Interaction, Agent, Environment 強化学習的な観測・⾏動ループの実装 推論スレッド⽤ • Agent:
意思決定(ユーザー定義) • 観測から⾏動を⽣成 • 学習データを収集 • Environment: 観測・⾏動処理(ユーザー定義) • 観測を返す(実環境から取得) • ⾏動を作⽤(実環境で実⾏) • Interaction: 観測・⾏動ループの実現 • AgentとEnvironmentを繋げる Interaction Environment 観測 ⾏動 Agent Gymnasiumの環境を Environmentとして利⽤可能!
16 各コンポーネントについて • TrainingModel, InferenceModel 機械学習モデル定義 • TrainingModel(⚠ モデルの主体) •
学習スレッド上の処理フローを記述 • InferenceModelの⽣成 • パラメータの同期処理 • InferenceModel • 推論スレッド上の処理フローを記述 ⚠ 同期排他制御の実装要求 • 推論時 • パラメータ同期時 Training Model Inference Model ⽣成 パラメータ 同期 パラメータ更新 推論 排他制御
17 各コンポーネントについて • TrainingModel, InferenceModel 機械学習モデル定義 • TrainingModel(⚠ モデルの主体) •
学習スレッド上の処理フローを記述 • InferenceModelの⽣成 • パラメータの同期処理 • InferenceModel • 推論スレッド上の処理フローを記述 ⚠ 同期排他制御の実装要求 • 推論時 • パラメータ同期時 Training Model Inference Model ⽣成 パラメータ 同期 パラメータ更新 推論 PyTorchモデルを 簡単に導⼊可能! 排他制御
22 各コンポーネントについて • DataBuffer, DataCollector, DataUser 学習データの貯蔵と収集、利⽤ • DataBuffer :ユーザー定義(蓄積、取得)
• DataCollector :推論スレッドインターフェイス • DataUser :学習スレッドインターフェイス DataCollector DataUser Queue DataBuffer update add ⼀時的に蓄積 (推論スレッド内) 同期時にバッファへadd (学習スレッド内) get_data collect 排他制御(スレッドセーフ化)
24 各コンポーネントについて • Trainer 学習処理や実⾏可能条件の記述 学習スレッド⽤ • 学習データの取得とパラメータ更新、同期 • 実⾏可能条件の実装(ユーザー定義可能)
• デフォルトの条件 • ⼗分なデータの蓄積 • ⼗分な新規データ数 → 安定した継続学習のため 処理順序 PyTorch統合では 便利な基底クラスを実装済! 実⾏条件チェック 学習を実⾏ パラメータ同期
25 各コンポーネントについて • launch, LaunchConfig 全てをまとめ、システムを起動する。 • launch関数 処理の起点 •
ユーザー定義のInteraction(Agent, Environment), Model, Buffer, Trainerを与える
26 各コンポーネントについて • launch, LaunchConfig 全てをまとめ、システムを起動する。 • launch関数 処理の起点 •
ユーザー定義のInteraction(Agent, Environment), Model, Buffer, Trainerを与える • システムの状態保存設定 • リスタートする状態パス • 時間スケール • などなど設定可能 LaunchConfig
27 同期システムについて
28 同期システム • 設計哲学 絶対に推論処理を⽌めない リアルタイム処理の実現
32 同期システム • PyTorchモデル 学習スレッドで更新したパラメータを推論スレッドに同期する • 純粋なパラメータコピーは !(size) の計算時間 →
同期時間増加、⼤規模モデルを採⽤しにくい • ソリューション → 参照スワップ (擬似同期処理) 推論スレッドから学習スレッドにコピー • Pros: 参照移動のみのため !(() の計算時間 • Cons: RNNの隠れ状態などをAgentクラス内で管理する必要性 → スワップ時に⼊れ替わる問題 交換 旧 モデル 新 モデル 新 モデル 旧 モデル パラメータコピー 推論 スレッド 学習 スレッド
33 同期システム • 学習データ 推論スレッドで収集したデータを学習スレッドへ受け渡す 参照移動で同期時間を最⼩化 同期処理 1. キューを新規⽣成 2.
既存キューと置換 3. キューオブジェクトごと移動 • Cons: キューのサイズを事前に設定する必要性 (オーバーフロー対策) キュー 推論 スレッド 学習 スレッド バッファ
34 同期システム • 学習データ 推論スレッドで収集したデータを学習スレッドへ受け渡す 参照移動で同期時間を最⼩化 同期処理 1. キューを新規⽣成 2.
既存キューと置換 3. キューオブジェクトごと移動 • Cons: キューのサイズを事前に設定する必要性 (オーバーフロー対策) 推論 スレッド 学習 スレッド バッファ 移動 キュー 新規作成・置換
35 同期システム • 学習データ 推論スレッドで収集したデータを学習スレッドへ受け渡す 参照移動で同期時間を最⼩化 同期処理 1. キューを新規⽣成 2.
既存キューと置換 3. キューオブジェクトごと移動 • Cons: キューのサイズを事前に設定する必要性 (オーバーフロー対策) 推論 スレッド 学習 スレッド バッファ 移動 キュー 新規作成・置換 +
36 同期システム • 学習データ 推論スレッドで収集したデータを学習スレッドへ受け渡す 参照移動で同期時間を最⼩化 同期処理 1. キューを新規⽣成 2.
既存キューと置換 3. キューオブジェクトごと移動 • Cons: キューのサイズを事前に設定する必要性 (オーバーフロー対策) 推論 スレッド 学習 スレッド バッファ 移動 キュー 新規作成・置換 +
37 サンプル実装について • 段階的な3つのサンプル(リンクは要旨に記載) • “minimum.py” 最⼩限の起動処理のみ記述。 フレームワークのスタート地点 • “vae-torch”
Variational AutoEncoder の継続学習例を実装 PyTorch統合の実践的なサンプル • “pamiq-vrchat” 仮想世界 VRChat への実装サンプル より複雑的な応⽤例
None
39 より深くPAMIQ Coreを知りたい⼈のために • 9/6(⼟) 21:00 より、YouTube配信! VTuberのアイシア・ソリッドさんと! • より深い、開発のアレコレや⾃律機械知能PAMIQについ
てもお話しします。 公式チャンネル
40 より深くPAMIQ Coreを知りたい⼈のために • 質問・ご感想は⼤歓迎! • なんでスレッドベース? • 他のフレームワークとの統合は? •
類似アプローチってないの? • 今後の展望は…? • そもそもPAMIQとは…? • 発表後、ぜひお話ししましょ〜! PAMIQ Core 公式リポジトリ