Jump to content

ML.NET

ML.NET
Оригинальный автор(ы) Майкрософт
Разработчик(и) Фонд .NET
Первоначальный выпуск 7 мая 2018 г .; 6 лет назад ( 07.05.2018 ) [1]
Стабильная версия
3.0.0 / 28 ноября 2023 г .; 6 месяцев назад ( 28.11.2023 )
Предварительный выпуск
3.0.0-превью.23511.1 / 14 октября 2023 г .; 8 месяцев назад ( 14.10.2023 )
Репозиторий github /дотнет /машинное обучение /
Написано в С# и С++
Операционная система Linux , MacOS , Windows [2]
Платформа .NET ядро ,
.NET Framework
Тип машинного обучения Библиотека
Лицензия МОЯ лицензия [3]
Веб-сайт точка .сеть /мл

ML.NET — это бесплатная машинного обучения библиотека для языков программирования C# и F# . [4] [5] [6] Он также поддерживает модели Python при использовании вместе с NimbusML. Предварительная версия ML.NET включала преобразования для проектирования функций, такие как создание n-грамм , а также обучающих средств для выполнения задач двоичной классификации, многоклассовой классификации и регрессии. [7] С тех пор были добавлены дополнительные задачи машинного обучения, такие как системы обнаружения аномалий и рекомендаций, а другие подходы, такие как глубокое обучение, будут включены в будущие версии. [8] [9]

Машинное обучение [ править ]

ML.NET предоставляет существующим .NET-разработчикам возможности анализа и прогнозирования на основе моделей машинного обучения. Платформа построена на .NET Core и .NET Standard, унаследовав возможность кроссплатформенной работы в Linux , Windows и macOS . Хотя платформа ML.NET является новой, ее зарождение началось в 2002 году как исследовательский проект Microsoft под названием TMSN ( текстовый поиск и навигация) для внутреннего использования в продуктах Microsoft. Позже, примерно в 2011 году, он был переименован в TLC (код обучения). ML.NET произошел от библиотеки TLC и во многом превзошел своего родителя, говорит доктор Джеймс Маккаффри из Microsoft Research. [10]

Разработчики могут обучать модель машинного обучения или повторно использовать существующую модель сторонней организацией и запускать ее в любой среде в автономном режиме. Это означает, что разработчикам не обязательно иметь опыт работы в области науки о данных, чтобы использовать эту платформу. Поддержка с открытым исходным кодом Open Neural Network Exchange ( ONNX ) формата модели глубокого обучения была введена в сборке 0.3 в ML.NET. В выпуск вошли и другие заметные улучшения, такие как машины факторизации, LightGBM , ансамбли, преобразование LightLDA и OVA. [11] Интеграция TensorFlow с ML.NET включена с версии 0.5. В сборке 0.7 была добавлена ​​поддержка приложений x86 и x64, включая расширенные возможности рекомендаций с помощью матричной факторизации. [12] Полный план запланированных функций доступен в официальном репозитории GitHub. [13]

Первая стабильная версия платформы 1.0 была анонсирована на конференции разработчиков Build 2019. Она включала добавление инструмента Model Builder и возможностей AutoML (автоматического машинного обучения). [14] В сборке 1.3.1 представлена ​​предварительная версия обучения глубокой нейронной сети с использованием привязок C#. [15] для Tensorflow и загрузчик базы данных, который позволяет обучать модели в базах данных. В предварительной версии 1.4.0 добавлена ​​оценка ML.NET для процессоров ARM и обучение глубоким нейронным сетям с графическими процессорами для Windows и Linux. [16]

Производительность [ править ]

Статья Microsoft о машинном обучении с помощью ML.NET продемонстрировала, что она способна обучать модели анализа настроений с использованием больших наборов данных, обеспечивая при этом высокую точность. Его результаты показали точность 95% на наборе обзорных данных Amazon объемом 9 ГБ. [17]

Конструктор моделей [ править ]

ML.NET CLI — это интерфейс командной строки , который использует ML.NET AutoML для обучения модели и выбора наилучшего алгоритма для данных. Предварительная версия построителя моделей ML.NET [18] — это расширение для Visual Studio , которое использует ML.NET CLI и ML.NET AutoML для вывода лучшей модели ML.NET с помощью графического пользовательского интерфейса . [14]

Объяснимость модели [ править ]

В последние годы справедливость и объяснимость ИИ были предметом дискуссий среди специалистов по этике ИИ. [19] Основной проблемой для приложений машинного обучения является эффект черного ящика, когда конечные пользователи и разработчики приложения не уверены в том, как алгоритм пришел к решению или содержит ли набор данных предвзятость. [20] Сборка 0.8 включала API-интерфейсы объяснительности модели, которые использовались внутри Microsoft. Добавлена ​​возможность понимать важность функций моделей с добавлением «Общей важности функций» и «Обобщенных аддитивных моделей». [21]

