Skip to content

Commit 889d9f1

Browse files
committed
Formatting fixups and edits
1 parent 8b93f03 commit 889d9f1

File tree

1 file changed

+9
-49
lines changed

1 file changed

+9
-49
lines changed

docs/project-docs/components-and-dependencies.md

Lines changed: 9 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -1,88 +1,48 @@
1-
ML.NET is a modular system where using it involves building a pipeline from data loaders, trainers/estimators (in case of training), transformers (in case of inferencing), and various data structures to facilitate the building of pipelines and representing data. The core of ML.NET – the Microsoft.ML has no external dependencies. It's largely managed code.
2-
3-
4-
5-
The core ML.NET does have a helper native math library CPUMath - which is only used on .NETFramework. Net6 and later have a managed implementation using intrinsics/TensorPrimitives and do not require the native build of CPUMath.
6-
7-
8-
9-
Microsoft.ML contains one other native library LDANative which is used by the LatentDirichletAllocationTransformer/LatentDirichletAllocationEstimator to support the LightLDA algorithm. If this component is used it will require the LightLDA native library. The native library is built my ML.NET for linux-arm, linux-arm64, linux-x64, osx-arm64 (M1), osx-x64, win-arm64, win-x64, win-x86. This library has only platform/CRT dependencies.
1+
ML.NET is a modular set of libraries that enables building a pipeline from data loaders, trainers/estimators (in case of training), transformers (in case of inferencing), and various data structures to facilitate the building of pipelines and representing data. The core of ML.NET – the Microsoft.ML package has no external dependencies. It's largely managed code.
102

3+
Microsoft.ML does have a helper native math library CPUMath - which is only used on .NETFramework. .NET 6.0 and later have a managed implementation using intrinsics/TensorPrimitives and do not require the native build of CPUMath.
114

5+
Microsoft.ML contains one other native library, LDANative, which is used by the LatentDirichletAllocationEstimator/Transform to support the LightLDA algorithm. If this component is used it will require the LightLDA native library. The native library is built for linux-arm, linux-arm64, linux-x64, osx-arm64 (M1), osx-x64, win-arm64, win-x64, win-x86. This library has only platform/CRT dependencies.
126

137
Some components that represent an algorithm or binding to another framework are factored into separate packages to allow opt-in to using those and their dependencies.
148

15-
ML.NET redistributes Intel MKL as Microsoft.ML.MKL.Redist in which a minimized library is linked with just exports used. This component is follows the support matrix of Intel MKL and is only supported on x86 and x64 architectures: linux-x64, osx-x64 (no longer supported by Intel), win-x64, and win-x86. Similarly some components have light-up to use an Intel OneDAL implementation which is only supported on x64.
9+
ML.NET redistributes Intel MKL as Microsoft.ML.MKL.Redist in which is a minimized MKL library linked with just exports needed by ML.NET. This component is follows the support matrix of Intel MKL and is only supported on x86 and x64 architectures: linux-x64, osx-x64 (no longer supported by Intel), win-x64, and win-x86. Similarly some components have light-up to use an Intel OneDAL implementation which is only supported on x64.
1610

