ml-basic
Version:
Lightweight, zero dependency, machine learning library
45 lines (44 loc) • 1.66 kB
TypeScript
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;