Когда есть несколько переменных, влияющих на общий балл, можно увидеть разбивку каждой переменной и узнать, какие функции оказали наибольшее влияние на окончательный балл. Официальная документация показывает, что показатели оценки можно выводить в целях отладки. Во время обучения и отладки модели разработчики могут просматривать и проверять отфильтрованные данные в реальном времени. Это возможно с помощью инструментов Visual Studio DataView. [22]

Infer.NET [ править ]

Microsoft Research объявила, что популярная платформа машинного обучения на основе моделей Infer.NET, используемая для исследований в академических учреждениях с 2008 года, выпущена с открытым исходным кодом и теперь является частью платформы ML.NET. [23] Платформа Infer.NET использует вероятностное программирование для описания вероятностных моделей , что имеет дополнительное преимущество интерпретируемости. Пространство имен Infer.NET с тех пор было изменено на Microsoft.ML.Probabilistic в соответствии с пространствами имен ML.NET. [24]

Поддержка NimbusML Python [ править ]

Microsoft признала, что язык программирования Python популярен среди специалистов по данным, поэтому представила NimbusML — экспериментальную привязку Python для ML.NET. Это позволяет пользователям обучать и использовать модели машинного обучения в Python. Он был сделан с открытым исходным кодом, похожим на Infer.NET. [12]

Машинное обучение в браузере [ править ]

ML.NET позволяет пользователям экспортировать обученные модели в формат Open Neural Network Exchange (ONNX). [25] Это дает возможность использовать модели в различных средах, не использующих ML.NET. Эти модели можно было бы запускать на клиентской стороне браузера с помощью ONNX.js, клиентской среды JavaScript для моделей глубокого обучения, созданных в формате Onnx. [ нужна ссылка ]

Курс машинного обучения школы искусственного интеллекта [ править ]

Наряду с выпуском предварительной версии ML.NET Microsoft выпустила бесплатные учебные пособия и курсы по искусственному интеллекту, которые помогут разработчикам понять методы, необходимые для работы с платформой. [26] [27] [28]

См. также [ править ]

Ссылки [ править ]

  1. ^ Анкит Астана (07 мая 2017 г.). «Представляем ML.NET: кроссплатформенную, проверенную среду машинного обучения с открытым исходным кодом» . blogs.msdn.microsoft.com . Проверено 10 мая 2018 г.
  2. ^ «ML.NET: машинное обучение, созданное для .NET» . Майкрософт . Проверено 11 мая 2018 г.
  3. ^ у мастера · DotNet/MachineLearning
  4. ^ Дэвид Рамель (08 мая 2018 г.). «Кроссплатформенная ML.NET с открытым исходным кодом упрощает машинное обучение — журнал Visual Studio» . Журнал Visual Studio . Проверено 10 мая 2018 г.
  5. ^ Карим Андерсон (9 мая 2017 г.). «Microsoft представляет кроссплатформенную среду машинного обучения ML.NET» . На MSFT . Проверено 10 мая 2018 г.
  6. ^ Анкит Астана (07 августа 2018 г.). «Анонсируем ML.NET 0.4» . blogs.msdn.microsoft.com . Проверено 8 августа 2018 г.
  7. ^ Гал Ошри (06 мая 2018 г.). «Примечания к выпуску ML.NET 0.1» . Гитхаб . Проверено 10 мая 2018 г.
  8. ^ Тивари, Адитья (08 мая 2018 г.). «Microsoft запускает платформу машинного обучения с открытым исходным кодом ML.NET» . Фоссбайты . Проверено 10 мая 2018 г. Со временем это позволит выполнять другие задачи машинного обучения, такие как обнаружение аномалий, система рекомендаций и другие подходы, такие как глубокое обучение, с использованием преимуществ добавленных библиотек.
  9. ^ «Задачи машинного обучения в ML.NET» . Майкрософт . Проверено 26 декабря 2018 г.
  10. ^ Джеймс Маккаффри (19 декабря 2018 г.). «ML.NET: платформа машинного обучения для разработчиков .NET» . Специальный выпуск MSDN Magazine Connect() 2018 г. Проверено 9 января 2019 г. Несмотря на то, что библиотека ML.NET новая, ее происхождение уходит много лет назад. Вскоре после появления Microsoft .NET Framework в 2002 году компания Microsoft Research начала проект под названием TMSN («текстовый поиск и навигация»), чтобы позволить разработчикам программного обеспечения включать код ML в продукты и технологии Microsoft. Проект оказался очень успешным, и с годами его размеры и использование внутри Microsoft росли. Где-то примерно в 2011 году библиотека была переименована в TLC («код обучения»). TLC широко используется в Microsoft и в настоящее время находится в версии 3.10. Библиотека ML.NET является потомком TLC, в которой удалены специфичные для Microsoft функции. Я использовал обе библиотеки, и во многих отношениях дочерняя версия ML.NET превзошла свою родительскую.
  11. ^ «Выпуск Microsoft ML.NET v0.3» . Гитхаб . 03.07.2018 . Проверено 3 июля 2018 г.
  12. ^ Jump up to: Перейти обратно: а б «Анонс ML.NET 0.7 (машинное обучение .NET)» . Майкрософт . 08.11.2018 . Проверено 14 ноября 2018 г.
  13. ^ «Дорожная карта ML.NET» . Гитхаб . 09 мая 2018 г. Проверено 30 июня 2018 г.
  14. ^ Jump up to: Перейти обратно: а б «Анонсируем ML.NET 1.0» . Майкрософт . 06 мая 2019 г. Проверено 7 мая 2019 г.
  15. ^ «SciSharp/TensorFlow.NET» . SciSharp СТЕК. 21 февраля 2020 г.
  16. ^ «ML.NET 1.4.0-превью2» . Гитхаб . 09.10.2019 . Проверено 9 октября 2019 г.
  17. ^ Ахмед, Зишан; Амизаде, Саид; Биленко Михаил; Карр, Роган; Чин, Вэй-Шэн; Декель, Яэль; Дюпре, Ксавье; Эксаревский, Вадим; Эрхардт, Эрик; Эсеану, Костин; Филиппи, Сенья; Финли, Том; Госвами, Абхишек; Гувер, Монте; Инглис, Скотт; Интерланди, Маттео; Катценбергер, Шон; Казми, Наджиб; Кривошеев, Глеб; Луференко, Пит; Матанцев Иван; Матусевич, Сергей; Моради, Шахаб; Назиров, Гани; Ормонт, Джастин; Ошри, Гал; Паньони, Артидоро; Пармар, Джигнеш; Рой, Прабхат; и др. (15 мая 2019 г.). «Машинное обучение в Microsoft с ML.NET». Материалы 25-й Международной конференции ACM SIGKDD по обнаружению знаний и интеллектуальному анализу данных . Майкрософт и Яндекс . стр. 2448–2458. arXiv : 1905.05715 . дои : 10.1145/3292500.3330667 . ISBN  9781450362016 . S2CID   53380995 .
  18. ^ «dotnet/machinelearning-modelbuilder» . Платформа .NET. 17 февраля 2020 г.
  19. ^ «Искусственный интеллект может усилить предвзятость, облачные гиганты анонсируют инструменты для обеспечения справедливости ИИ» . Форбс . 24 сентября 2018 г. Проверено 5 декабря 2018 г.
  20. ^ «Что значит открыть черный ящик ИИ» . ПвК . 15 мая 2018 г. Проверено 5 декабря 2018 г.
  21. ^ Хасти, Тревор Дж. (1 ноября 2017 г.). «Обобщенные аддитивные модели». Статистические модели в S . стр. 249–307. дои : 10.1201/9780203738535-7 . ISBN  9780203738535 .
  22. ^ «Анонс ML.NET 0.8 — машинное обучение для .NET» . Майкрософт . 04.12.2018 . Проверено 5 декабря 2018 г.
  23. ^ «Microsoft открывает исходный код искусственного интеллекта Infer.NET как раз к выходным» . Регистр . 05.10.2018 . Проверено 31 октября 2018 г.
  24. ^ «Microsoft открывает исходный код Infer.NET, своей популярной среды машинного обучения на основе моделей» . Пакет . 08.10.2018 . Проверено 31 октября 2018 г.
  25. ^ «ML.NET — экспорт моделей Machine Learning.Net в формат ONNX» . Эль Бруно . 11 июля 2018 г. Проверено 9 января 2019 г.
  26. ^ «Школа ИИ» . Microsoft ИИ . 07.05.2018 . Проверено 29 июня 2018 г.
  27. ^ «Руководство по ML.NET» . Майкрософт . 07.05.2018 . Проверено 29 июня 2018 г.
  28. ^ «Руководство пользователя Infer.NET» . Инфер.НЕТ . 05.10.2018 . Проверено 31 октября 2018 г.

Дальнейшее чтение [ править ]

  • Капеллман, Джаред (2020). Практическое машинное обучение с помощью ML.NET: начало работы с Microsoft ML.NET для реализации популярных алгоритмов машинного обучения на C# . Пакт Паблишинг. ISBN  978-1789801781 .
  • Мукерджи, Судипта (2020). Представление ML.NET: простые инструменты для применения машинного обучения в ваших приложениях . Апресс. ISBN  978-1484265420 .
  • Эспозито, Дино; Эспозито, Франческо (2022). Программирование ML.NET . Майкрософт Пресс. ISBN  978-0137383658 .

Внешние ссылки [ править ]

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: ac604d3c979161b16b39ce47e716bf12__1718027340
URL1:https://arc.ask3.ru/arc/aa/ac/12/ac604d3c979161b16b39ce47e716bf12.html
Заголовок, (Title) документа по адресу, URL1:
ML.NET - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)