lysergic
Version:
Synaptic's neural network compiler
51 lines (50 loc) • 1.58 kB
TypeScript
import Topology = require("./Topology");
import AST = require("./AST");
import Heap = require("./Heap");
import nodes = require("./ast/nodes");
import Activations = require('./ast/activations');
export { Lysergic, Topology, AST, Heap, Activations, nodes };
export declare enum LysergicStatus {
UNLOCKED = 0,
LOCKED = 1,
}
export interface ILysergicOptions {
bias?: boolean;
learningRate?: number;
momentum?: number;
heap?: Heap.Heap;
}
export declare enum StatusTypes {
IDLE = 0,
INIT = 1,
REVERSE_INIT = 2,
ACTIVATING = 3,
PROPAGATING = 4,
TRAINING = 5,
BUILDING = 6,
}
export default class Lysergic {
options: ILysergicOptions;
learningRate: number;
momentum: number;
engineStatus: StatusTypes;
topology: Topology.Topology;
ast: AST.AST;
heap: Heap.Heap;
status: LysergicStatus;
constructor(options?: ILysergicOptions);
addUnit(options: Topology.ITopologyUnitOptions): number;
addLayer(size: number, options: Topology.ITopologyUnitOptions): number[];
addConnection(from: number, to: number, weight: number): void;
addGate(from: any, to: any, gater: any): void;
build(): Promise<void>;
getAST(): nodes.DocumentNode;
getBuffer(): Promise<ArrayBuffer>;
getMemory(): Promise<Float64Array>;
setInputs(inputs: number[]): Promise<void>;
getOutputs(): Promise<ArrayLike<number>>;
setTargets(targets: number[]): Promise<void>;
toJSON(asString?: boolean): object | string;
static fromJSON(json: string | object): Lysergic;
clone(): Lysergic;
}