1711
| NuGet Package | Entry-Point Components | Native Dependencies | Status | Notes |
18-
1912
|-------------------------------------|----------------------------------------------------------------|------------------------------------------------|----------|--------------------------------------------------------------------------------------------|
20-
2113
| `Microsoft.ML` | `MLContext`, core transforms, trainers | None | Stable | |
22-
2314
| `Microsoft.Extensions.ML` | `PredictionEnginePool` | None | Stable | |
24-
25-
| `Microsoft.ML.AutoML` | `AutoCatalog` for AutoML | \*As required by other components\* | Preview | Support varies based on components used |
26-
15+
| `Microsoft.ML.AutoML` | `AutoCatalog` for AutoML | *As required by other components* | Preview | Support varies based on components used |
2716
| `Microsoft.ML.CodeGenerator` | | None | Preview | Part of AutoML |
28-
2917
| `Microsoft.ML.CpuMath` | | Optional native | Stable | Internal implementation; only used on .NET Framework |
30-
3118
| `Microsoft.ML.DataView` | `IDataView` | None | Stable | |
32-
33-
| `Microsoft.ML.DnnImageFeaturizer.\*` | | None | Preview | Data-only |
34-
19+
| `Microsoft.ML.DnnImageFeaturizer.*` | | None | Preview | Data-only |
3520
| `Microsoft.ML.Ensemble` | | None | Preview | Supports ML.NET component catalog |
36-
3721
| `Microsoft.ML.EntryPoints` | | None | Preview | Supports ML.NET component catalog |
38-
3922
| `Microsoft.ML.Experimental` | | None | Preview | Experimental API |
40-
4123
| `Microsoft.ML.FairLearn` | `FairlearnCatalog` | None | Preview | |
42-
4324
| `Microsoft.ML.FastTree` | `FastTreeRankingTrainer` | Optional native acceleration | Stable | Native library used on x86/x64; managed fallback |
44-
4525
| `Microsoft.ML.ImageAnalytics` | `MLImage` (image exchange type) | `libSkiaSharp` | Stable | Wrapper over SkiaSharp / Google Skia; supported where dependency is supported |
46-
47-
| `Microsoft.ML.LightGBM` | `LightGbm\*Trainer` | `LightGBM` | Stable | Wrapper over LightGBM; supported where dependency is supported |
48-
26+
| `Microsoft.ML.LightGBM` | `LightGbm\*Trainer` | `LightGBM` | Stable | Wrapper over LightGBM; supported where dependency is supported |
4927
| `Microsoft.ML.MKL.Components` | `SymbolicSgdLogisticRegressionBinaryTrainer` | Intel MKL | Stable | Only works where Intel MKL works |
50-
5128
| `Microsoft.ML.MKL.Redist` | Internal native Intel MKL | `libomp` | Stable | Not for direct reference; win-x86/x64 only |
52-
5329
| `Microsoft.ML.OneDal` | Internal native Intel OneDal | Intel OneDAL | Preview | Not for direct reference; x64 only |
54-
5530
| `Microsoft.ML.OnnxConverter` | Adds ONNX export support | `Microsoft.ML.OnnxRuntime` | Stable | Wrapper over ONNX Runtime; supports "bring your own" runtime |
56-
5731
| `Microsoft.ML.OnnxTransformer` | `OnnxCatalog` | `Microsoft.ML.OnnxRuntime` | Stable | Wrapper over ONNX Runtime; supports "bring your own" runtime |
58-
5932
| `Microsoft.ML.Parquet` | `ParquetLoader` | None | Preview | Uses managed Parquet.Net (port of Apache Parquet) |
60-
6133
| `Microsoft.ML.Recommender` | `MatrixFactorizationTrainer` | LIBMF (bundled) | Stable | Includes libmf built for all runtimes supported by ML.NET |
62-
6334
| `Microsoft.ML.TensorFlow` | `TensorFlowModel`, `Transformer`, `Estimator` | TensorFlow via `TensorFlow.NET` | Stable | Wrapper over TensorFlow; supports "bring your own" runtime |
64-
6535
| `Microsoft.ML.TimeSeries` | `ForecastingCatalog` | Intel MKL, `libomp` | Stable | Only works where Intel MKL works |
66-
6736
| `Microsoft.ML.TorchSharp` | `QATrainer`, `TextClassificationTrainer`, `SentenceSimilarityTrainer` | libTorch via `TorchSharp` | Preview | Wrapper over libTorch; supported where TorchSharp is supported |
68-
6937
| `Microsoft.ML.Vision` | `ImageClassificationTrainer` | TensorFlow | Stable | Depends on `Microsoft.ML.TensorFlow` for implementation |
7038

7139

72-
73-
74-
7540
Other packages:
7641
| NuGet Package | Entry-Point Components | Native Dependencies | Status | Notes |
77-
7842
|----------------------------------|--------------------------------------------------|-----------------------------------------------|------------|---------|
79-
8043
| `Microsoft.Data.Analysis` | `DataFrame` | `Apache.Arrow` | Preview | |
81-
82-
| `Microsoft.ML.GenAI.\*` | | | Preview | |
83-
84-
| `Microsoft.ML.Tokenizers.\*` | `Tokenizer` | | Stable | |
85-
44+
| `Microsoft.ML.GenAI.*` | | | Preview | |
45+
| `Microsoft.ML.Tokenizers.*` | `Tokenizer` | | Stable | |
8646
| `Microsoft.ML.SampleUtils` | | | Preview | |
8747

8848

0 commit comments

Comments
 (0)