Skip to content

Microsoft.ML.StandardTrainers references Microsoft.ML.SearchSpace but it's not included in Microsoft.ML package #6949

Closed
@ericstj

Description

@ericstj

System Information (please complete the following information):

  • OS & Version: Any
  • ML.NET Version: 3.0
  • .NET Version: Any

Describe the bug
Microsoft.ML.StandardTrainers.dll references Microsoft.ML.SearchSpace.dll but the latter is not included in the Microsoft.ML package, but the Microsoft.ML.AutoML package.

I haven't noticed any side-effects from this yet since the usage of Microsoft.ML.SearchSpace is only in attributes, but it's possible that anything trying to enumerate other attributes on these types would see FileLoadExceptions.

I discussed it with @LittleLittleCloud and suggested a couple options, if we decide we need to fix this.

  1. Just include Microsoft.ML.SearchSpace.dll in Microsoft.ML. While this is possible it may add dependencies to Microsoft.ML - one in particular is System.Text.Json which may be odd next to Newtonsoft.Json which it already references. Eventually we should try to move away from Newtonsoft to STJ, but that's not planned yet.
  2. Refactor the implementation of the attributes in SearchSpace to be pure attributes that merely expose their parameters (see guidelines for inspiration) and typeforward those down into Microsoft.ML.Core without any of the options types they internally reference.

Metadata

Metadata

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions