Skip to main content

Module learned_component

Module learned_component 

Source
Expand description

LearnedComponent - 学習結果の型安全な抽象化

§設計思想

ComponentLearner(学習プロセス)と LearnedComponent(学習結果)をペアで定義。 各学習対象ごとに専用の型を持ち、Map/Any を使わず型安全性を確保する。

§背景

  • 従来の ML: 口調、好み程度 → Map でも許容
  • Swarm Learning: Control の知識そのものが Domain → Typed 必須

§使用例

// ComponentLearner と LearnedComponent はペアで定義
struct DepGraphLearner;

impl ComponentLearner for DepGraphLearner {
    type Output = LearnedDepGraph;

    fn learn(&self, episodes: &[Episode]) -> Result<Self::Output, LearnError> {
        // Episodes から LearnedDepGraph を生成
    }
}

impl LearnedComponent for LearnedDepGraph {
    fn component_id() -> &'static str { "dep_graph" }
    // ...
}

§LearnModel vs ComponentLearner

  • LearnModel: Episode → TrainingData (LoRA fine-tuning 用)
  • ComponentLearner: Episodes → LearnedComponent (ScenarioProfile 用)

Re-exports§

pub use super::offline::RecommendedPath;

Structs§

LearnedDepGraph
学習済み依存グラフ
LearnedExploration
学習済み探索パラメータ
LearnedStrategy
学習済み戦略設定

Traits§

ComponentLearner
ScenarioProfile コンポーネントの学習プロセス
LearnedComponent
学習結果コンポーネントの共通 trait