@ai-on-browser/data-analysis-models
Version:
Data analysis model package without any dependencies
83 lines (82 loc) • 2.28 kB
TypeScript
/**
* Ladder network
*/
export default class LadderNetwork {
/**
* @param {number[]} hidden_sizes Sizes of hidden layers
* @param {number[]} lambdas Regularization parameters
* @param {string} activation Activation name
* @param {string} optimizer Optimizer of the network
*/
constructor(hidden_sizes: number[], lambdas: number[], activation: string, optimizer: string);
_hidden_sizes: number[];
_lambdas: number[];
_activation: string;
_optimizer: string;
_noise_std: any[];
_model: NeuralNetwork;
_classes: any[];
_epoch: number;
/**
* Epoch
* @type {number}
*/
get epoch(): number;
_build(): NeuralNetwork;
_layers: ({
type: string;
name: string;
size?: undefined;
variance?: undefined;
input?: undefined;
axis?: undefined;
} | {
type: string;
size: string;
variance: number;
name: string;
input?: undefined;
axis?: undefined;
} | {
type: string;
input: string[];
name: string;
size?: undefined;
variance?: undefined;
axis?: undefined;
} | {
type: string;
input: string;
name: string;
size?: undefined;
variance?: undefined;
axis?: undefined;
} | {
type: string;
input: string[];
axis: number;
name?: undefined;
size?: undefined;
variance?: undefined;
})[];
/**
* Fit model.
* @param {Array<Array<number>>} train_x Training data
* @param {(* | null)[]} train_y Target values
* @param {number} iteration Iteration count
* @param {number} rate Learning rate
* @param {number} batch Batch size
* @returns {{labeledLoss: number, unlabeledLoss: number}} Loss value
*/
fit(train_x: Array<Array<number>>, train_y: (any | null)[], iteration: number, rate: number, batch: number): {
labeledLoss: number;
unlabeledLoss: number;
};
/**
* Returns predicted values.
* @param {Array<Array<number>>} x Sample data
* @returns {*[]} Predicted values
*/
predict(x: Array<Array<number>>): any[];
}
import NeuralNetwork from './neuralnetwork.js';