Для численных расчетов и анализа данных часто используется математический пакет Matlab, но это коммерческая программа, и довольно дорогая. Студенты, изучающие машинное обучение, часто интересуются наличием доступных альтернатив Matlab, которые были бы бесплатными, и при этом достаточно мощными. Это позволило бы им не тратить свои деньги на программное обеспечение. Ниже я представлю лучшие бесплатные математические пакеты, которые могли бы послужить альтернативой Matlab в Ubuntu/Linux Mint.
1: GNU Octave
GNU Octave — это высокоуровневый интерпретируемый язык, в основном предназначенный для численных вычислений. Он содержит средства для численного решения линейных и нелинейных уравнений, и выполнения других численных экспериментов. Он также имеет продвинутые графические возможности для визуализации данных. Для работы с Octave обычно используется командная строка в интерактивном режиме, хотя можно писать и неинтерактивные программы. Язык Octave очень похож на Matlab, поэтому большинство программ очень легко портируются.
Octave имеет мощные инструменты для решения обычных алгебраических уравнений, нелинейных и дифференциальных уранений, интегрирования, работы с полиномами и т.д. Он легко расширяется и настраивается с помощью пользовательских функций, написанных на собственном языке Octave, или динамически загружаемых модулей, написанных на C++, C, Fortran, или других языках.
Для установки GNU Octave в Ubuntu/Linux Mint откройте терминал и введите следующую команду:
$ sudo apt-get install octave octave-doc
В качестве альтернативы вы можете скачать исходный код и собрать пакет самостоятельно.
2: Genius
Genius — это программа для вычислений, в определенных аспектах похожая на BC, Matlab, Maple или Mathematica. Ее можно использовать как обычный калькулятор, либо для исследований и образовательных целей. Синтаксис очень интуитивный и разработан таким образом, чтобы быть похожим на математическую запись. Для написания расширений имеется специальный язык GEL (Genius Extension Language). По факту многие стандартные функции Genius написаны на GEL.
Возможности Genius: целые числа произвольной точности; числа с плавающей точкой; рациональные числа, которые хранятся в виде числителя и знаменателя; комплексные числа; математические выражения; матричные вычисления и функции линейной алгебры; теория чисел; ограниченные возможности символьной математики; статистические функции; решение алгебраических уравнений, нахождение корней полиномов; комбинаторика; элементарные и тригонометрические функции; модульная арифметика; полнофункциональный язык программирования с динамической типизацией. Фактически большая часть Genius — это стандартная библиотека, написанная на GEL; функции для постронения 2D-графиков с возможностью экспорта в EPS и PNG; параметрические графики; трехмерные графики; трехмерные графики поверхностей.
Для установки Genius в Ubuntu/Linux Mint откройте терминал и введите следующие команды:
$ sudo apt-get install genius gnome-genius
Либо вы можете скачать исходный код последней сборки и собрать пакет самостоятельно.
3: Sagemath
Sage — это бесплатный математический пакет с открытым исходным кодом, лицензированный под GPL. Он объединяет мощь различных пакетов с открытым исходным кодом в едином интерфейсе командной строки на базе Python. Целью разработки Sage было создание свободной альтернативы Magma, Maple, Mathematica и Matlab. В Sage собрано более 100 математических пакетов с открытым исходным кодом. Его можно использовать для элементарных и продвинутых математических расчетов, включая алгебру, теорию чисел, криптографию, чсленные расчеты, коммутативную алгебру, теорию групп и многое другое.
Для установки последней версии Sagemath из PPA в Ubuntu/Linux Mint откройте терминал и введите следующие команды:
$ sudo apt-add-repository ppa:aims/sagemath $ sudo apt-get update $ sudo apt-get install sagemath-upstream-binary
Для установки Sagemath в Ubuntu/Linux Mint из репозитория Universe, откройте терминал и введите следующие команды:
$ sudo apt-get install sagemath-upstream-binary
Либо вы можете скачать исходный код последней сборки и собрать пакет самостоятельно.
4: Scilab
Scilab — это научный программный пакет для численных расчетов с использованием матриц. Scilab включает сотни встроенных математических функций, богатые структуры данных и набор специфических тулбоксов для обработки сигналов, моделирования и т.д. Scilab бесплатен и является программой с открытым исходным кодом. В его состав также входит Xcos — графический редактор для проектирования гибридных динамических моделей систем. Модели могут быть разработаны, загружены, сохранены, скомпилированы и запущены. Являясь стабильным и эффективным решением для промышленного и академического применения, Xcos предлагает функциональность для моделирования механических (автомобильная промышленность, авиастроение), гидравлических систем, а также систем управления.
Для установки Scilab в Ubuntu/Linux Mint из репозитория Universe, откройте терминал и введите следующие команды:
$ sudo apt-get install scilab scilab-cli
Либо вы можете скачать исходный код последней сборки и собрать пакет самостоятельно.
5: FreeMat
FreeMat — это бесплатное окружение для быстрого инженерного и научного прототипирования и обработки данных, распространяется под лицензией GPL. Пакет похож на MATLAB от Mathworks, и IDL от Research Systems, но имеет открытый исходный код. FreeMat поддерживает около 95% возможностей MATLAB.
Для установки FreeMat в Ubuntu/Linux Mint из репозитория Universe откройте терминал и введите следующие команды:
$ sudo apt-get install freemat
Либо вы можете скачать исходный код последней сборки и собрать пакет самостоятельно.