recurrent-js-gpu
Version:
GPU-accelerated Deep Recurrent Neural Networks and LSTMs in Typescript. Ported, object-oriented and refactored version of Andrej Karpathy's recurrent-js (https://github.com/karpathy/recurrentjs)
42 lines (41 loc) • 1.62 kB
TypeScript
import { Assertable } from './utils/Assertable';
export declare class Mat extends Assertable {
readonly rows: number;
readonly cols: number;
private readonly length;
w: Array<number>;
readonly dw: Array<number>;
protected static readonly gpu: any;
static isGPUSupported(): any;
static isGPUAccelerated(): boolean;
protected static tryGPU: boolean;
static switchOnGPUSupport(): void;
static switchOffGPUSupport(): void;
protected static cpuLimit: number;
protected static gpuKernelRegister: any;
protected static getKernel(kernel: string, length: number, constants?: any): any;
protected static registerKernel(kernel: string, length: number, constants?: any): void;
constructor(rows: number, cols: number);
get(row: number, col: number): number;
set(row: number, col: number, v: number): void;
protected getIndexBy(row: number, col: number): number;
setFrom(arr: Array<number>): void;
setColumn(m: Mat, i: number): void;
update(alpha: number): void;
static toJSON(m: Mat | any): {};
static fromJSON(json: {
n;
d;
w;
}): Mat;
static add(m1: Mat, m2: Mat): Mat;
static sig(m: Mat): Mat;
private static sigmoid(x);
static relu(m: Mat): Mat;
static mul(m1: Mat, m2: Mat): Mat;
static mul1d(x: number, arr0: Array<number>, arr1: Array<number>, rows0: number, cols0: number, rows1: number, cols1: number): number;
static tanh(m: Mat): Mat;
static dot(m1: Mat, m2: Mat): Mat;
static eltmul(m1: Mat, m2: Mat): Mat;
static rowPluck(m: Mat, rowIndex: number): Mat;
}