Поделиться через


Microsoft.ML.Runtime Пространство имен

Пространство имен, содержащее типы, необходимые среде выполнения ML.NET.

Классы

ComponentCatalog

В этом каталоге создаются экземпляры компонентов (например, загружаемые классы). Компоненты регистрируются через потомок Microsoft.ML.LoadableClassAttributeBase, идентифицируя имена и типы подписей, в которых должен быть зарегистрирован тип компонента. Сигнатуры — это типы делегатов, которые возвращают void и указывают типы параметров для создания экземпляра компонента. Каждый компонент также может указывать "объект аргументов", который должен быть предоставлен во время создания экземпляра.

ProgressHeader

Это заголовок отчета о ходе выполнения.

Структуры

ChannelMessage

Сообщение канала.

Интерфейсы

IChannel

Стандартный коммуникационный канал.

IChannelProvider

Поставщик каналов может создавать новые каналы и универсальные информационные каналы.

IComponentFactory

Это интерфейс токена, который должны реализовывать все фабрики компонентов.

IComponentFactory<TComponent>

Интерфейс для создания компонента без дополнительных параметров (кроме ).IHostEnvironment

IComponentFactory<TArg1,TComponent>

Интерфейс для создания компонента, когда мы берем один дополнительный параметр (и).IHostEnvironment

IComponentFactory<TArg1,TArg2,TComponent>

Интерфейс для создания компонента при использовании двух дополнительных параметров (и).IHostEnvironment

IComponentFactory<TArg1,TArg2,TArg3,TComponent>

Интерфейс для создания компонента при использовании трех дополнительных параметров (и).IHostEnvironment

IExceptionContext

Интерфейс для "обработки" исключений перед их созданием. Это можно использовать для добавления контекста в исключение, переноса исключения в другой, полной замены исключения и т. д. Не является законным возвращать значение NULL из процесса (если не было передано значение NULL, что действительно не должно произойти).

IHost

Узел связан с компонентом и предоставляет рекомендации по генерации случайных чисел и параллелизма. Обратите внимание, что доступ к случайному поколению чисел, например к методам среды узла, должен осуществляться только из основного потока для компонента.

IHostEnvironment

Интерфейс среды узла создает узлы для компонентов. Обратите внимание, что методы этого интерфейса должны вызываться из основного потока среды. Чтобы получить среду для обслуживания другого потока, вызовите вилку и передайте результат возврата в этот поток.

IPipe<TMessage>

Универсальный канал сведений. Обратите внимание, что каналы являются одноразовыми. Как правило, перед удалением следует вызывать done to signal a normal shut-down of the pipe, а не aborted completion.

IProgressChannel

Общий интерфейс для отчетов о ходе выполнения. Ожидается, что интерфейс канала хода выполнения используется только из одного потока.

Поддерживаемый рабочий процесс:

  1. Создайте канал с помощью StartProgressChannel(String).
  2. Вызывайте SetHeader(ProgressHeader, Action<IProgressEntry>) столько раз, сколько нужно (включая 0). Каждый вызов заменяет SetHeader(ProgressHeader, Action<IProgressEntry>) предыдущий.
  3. Отчеты о контрольных точках (0 или более) путем вызова Checkpoint(Nullable<Double>[]).
  4. Повторите шаги 2–3 так часто, как это необходимо.
  5. Удалите канал.
IProgressChannelProvider

Это фабричные интерфейсы для IProgressChannel. IProgressChannel И IHostEnvironment реализуйте этот интерфейс, чтобы разрешить вложенным журналистам хода выполнения.

REVIEW: сделайте IChannelProvider это, а не среду?

IProgressEntry

Элемент владельца метрики или хода выполнения.

Перечисления

ChannelMessageKind

Типы сообщений стандартного канала. Примечание. Эти значения никогда не следует изменять. Мы можем добавить новые типы, но не изменять эти значения. Другие базы кода, включая машинный код для других проектов, зависят от этих значений.

MessageSensitivity

Флаг, который может быть присоединен к сообщению или исключению, чтобы указать, что он имеет определенный класс конфиденциальных данных. По умолчанию сообщения должны быть указаны как неизвестные чувствительность, то есть каждый флаг конфиденциальности включен, соответствующий Unknown. Сообщения, которые полностью безопасны, должны быть помечены как None. Однако если, скажем, один выводит данные из файла (например, это может быть сделано при выражении ошибок синтаксического анализа), он должен быть помечен в этом случае с UserData.