Skip to content

ML.NET public API exposes parameter weights which is not used. #2175

Closed
@abgoswam

Description

@abgoswam

For some of the learners e.g. SdcaRegression ML.NET public API exposes parameter weights

public static SdcaRegressionTrainer StochasticDualCoordinateAscent(this RegressionContext.RegressionTrainers ctx,
string labelColumn = DefaultColumnNames.Label,
string featureColumn = DefaultColumnNames.Features,
string weights = null,
ISupportSdcaRegressionLoss loss = null,
float? l2Const = null,

However, the advanced Options for SdcaRegressionTrainer do not have a field for 'WeightColumn'. Also, I believe the algo itself does not use weights (need to verify)

We need to scrub our public API for such spurious uses of weights parameter.

EDIT :

  • Based on investigations (see below), we see that the SdcaRegressionTrainer does use the weights column. So the proper fix would be to ensure that the weight column passed in the constructor gets used by the trainer.
  • For the example above, we need to add WeightColumn in the advanced Options for SdcaRegressionTrainer and verify it gets used by the SDCA trainer.

@sfilipi @glebuk @TomFinley

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions