From ae3b8f3106c5475b981023f5abfdfae0b73b18f7 Mon Sep 17 00:00:00 2001 From: Ashutosh-1304 Date: Fri, 24 Jul 2026 16:36:54 +0530 Subject: [PATCH 1/5] refactor(ml/incr): convert loss function names to kebab-case --- .../@stdlib/ml/incr/binary-classification/README.md | 6 +++--- .../ml/incr/binary-classification/docs/repl.txt | 6 +++--- .../incr/binary-classification/docs/types/index.d.ts | 6 +++--- .../incr/binary-classification/lib/loss_functions.json | 6 +++--- .../@stdlib/ml/incr/binary-classification/lib/main.js | 6 +++--- .../@stdlib/ml/incr/binary-classification/lib/model.js | 4 ++-- lib/node_modules/@stdlib/ml/incr/docs/types/index.d.ts | 2 +- .../@stdlib/ml/incr/sgd-regression/README.md | 10 +++++----- .../ml/incr/sgd-regression/docs/types/index.d.ts | 6 +++--- .../@stdlib/ml/incr/sgd-regression/examples/index.js | 2 +- .../@stdlib/ml/incr/sgd-regression/lib/defaults.json | 2 +- .../@stdlib/ml/incr/sgd-regression/lib/main.js | 8 ++++---- .../@stdlib/ml/incr/sgd-regression/test/test.main.js | 4 ++-- 13 files changed, 34 insertions(+), 34 deletions(-) diff --git a/lib/node_modules/@stdlib/ml/incr/binary-classification/README.md b/lib/node_modules/@stdlib/ml/incr/binary-classification/README.md index a61ee837f712..623d94e47b27 100644 --- a/lib/node_modules/@stdlib/ml/incr/binary-classification/README.md +++ b/lib/node_modules/@stdlib/ml/incr/binary-classification/README.md @@ -58,9 +58,9 @@ The function accepts the following `options`: - `hinge`: hinge loss function. Corresponds to a soft-margin linear Support Vector Machine (SVM), which can handle non-linearly separable data. - `log`: logistic loss function. Corresponds to Logistic Regression. - - `modifiedHuber`: Huber loss function [variant][@zhang:2004a] for classification. + - `modified-huber`: Huber loss function [variant][@zhang:2004a] for classification. - `perceptron`: hinge loss function without a margin. Corresponds to the original perceptron by Rosenblatt (1957). - - `squaredHinge`: squared hinge loss function SVM (L2-SVM). + - `squared-hinge`: squared hinge loss function SVM (L2-SVM). Default: `'log'`. @@ -140,7 +140,7 @@ var label = acc.predict( array( [ 0.5, 2.0 ] ) ); Provided an [`ndarray`][@stdlib/ndarray/ctor] having shape `(..., N)`, where `N` is the number of features, the returned [`ndarray`][@stdlib/ndarray/ctor] has shape `(...)` (i.e., the number of dimensions is reduced by one) and data type `float64`. For example, if provided a one-dimensional [`ndarray`][@stdlib/ndarray/ctor], the method returns a zero-dimensional [`ndarray`][@stdlib/ndarray/ctor] whose only element is the predicted response value. -By default, the method returns the predict label (`type='label'`). In order to return a prediction probability of a `+1` response value given either the logistic (`log`) or modified Huber (`modifiedHuber`) loss functions, set the second argument to `'probability'`. +By default, the method returns the predict label (`type='label'`). In order to return a prediction probability of a `+1` response value given either the logistic (`log`) or modified Huber (`modified-huber`) loss functions, set the second argument to `'probability'`. ```javascript var array = require( '@stdlib/ndarray/array' ); diff --git a/lib/node_modules/@stdlib/ml/incr/binary-classification/docs/repl.txt b/lib/node_modules/@stdlib/ml/incr/binary-classification/docs/repl.txt index 6759d75a9bf6..57e7c63c3a2f 100644 --- a/lib/node_modules/@stdlib/ml/incr/binary-classification/docs/repl.txt +++ b/lib/node_modules/@stdlib/ml/incr/binary-classification/docs/repl.txt @@ -68,12 +68,12 @@ - log: logistic loss function. Corresponds to Logistic Regression. - - modifiedHuber: Huber loss function variant for classification. + - modified-huber: Huber loss function variant for classification. - perceptron: hinge loss function without a margin. Corresponds to the original Perceptron by Rosenblatt. - - squaredHinge: squared hinge loss function SVM (L2-SVM). + - squared-hinge: squared hinge loss function SVM (L2-SVM). Default: 'log'. @@ -88,7 +88,7 @@ following: 'label', 'probability', or 'linear'. Default: 'label'. Note that the probability prediction type is only compatible with 'log' - and 'modifiedHuber' loss functions. + and 'modified-huber' loss functions. Examples -------- diff --git a/lib/node_modules/@stdlib/ml/incr/binary-classification/docs/types/index.d.ts b/lib/node_modules/@stdlib/ml/incr/binary-classification/docs/types/index.d.ts index e991eff27285..4083718c83af 100644 --- a/lib/node_modules/@stdlib/ml/incr/binary-classification/docs/types/index.d.ts +++ b/lib/node_modules/@stdlib/ml/incr/binary-classification/docs/types/index.d.ts @@ -55,11 +55,11 @@ interface Options { * * - `hinge`: hinge loss function. Corresponds to a soft-margin linear Support Vector Machine (SVM), which can handle non-linearly separable data. * - `log`: logistic loss function. Corresponds to Logistic Regression. - * - `modifiedHuber`: Huber loss function variant for classification. + * - `modified-huber`: Huber loss function variant for classification. * - `perceptron`: hinge loss function without a margin. Corresponds to the original Perceptron by Rosenblatt. - * - `squaredHinge`: squared hinge loss function SVM (L2-SVM). + * - `squared-hinge`: squared hinge loss function SVM (L2-SVM). */ - loss?: 'hinge' | 'log' | 'modifiedHuber' | 'perceptron' | 'squaredHinge'; + loss?: 'hinge' | 'log' | 'modified-huber' | 'perceptron' | 'squared-hinge'; /** * Boolean indicating whether to include an intercept (default: `true`). diff --git a/lib/node_modules/@stdlib/ml/incr/binary-classification/lib/loss_functions.json b/lib/node_modules/@stdlib/ml/incr/binary-classification/lib/loss_functions.json index dc5aebab6b5c..d33f3d828e30 100644 --- a/lib/node_modules/@stdlib/ml/incr/binary-classification/lib/loss_functions.json +++ b/lib/node_modules/@stdlib/ml/incr/binary-classification/lib/loss_functions.json @@ -1,7 +1,7 @@ [ "hinge", "log", - "modifiedHuber", + "modified-huber", "perceptron", - "squaredHinge" -] + "squared-hinge" +] \ No newline at end of file diff --git a/lib/node_modules/@stdlib/ml/incr/binary-classification/lib/main.js b/lib/node_modules/@stdlib/ml/incr/binary-classification/lib/main.js index b72ebbaeeb63..faf435acc4bc 100644 --- a/lib/node_modules/@stdlib/ml/incr/binary-classification/lib/main.js +++ b/lib/node_modules/@stdlib/ml/incr/binary-classification/lib/main.js @@ -47,7 +47,7 @@ var validate = require( './validate.js' ); * @param {Options} [options] - options object * @param {PositiveNumber} [options.lambda=1.0e-3] - regularization parameter * @param {ArrayLikeObject} [options.learningRate=['basic']] - learning rate function and associated parameters (one of `basic`, `constant`, or `pegasos`) -* @param {string} [options.loss='log'] - loss function (one of `hinge`, `log`, `modifiedHuber`, `perceptron`, or `squaredHinge`) +* @param {string} [options.loss='log'] - loss function (one of `hinge`, `log`, `modified-huber`, `perceptron`, or `squared-hinge`) * @param {boolean} [options.intercept=true] - boolean indicating whether to include an intercept * @throws {TypeError} first argument must be a positive integer * @throws {TypeError} options argument must be an object @@ -190,8 +190,8 @@ function incrBinaryClassification( N, options ) { t = 'label'; if ( arguments.length > 1 ) { if ( type === 'probability' ) { - if ( opts.loss !== 'log' && opts.loss !== 'modifiedHuber' ) { - throw new Error( format( 'invalid argument. Second argument is incompatible with model loss function. Probability predictions are only supported when the loss function is one of the following: "%s". Model loss function: `%s`.', [ 'log', 'modifiedHuber' ].join( '", "' ), opts.loss ) ); + if ( opts.loss !== 'log' && opts.loss !== 'modified-huber' ) { + throw new Error( format( 'invalid argument. Second argument is incompatible with model loss function. Probability predictions are only supported when the loss function is one of the following: "%s". Model loss function: `%s`.', [ 'log', 'modified-huber' ].join( '", "' ), opts.loss ) ); } } else if ( type !== 'label' && type !== 'linear' ) { throw new TypeError( format( 'invalid argument. Second argument must be a string value equal to either "label", "probability", or "linear". Value: `%s`.', type ) ); diff --git a/lib/node_modules/@stdlib/ml/incr/binary-classification/lib/model.js b/lib/node_modules/@stdlib/ml/incr/binary-classification/lib/model.js index 69f543905fd3..6e7448b3e551 100644 --- a/lib/node_modules/@stdlib/ml/incr/binary-classification/lib/model.js +++ b/lib/node_modules/@stdlib/ml/incr/binary-classification/lib/model.js @@ -53,9 +53,9 @@ var LEARNING_RATE_METHODS = { var LOSS_METHODS = { 'hinge': '_hingeLoss', 'log': '_logLoss', - 'modifiedHuber': '_modifiedHuberLoss', + 'modified-huber': '_modifiedHuberLoss', 'perceptron': '_perceptronLoss', - 'squaredHinge': '_squaredHingeLoss' + 'squared-hinge': '_squaredHingeLoss' }; diff --git a/lib/node_modules/@stdlib/ml/incr/docs/types/index.d.ts b/lib/node_modules/@stdlib/ml/incr/docs/types/index.d.ts index feb77555565b..a4400d2386d4 100644 --- a/lib/node_modules/@stdlib/ml/incr/docs/types/index.d.ts +++ b/lib/node_modules/@stdlib/ml/incr/docs/types/index.d.ts @@ -161,7 +161,7 @@ interface Namespace { * @param options.eta0 - constant learning rate (default: 0.02) * @param options.lambda - regularization parameter (default: 1e-3) * @param options.learningRate - string denoting the learning rate to use. Can be `constant`, `pegasos`, or `basic` (default: 'basic') - * @param options.loss - string denoting the loss function to use. Can be `squaredError`, `epsilonInsensitive`, or `huber` (default: 'squaredError') + * @param options.loss - string denoting the loss function to use. Can be `squared-error`, `epsilon-insensitive`, or `huber` (default: 'squared-error') * @param options.intercept - boolean indicating whether to include an intercept (default: true) * @throws must provide valid options * @returns regression model diff --git a/lib/node_modules/@stdlib/ml/incr/sgd-regression/README.md b/lib/node_modules/@stdlib/ml/incr/sgd-regression/README.md index cb8768435673..0c1c1dc9da04 100644 --- a/lib/node_modules/@stdlib/ml/incr/sgd-regression/README.md +++ b/lib/node_modules/@stdlib/ml/incr/sgd-regression/README.md @@ -56,7 +56,7 @@ for ( i = 0; i < 100000; i++ ) { The function accepts the following `options`: - **learningRate**: `string` denoting the learning rate to use. Can be `constant`, `pegasos` or `basic`. Default: `basic`. -- **loss**: `string` denoting the loss function to use. Can be `squaredError`, `epsilonInsensitive` or `huber`. Default: `squaredError`. +- **loss**: `string` denoting the loss function to use. Can be `squared-error`, `epsilon-insensitive` or `huber`. Default: `squared-error`. - **epsilon**: insensitivity parameter. Default: `0.1`. - **lambda**: regularization parameter. Default: `1e-3`. - **eta0**: constant learning rate. Default: `0.02`. @@ -66,7 +66,7 @@ The function accepts the following `options`: ```javascript var accumulator = incrSGDRegression({ - 'loss': 'squaredError', + 'loss': 'squared-error', 'lambda': 1e-4 }); ``` @@ -81,9 +81,9 @@ The `learningRate` decides how fast or slow the weights will be updated towards The used loss function is specified via the `loss` option. The available options are: -- **epsilonInsensitive**: Penalty is the absolute value of the error whenever the absolute error exceeds epsilon and zero otherwise. +- **epsilon-insensitive**: Penalty is the absolute value of the error whenever the absolute error exceeds epsilon and zero otherwise. - **huber**: Squared-error loss for observations with error smaller than epsilon in magnitude, linear loss otherwise. Should be used in order to decrease the influence of outliers on the model fit. -- **squaredError**: Squared error loss, i.e. the squared difference of the observed and fitted values. +- **squared-error**: Squared error loss, i.e. the squared difference of the observed and fitted values. The `lambda` parameter determines the amount of shrinkage inflicted on the model coefficients: @@ -232,7 +232,7 @@ rnorm = normal.factory( 0.0, 1.0 ); // Create model: accumulator = incrSGDRegression({ 'lambda': 1e-7, - 'loss': 'squaredError', + 'loss': 'squared-error', 'intercept': true }); diff --git a/lib/node_modules/@stdlib/ml/incr/sgd-regression/docs/types/index.d.ts b/lib/node_modules/@stdlib/ml/incr/sgd-regression/docs/types/index.d.ts index 9498397090bf..a14c2d3bf35f 100644 --- a/lib/node_modules/@stdlib/ml/incr/sgd-regression/docs/types/index.d.ts +++ b/lib/node_modules/@stdlib/ml/incr/sgd-regression/docs/types/index.d.ts @@ -47,9 +47,9 @@ interface Options { learningRate?: 'constant' | 'pegasos' | 'basic'; /** - * String denoting the loss function to use. Can be `squaredError`, `epsilonInsensitive`, or `huber` (default: 'squaredError'). + * String denoting the loss function to use. Can be `squared-error`, `epsilon-insensitive`, or `huber` (default: 'squared-error'). */ - loss?: 'squaredError' | 'epsilonInsensitive' | 'huber'; + loss?: 'squared-error' | 'epsilon-insensitive' | 'huber'; /** * Boolean indicating whether to include an intercept (default: true). @@ -113,7 +113,7 @@ interface Model { * @param options.eta0 - constant learning rate (default: 0.02) * @param options.lambda - regularization parameter (default: 1e-3) * @param options.learningRate - string denoting the learning rate to use. Can be `constant`, `pegasos`, or `basic` (default: 'basic') -* @param options.loss - string denoting the loss function to use. Can be `squaredError`, `epsilonInsensitive`, or `huber` (default: 'squaredError') +* @param options.loss - string denoting the loss function to use. Can be `squared-error`, `epsilon-insensitive`, or `huber` (default: 'squared-error') * @param options.intercept - boolean indicating whether to include an intercept (default: true) * @throws must provide valid options * @returns regression model diff --git a/lib/node_modules/@stdlib/ml/incr/sgd-regression/examples/index.js b/lib/node_modules/@stdlib/ml/incr/sgd-regression/examples/index.js index 2fda2a2d1b80..108fff94bb03 100644 --- a/lib/node_modules/@stdlib/ml/incr/sgd-regression/examples/index.js +++ b/lib/node_modules/@stdlib/ml/incr/sgd-regression/examples/index.js @@ -34,7 +34,7 @@ rnorm = normal.factory( 0.0, 1.0 ); // Create model: accumulator = incrSGDRegression({ 'lambda': 1e-7, - 'loss': 'squaredError', + 'loss': 'squared-error', 'intercept': true }); diff --git a/lib/node_modules/@stdlib/ml/incr/sgd-regression/lib/defaults.json b/lib/node_modules/@stdlib/ml/incr/sgd-regression/lib/defaults.json index ab0238d867f7..289c8a8cee91 100644 --- a/lib/node_modules/@stdlib/ml/incr/sgd-regression/lib/defaults.json +++ b/lib/node_modules/@stdlib/ml/incr/sgd-regression/lib/defaults.json @@ -4,5 +4,5 @@ "intercept": true, "lambda": 1e-3, "learningRate": "basic", - "loss": "squaredError" + "loss": "squared-error" } diff --git a/lib/node_modules/@stdlib/ml/incr/sgd-regression/lib/main.js b/lib/node_modules/@stdlib/ml/incr/sgd-regression/lib/main.js index 6dd6d278e591..a662ea68ba5a 100644 --- a/lib/node_modules/@stdlib/ml/incr/sgd-regression/lib/main.js +++ b/lib/node_modules/@stdlib/ml/incr/sgd-regression/lib/main.js @@ -53,7 +53,7 @@ var validate = require( './validate.js' ); * @param {PositiveNumber} [options.eta0=0.02] - constant learning rate * @param {NonNegativeNumber} [options.lambda=1e-3] - regularization parameter * @param {string} [options.learningRate='basic'] - string denoting the learning rate to use. Can be `constant`, `pegasos`, or `basic` -* @param {string} [options.loss='squaredError'] - string denoting the loss function to use. Can be `squaredError`, `epsilonInsensitive`, or `huber` +* @param {string} [options.loss='squared-error'] - string denoting the loss function to use. Can be `squared-error`, `epsilon-insensitive`, or `huber` * @param {boolean} [options.intercept=true] - boolean indicating whether to include an intercept * @throws {TypeError} options argument must be an object * @throws {TypeError} must provide valid options @@ -96,17 +96,17 @@ function incrSGDRegression( options ) { // Set loss function: switch ( opts.loss ) { - case 'epsilonInsensitive': + case 'epsilon-insensitive': _lossfun = epsilonInsensitiveLoss; break; case 'huber': _lossfun = huberLoss; break; - case 'squaredError': + case 'squared-error': _lossfun = squaredErrorLoss; break; default: - throw Error( format( 'invalid option. `%s` option must be one of the following: "%s". Option: `%s`.', 'loss', [ 'epsilonInsensitive', 'huber', 'squaredError' ].join( '", "' ), opts.loss ) ); + throw Error( format( 'invalid option. `%s` option must be one of the following: "%s". Option: `%s`.', 'loss', [ 'epsilon-insensitive', 'huber', 'squared-error' ].join( '", "' ), opts.loss ) ); } // Set learning rate: diff --git a/lib/node_modules/@stdlib/ml/incr/sgd-regression/test/test.main.js b/lib/node_modules/@stdlib/ml/incr/sgd-regression/test/test.main.js index b5d053a52fba..cc43102415cd 100644 --- a/lib/node_modules/@stdlib/ml/incr/sgd-regression/test/test.main.js +++ b/lib/node_modules/@stdlib/ml/incr/sgd-regression/test/test.main.js @@ -67,9 +67,9 @@ tape( 'the `loss` option of the function specifies the used loss function', func var i; values = [ - 'epsilonInsensitive', + 'epsilon-insensitive', 'huber', - 'squaredError' + 'squared-error' ]; len = values.length; From b0914bb369c06b2cce06845cea99a1dcd9bb1078 Mon Sep 17 00:00:00 2001 From: Ashutosh-1304 Date: Thu, 6 Aug 2026 18:32:14 +0530 Subject: [PATCH 2/5] fix: make TSDoc examples self-contained and add final newline to loss_functions.json --- .../ml/incr/binary-classification/lib/loss_functions.json | 2 +- .../@stdlib/ml/incr/sgd-regression/docs/types/index.d.ts | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/node_modules/@stdlib/ml/incr/binary-classification/lib/loss_functions.json b/lib/node_modules/@stdlib/ml/incr/binary-classification/lib/loss_functions.json index d33f3d828e30..6c99bc1d8f48 100644 --- a/lib/node_modules/@stdlib/ml/incr/binary-classification/lib/loss_functions.json +++ b/lib/node_modules/@stdlib/ml/incr/binary-classification/lib/loss_functions.json @@ -4,4 +4,4 @@ "modified-huber", "perceptron", "squared-hinge" -] \ No newline at end of file +] diff --git a/lib/node_modules/@stdlib/ml/incr/sgd-regression/docs/types/index.d.ts b/lib/node_modules/@stdlib/ml/incr/sgd-regression/docs/types/index.d.ts index a14c2d3bf35f..57b74228c10d 100644 --- a/lib/node_modules/@stdlib/ml/incr/sgd-regression/docs/types/index.d.ts +++ b/lib/node_modules/@stdlib/ml/incr/sgd-regression/docs/types/index.d.ts @@ -62,6 +62,7 @@ interface Model { * Model coefficients / feature weights. * * @example + * var accumulator = incrSGDRegression(); * // Retrieve coefficients: * var coefs = accumulator.coefs; */ @@ -75,6 +76,7 @@ interface Model { * @throws first argument must have length equal to the number of predictors * * @example + * var accumulator = incrSGDRegression(); * // Update model as observations come in: * var y = 3.5; * var x = [ 2.3, 1.0, 5.0 ]; @@ -90,6 +92,7 @@ interface Model { * @returns response value * * @example + * var accumulator = incrSGDRegression(); * // Predict new observation: * var x = [ 2.3, 5.3, 8.6 ]; * var yHat = accumulator.predict( x ); From 69cc1aca1d830fe124b42aa884213e6d645f5906 Mon Sep 17 00:00:00 2001 From: Ashutosh-1304 Date: Thu, 6 Aug 2026 18:39:50 +0530 Subject: [PATCH 3/5] fix: feed training data in coefs and predict TSDoc examples --- .../@stdlib/ml/incr/sgd-regression/docs/types/index.d.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/node_modules/@stdlib/ml/incr/sgd-regression/docs/types/index.d.ts b/lib/node_modules/@stdlib/ml/incr/sgd-regression/docs/types/index.d.ts index 57b74228c10d..6ab57084ed35 100644 --- a/lib/node_modules/@stdlib/ml/incr/sgd-regression/docs/types/index.d.ts +++ b/lib/node_modules/@stdlib/ml/incr/sgd-regression/docs/types/index.d.ts @@ -63,6 +63,7 @@ interface Model { * * @example * var accumulator = incrSGDRegression(); + * accumulator( [ 2.3, 1.0, 5.0 ], 3.5 ); * // Retrieve coefficients: * var coefs = accumulator.coefs; */ @@ -93,6 +94,7 @@ interface Model { * * @example * var accumulator = incrSGDRegression(); + * accumulator( [ 2.3, 1.0, 5.0 ], 3.5 ); * // Predict new observation: * var x = [ 2.3, 5.3, 8.6 ]; * var yHat = accumulator.predict( x ); From e50fa33c0b223b00e433138314ec4683cab69a8d Mon Sep 17 00:00:00 2001 From: nakul-krishnakumar Date: Fri, 7 Aug 2026 11:20:51 +0530 Subject: [PATCH 4/5] docs: update JSDocs to remove hyphens --- type: pre_commit_static_analysis_report description: Results of running static analysis checks when committing changes. report: - task: lint_filenames status: passed - task: lint_editorconfig status: passed - task: lint_markdown_pkg_readmes status: na - task: lint_markdown_docs status: na - task: lint_markdown status: na - task: lint_package_json status: na - task: lint_repl_help status: na - task: lint_javascript_src status: passed - task: lint_javascript_cli status: na - task: lint_javascript_examples status: na - task: lint_javascript_tests status: passed - task: lint_javascript_benchmarks status: na - task: lint_python status: na - task: lint_r status: na - task: lint_c_src status: na - task: lint_c_examples status: na - task: lint_c_benchmarks status: na - task: lint_c_tests_fixtures status: na - task: lint_shell status: na - task: lint_typescript_declarations status: passed - task: lint_typescript_tests status: na - task: lint_license_headers status: passed --- --- .../ml/incr/sgd-regression/lib/loss/epsilon_insensitive.js | 4 ++-- .../@stdlib/ml/incr/sgd-regression/lib/loss/huber.js | 2 +- .../@stdlib/ml/incr/sgd-regression/test/test.loss.huber.js | 2 +- .../ml/incr/sgd-regression/test/test.loss.squared_error.js | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/node_modules/@stdlib/ml/incr/sgd-regression/lib/loss/epsilon_insensitive.js b/lib/node_modules/@stdlib/ml/incr/sgd-regression/lib/loss/epsilon_insensitive.js index f113545c0cd8..f26833924d1e 100644 --- a/lib/node_modules/@stdlib/ml/incr/sgd-regression/lib/loss/epsilon_insensitive.js +++ b/lib/node_modules/@stdlib/ml/incr/sgd-regression/lib/loss/epsilon_insensitive.js @@ -26,11 +26,11 @@ var regularize = require( './../regularize.js' ); // MAIN // /** -* Given a new observation `(x,y)`, updates the weights using the epsilon-insensitive loss. +* Given a new observation `(x,y)`, updates the weights using the epsilon insensitive loss. * * ## Notes * -* The penalty of the epsilon-insensitive loss is the absolute value of the dot product of the weights and `x` minus `y` whenever the absolute error exceeds epsilon, and zero otherwise. +* The penalty of the epsilon insensitive loss is the absolute value of the dot product of the weights and `x` minus `y` whenever the absolute error exceeds epsilon, and zero otherwise. * * @private * @param {WeightVector} weights - current model coefficients diff --git a/lib/node_modules/@stdlib/ml/incr/sgd-regression/lib/loss/huber.js b/lib/node_modules/@stdlib/ml/incr/sgd-regression/lib/loss/huber.js index e4fd53801aeb..7f5c2a322984 100644 --- a/lib/node_modules/@stdlib/ml/incr/sgd-regression/lib/loss/huber.js +++ b/lib/node_modules/@stdlib/ml/incr/sgd-regression/lib/loss/huber.js @@ -30,7 +30,7 @@ var regularize = require( './../regularize.js' ); * * ## Notes * -* The Huber loss uses squared-error loss for observations with error smaller than epsilon in magnitude and linear loss above that in order to decrease the influence of outliers on the model fit. +* The Huber loss uses squared error loss for observations with error smaller than epsilon in magnitude and linear loss above that in order to decrease the influence of outliers on the model fit. * * [1]: https://en.wikipedia.org/wiki/Huber_loss * diff --git a/lib/node_modules/@stdlib/ml/incr/sgd-regression/test/test.loss.huber.js b/lib/node_modules/@stdlib/ml/incr/sgd-regression/test/test.loss.huber.js index 6876117af046..49670c83fc57 100644 --- a/lib/node_modules/@stdlib/ml/incr/sgd-regression/test/test.loss.huber.js +++ b/lib/node_modules/@stdlib/ml/incr/sgd-regression/test/test.loss.huber.js @@ -33,7 +33,7 @@ tape( 'main export is a function', function test( t ) { t.end(); }); -tape( 'the sub-gradient of the squared-error loss times the learning rate is added to the weights for absolute errors smaller than epsilon (no regularization)', function test( t ) { +tape( 'the sub-gradient of the squared error loss times the learning rate is added to the weights for absolute errors smaller than epsilon (no regularization)', function test( t ) { var expected; var weights; var epsilon; diff --git a/lib/node_modules/@stdlib/ml/incr/sgd-regression/test/test.loss.squared_error.js b/lib/node_modules/@stdlib/ml/incr/sgd-regression/test/test.loss.squared_error.js index 1fbf9bb8a2b0..3a7d00cc1f32 100644 --- a/lib/node_modules/@stdlib/ml/incr/sgd-regression/test/test.loss.squared_error.js +++ b/lib/node_modules/@stdlib/ml/incr/sgd-regression/test/test.loss.squared_error.js @@ -33,7 +33,7 @@ tape( 'main export is a function', function test( t ) { t.end(); }); -tape( 'the sub-gradient of the squared-error loss times the learning rate is added to the weights (no regularization)', function test( t ) { +tape( 'the sub-gradient of the squared error loss times the learning rate is added to the weights (no regularization)', function test( t ) { var expected; var weights; var epsilon; From a094fd33b3599357c918b2a11a131025f4397c2d Mon Sep 17 00:00:00 2001 From: nakul-krishnakumar Date: Fri, 7 Aug 2026 11:33:20 +0530 Subject: [PATCH 5/5] docs: update JSDocs to remove hyphens --- type: pre_commit_static_analysis_report description: Results of running static analysis checks when committing changes. report: - task: lint_filenames status: passed - task: lint_editorconfig status: passed - task: lint_markdown_pkg_readmes status: passed - task: lint_markdown_docs status: na - task: lint_markdown status: na - task: lint_package_json status: na - task: lint_repl_help status: na - task: lint_javascript_src status: na - task: lint_javascript_cli status: na - task: lint_javascript_examples status: na - task: lint_javascript_tests status: na - task: lint_javascript_benchmarks status: na - task: lint_python status: na - task: lint_r status: na - task: lint_c_src status: na - task: lint_c_examples status: na - task: lint_c_benchmarks status: na - task: lint_c_tests_fixtures status: na - task: lint_shell status: na - task: lint_typescript_declarations status: passed - task: lint_typescript_tests status: na - task: lint_license_headers status: passed --- --- lib/node_modules/@stdlib/ml/incr/sgd-regression/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/node_modules/@stdlib/ml/incr/sgd-regression/README.md b/lib/node_modules/@stdlib/ml/incr/sgd-regression/README.md index 0c1c1dc9da04..6e44ab726e0d 100644 --- a/lib/node_modules/@stdlib/ml/incr/sgd-regression/README.md +++ b/lib/node_modules/@stdlib/ml/incr/sgd-regression/README.md @@ -82,7 +82,7 @@ The `learningRate` decides how fast or slow the weights will be updated towards The used loss function is specified via the `loss` option. The available options are: - **epsilon-insensitive**: Penalty is the absolute value of the error whenever the absolute error exceeds epsilon and zero otherwise. -- **huber**: Squared-error loss for observations with error smaller than epsilon in magnitude, linear loss otherwise. Should be used in order to decrease the influence of outliers on the model fit. +- **huber**: Squared error loss for observations with error smaller than epsilon in magnitude, linear loss otherwise. Should be used in order to decrease the influence of outliers on the model fit. - **squared-error**: Squared error loss, i.e. the squared difference of the observed and fitted values. The `lambda` parameter determines the amount of shrinkage inflicted on the model coefficients: