UNPKG

ml-basic

Version:

Lightweight, zero dependency, machine learning library

45 lines (44 loc) 1.66 kB
import AveragePoolingLayer from "./average-pooling"; import ConvolutionalLayer, { ConvolutionalParams } from "./convolutional"; import DropoutLayer, { DropoutParams } from "./dropout"; import FullyConnectedLayer, { FullyConnectedParams } from "./fully-connected"; import { LoopParams } from "./loop"; import LSTMLayer from "./lstm"; import MaxPoolingLayer from "./max-pooling"; import { PoolingParams } from "./pooling"; import RecurrentLayer from "./recurrent"; type LayerParams<T extends { input: any; }> = Omit<T, 'input'> & Partial<Pick<T, 'input'>>; declare const Layers: { avgp: (args: LayerParams<PoolingParams>) => { Layer: typeof AveragePoolingLayer; args: LayerParams<PoolingParams>; }; conv: (args: LayerParams<ConvolutionalParams>) => { Layer: typeof ConvolutionalLayer; args: LayerParams<ConvolutionalParams>; }; fcon: (args: LayerParams<FullyConnectedParams>) => { Layer: typeof FullyConnectedLayer; args: LayerParams<FullyConnectedParams>; }; maxp: (args: LayerParams<PoolingParams>) => { Layer: typeof MaxPoolingLayer; args: LayerParams<PoolingParams>; }; recu: (args: LayerParams<LoopParams>) => { Layer: typeof RecurrentLayer; args: LayerParams<LoopParams>; }; lstm: (args: LayerParams<LoopParams>) => { Layer: typeof LSTMLayer; args: LayerParams<LoopParams>; }; drop: (args: LayerParams<DropoutParams>) => { Layer: typeof DropoutLayer; args: LayerParams<DropoutParams>; }; }; export type Layers = ReturnType<(typeof Layers)[keyof typeof Layers]>; export default Layers;