Ресурсы для работы с машинным обучением в F#


Я изучил курс машинного обучения, используя Matlab в качестве инструмента прототипирования. Поскольку я пристрастился к F#, я хотел бы продолжить изучение машинного обучения в F#.

Я могу использовать F# как для прототипирования, так и для производства, поэтому рамки машинного обучения было бы отличным началом. В противном случае, я могу начать с коллекции библиотек:

  • Высокооптимизированная библиотека линейной алгебры
  • статистика пакет
  • библиотека визуализации (которая позволяет рисовать и взаимодействовать с диаграммами, диаграммами...)
  • Parallel computing toolbox (аналогично MATLAB parallel computing toolbox)

и самые важные ресурсы (для меня) являются - книги, сообщения в блогах и онлайн-курсы, касающиеся машинного обучения на функциональном языке программирования (F#/OCaml/Haskell...).

может ли кто-нибудь предложить эти виды ресурсов? Спасибо.


EDIT:

Это резюме, основанное на ответах ниже:

рамки машинного обучения:

  • Infer.NET: платформа .NET framework для байесовского вывода в графических моделях с хорошей поддержкой F#.
  • WekaSharper: обертка F# вокруг популярной структуры интеллектуального анализа данных Weka.
  • Microsoft Sho: сплошной среде разработка для анализа данных (включая матричные операции, оптимизацию и визуализацию) на платформе .NET.

библиотеки, связанные с:

  • Math.NET Цифры: внутреннее использование Intel MKL и AMD ACML для матричных операций и поддержки статистических функций.

  • Microsoft Solver Foundation: хорошая структура для линейного программирования и оптимизации задачи.

  • FSharpChart: хорошая библиотека визуализации данных в F#.

список книг:

любые другие указатели или предложения также приветствуются.

4 52

4 ответа:

нет ни одного места для поиска ресурсов на F# и машинном обучении, но вот несколько ссылок, которые могут быть весьма полезны:

  • Численных Вычислений раздел на MSDN является хорошим ресурсом по использованию различных числовых библиотек из F#. Самая продвинутая библиотека, которая реализует линейную алгебру и другие алгоритмы, полезные в машинном обучении, - этоMath.NET цифры.

  • визуализация Данные раздел на MSDN имеет некоторые ресурсы для построения графиков в F#. Библиотека FSharpChart теперь поддерживается Карлом Ноланом, который регулярно публикует обновления в своем блоге.

есть также несколько личных страниц людей, которые работают на соответствующие темы:

  • Юрген Ван Гаэль (который сделал PhD в области машинного обучения) внес свой вклад в Math.NET библиотека и вы можете прочитать о свой опыт здесь.

  • Инь Чжу, который написал главу численных вычислений на MSDN (и является аспирантом, заинтересованным в машинном обучении) , имеет довольно много отличные статьи в своем блоге.

в дополнение к тому, что Томас упомянул, я провел некоторое время с Infer.NET около года назад и обнаружил, что это было довольно хорошо для непрерывных графических моделей. Я знаю, что за последний год он значительно улучшился как в области библиотеки, так и в поддержке F#. Я предлагаю проверить его и посмотреть, если он имеет то, что вам нужно.

Hal Daume реализовал множество алгоритмов машинного обучения в OCaml и Haskell. Подробности смотрите мой ответ в машинное обучение в OCaml или Haskell?

в сторону от численные вычисления в F# глава книги на MSDN, я также хотел бы рекомендовать мою обертку для Weka,WekaSharper. Он позволяет вызывать алгоритмы машинного обучения в Weka, используя дружественный к F#интерфейс.

Я написал статью почему F# - это язык для интеллектуального анализа данных, что отражает мое мышление, когда я закончил писать Альфа/прототипный пакет интеллектуального анализа данных в F#. libml доступно онлайн. Но код был написан около двух лет назад, когда я начал использовать F#, и у меня не было времени, чтобы сохранить его с тех пор.

У APress есть книга в "Альфа", которая скоро выйдет: проекты машинного обучения для разработчиков .NET. http://www.apress.com/9781430267676

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