@ignitionai/backend-tfjs
Version:
TensorFlow.js backend for IgnitionAI - browser-based reinforcement learning framework
37 lines (36 loc) • 1.32 kB
TypeScript
import { Experience } from '../memory/ReplayBuffer';
import { DQNConfig } from '../types';
export declare class DQNAgent {
private config;
private model;
private targetModel;
private memory;
private epsilon;
private epsilonDecay;
private minEpsilon;
private gamma;
private batchSize;
private targetUpdateFrequency;
private trainStepCounter;
private actionSize;
private bestReward;
constructor(config: DQNConfig);
getAction(state: number[]): Promise<number>;
remember(exp: Experience): void;
updateTargetModel(): Promise<void>;
train(): Promise<void>;
reset(): void;
saveToHub(repoId: string, token: string, modelName?: string, checkpointName?: string): Promise<void>;
loadFromHub(repoId: string, modelPath?: string): Promise<void>;
/**
* Save the model under a checkpoint name to Hugging Face Hub.
* e.g., checkpointName = "last", "best", "step-1000"
*/
saveCheckpoint(repoId: string, token: string, checkpointName: string): Promise<void>;
maybeSaveBestCheckpoint(repoId: string, token: string, reward: number, step?: number): Promise<void>;
/**
* Load a checkpointed model from Hugging Face Hub.
*/
loadCheckpoint(repoId: string, checkpointName: string): Promise<void>;
dispose(): void;
}