Компоненты Orange называются виджетами. Они варьируются от простой визуализации данных, выбора подмножества и предварительной обработки до эмпирической оценки алгоритмов обучения
и предиктивного моделирования .
Визуальное программирование реализовано через интерфейс, в котором рабочие процессы создаются путем связывания предопределенных или разработанных пользователем виджетов , в то время как продвинутые пользователи могут использовать Orange как библиотеку Python для манипулирования данными и изменения виджетов. [5]
Программное обеспечение
Orange — это пакет программного обеспечения с открытым исходным кодом, выпущенный под лицензией GPL и размещенный на GitHub . Версии до 3.0 включают основные компоненты на C++ с оболочками на Python . Начиная с версии 3.0, Orange использует общие библиотеки Python с открытым исходным кодом для научных вычислений, такие как numpy , scipy и scikit-learn , а его графический пользовательский интерфейс работает в кроссплатформенной среде Qt .
Установка по умолчанию включает ряд алгоритмов машинного обучения, предварительной обработки и визуализации данных в 6 наборах виджетов (данные, преобразование, визуализация, моделирование, оценка и неконтролируемый). Дополнительные функции доступны в качестве дополнений (текстовый анализ, анализ изображений, биоинформатика и т. д.).
Orange состоит из интерфейса холста , на который пользователь помещает виджеты и создает рабочий процесс анализа данных. Виджеты предлагают базовые функции, такие как чтение данных, отображение таблицы данных, выбор признаков, обучение предикторов, сравнение алгоритмов обучения, визуализация элементов данных и т. д. Пользователь может интерактивно исследовать визуализации или вводить выбранное подмножество в другие виджеты.
Canvas : графический интерфейс для анализа данных
Виджеты :
Данные : виджеты для ввода данных, фильтрации данных, выборки, подстановки, манипулирования признаками и выбора признаков.
Визуализация : виджеты для общей визуализации (ящичная диаграмма, гистограммы, диаграмма рассеяния) и многомерной визуализации (мозаичное отображение, решетчатая диаграмма).
Регрессия : набор контролируемых алгоритмов машинного обучения для регрессии.
Оценка : перекрестная проверка, процедуры на основе выборки, оценка надежности и оценка методов прогнозирования.
Неконтролируемое обучение : алгоритмы неконтролируемого обучения для кластеризации (k-средних, иерархическая кластеризация) и методы проецирования данных (многомерное шкалирование, анализ главных компонентов, анализ соответствий).
Дополнения
Пользователи Orange могут расширить свой основной набор компонентов с помощью компонентов в дополнениях. Поддерживаемые дополнения включают:
Ассоциация : компоненты для анализа часто встречающихся наборов элементов и изучения правил ассоциации .
Биоинформатика : компоненты для анализа экспрессии генов, обогащения и доступа к базам данных экспрессии (например, Gene Expression Omnibus ) и библиотекам путей.
Временные ряды : компоненты виджетов для анализа и моделирования временных рядов .
Отдельные клетки : поддержка анализа экспрессии генов отдельных клеток, включая компоненты для загрузки данных отдельных клеток, фильтрации и удаления пакетных эффектов , обнаружения генов-маркеров, оценки клеток и генов, а также прогнозирования типа клеток.
Спектроскопия : компоненты для анализа и визуализации (гипер)спектральных наборов данных. [6]
Анализ выживаемости : дополнение для анализа данных, связанное с данными выживаемости. Включает виджеты для стандартных методов анализа выживаемости, таких как график Каплана-Майера , модель регрессии Кокса и несколько производных виджетов.
World Happiness : поддержка загрузки социально-экономических данных из базы данных, включая ОЭСР и показатели мирового развития . Предоставляет доступ к тысячам показателей стран из различных экономических баз данных.
Справедливость : надстройка для оценки и создания справедливых моделей машинного обучения без дискриминации. Виджеты варьируются от вычисления метрик справедливости, таких как статистический паритет, до методов пост-, пред- и внутриобработки для построения справедливых моделей. [7]
Цели
Программа предоставляет платформу для выбора эксперимента, рекомендательных систем и предиктивного моделирования и используется в биомедицине , биоинформатике , геномных исследованиях и обучении. В науке она используется как платформа для тестирования новых алгоритмов машинного обучения и внедрения новых методов в генетике и биоинформатике. В образовании она использовалась для обучения студентов биологии, биомедицины и информатики методам машинного обучения и добычи данных.
Расширения
Различные проекты создаются на основе Orange, либо путем расширения основных компонентов с помощью надстроек, либо с использованием только Orange Canvas для использования реализованных функций визуального программирования и графического интерфейса пользователя.
OASYS — Оранжевый Синхротронный Комплект [8]
scOrange — биостатистика отдельных клеток
Quasar — анализ данных в естественных науках
История
В 1996 году Люблянский университет и Институт Йожефа Стефана начали разработку ML*, фреймворка машинного обучения на C++ , а в 1997 году для этого фреймворка были разработаны привязки Python , которые вместе с появляющимися модулями Python образовали совместный фреймворк под названием Orange. В последующие годы большинство современных основных алгоритмов для добычи данных и машинного обучения были реализованы на C++ (ядро Orange) или в модулях Python.
В 2002 году были разработаны первые прототипы для создания гибкого графического пользовательского интерфейса с использованием Pmw Python megawidgets .
В 2003 году графический пользовательский интерфейс был переработан и переработан для фреймворка Qt с использованием привязок PyQt Python. Был определен фреймворк визуального программирования и началась разработка виджетов (графических компонентов конвейера анализа данных).
В 2005 году были созданы расширения для анализа данных в биоинформатике .
В 2008 году были разработаны установочные пакеты на базе Mac OS X DMG и Fink .
В 2009 году было создано и поддерживается более 100 виджетов.
В 2009 году была выпущена бета-версия Orange 2.0, предлагающая на веб-сайте установочные пакеты на основе ежедневного цикла компиляции.
В 2012 году была введена новая иерархия объектов, заменившая старую модульную структуру.
В 2013 году была проведена значительная переработка графического пользовательского интерфейса, включавшая в себя новый набор инструментов и отображение рабочих процессов.
В 2015 году вышел Orange 3.0. Orange хранит данные в массивах NumPy ; алгоритмы машинного обучения в основном используют scikit-learn .
В 2015 году было выпущено дополнение для анализа текста для Orange3.
В 2016 году Orange выпустила версию 3.3. Разработка запланировала ежемесячный цикл стабильных релизов.
В 2016 году Orange начала разработку и выпуск дополнения Image Analytics с серверными глубокими нейронными сетями для встраивания изображений [9]
В 2017 году был представлен модуль Spectroscopy для анализа спектральных данных. [10]
В 2017 году было представлено дополнение Geo для работы с данными геолокации и визуализации геокарт [11].
В 2018 году Orange начала разработку и выпуск надстройки для анализа данных отдельных ячеек. [12]
В 2019 году Orange выделила свой графический интерфейс для разработки в отдельный проект orange-canvas-core [13]
В 2020 году компания Orange представила дополнение Explain с виджетами для объяснения моделей классификации и регрессии , подчеркивая силу и вклад конкретных признаков в прогнозирование определенного класса.
В 2022 году было представлено дополнение World Happiness для пакета анализа данных Orange3, предоставляющее виджеты для доступа к социально-экономическим данным из различных баз данных, таких как World Happiness Report , World Development Indicators , OECD.
В 2022 году Orange расширил надстройку Explain, добавив график индивидуального условного ожидания и метод важности признаков перестановки.
В 2023 году Orange представила дополнение Fairness, включающее виджеты для расчета показателей смещения, а также виджеты для методов предварительной, последующей и внутренней обработки, что позволяет создавать модели, менее подверженные систематическим ошибкам из-за непредсказуемости набора данных.
Ссылки
^ "orange3/CHANGELOG.md в master . biolab/orange3 . GitHub". GitHub .
^ "Release 3.37.0". 27 мая 2024 г. Получено 2 июня 2024 г.
^ "Оранжевый - Лицензия".
^ "orange3/LICENSE на master . biolab/orange3 . GitHub". GitHub .
^ Янез Демшар; Томаж Цурк; Алеш Эрьявец; Чрт Горуп; Томаж Хочевар; Митар Милутинович; Мартин Можина; Матия Полайнар; Марко Топлак; Анже Старич; Миха Стайдохар; Лан Умек; Лан Жагар; Юре Жбонтар; Маринка Житник; Блаж Жупан (2013). «Оранжевый: набор инструментов для интеллектуального анализа данных на Python» (PDF) . Журнал исследований машинного обучения . 14 (1): 2349–2353.
^ Toplak, M.; Birarda, G.; Read, S.; Sandt, C.; Rosendahl, SM; Vaccari, L.; Demšar, J.; Borondics, F. (2017). «Инфракрасный оранжевый: соединение гиперспектральных данных с машинным обучением». Synchrotron Radiation News . 30 (4): 40–45. Bibcode : 2017SRNew..30...40T. doi : 10.1080/08940886.2017.1338424. S2CID 125273654.
^ Iomids (30 мая 2024 г.). «Проверка ИИ на дискриминацию через GUI с использованием дополнения Orange Fairness». IOMIDS.
^ Санчес Дель Рио, Мануэль; Ребуффи, Лука (2017). "OASYS (Or Ange SYnchrotron Suite): графическая среда с открытым исходным кодом для виртуальных рентгеновских экспериментов". В Chubar, Олег; Sawhney, Кавал (ред.). Достижения в области вычислительных методов для рентгеновской оптики IV . стр. 28. doi :10.1117/12.2274263. ISBN9781510612334. S2CID 117118973.
^ Примож Годец; Матяж Панчур; Нейц Иленич; Андрей Чопар; Мартин Стражар; Алеш Эрьявец; Ажда Петнар; Янез Демшар; Марко Топлак; Анже Старич; Лан Жагар; Ян Хартман; Гамильтон Ван; Риккардо Беллацци; Урош Петрович; Сильвия Гаранья; Маурицио Зуккотти; Парк Донгсу; Гад Шаульский; Блаж Жупан (2019). «Демократизированная аналитика изображений с помощью визуального программирования за счет интеграции глубоких моделей и мелкомасштабного машинного обучения». Природные коммуникации . 10 (1): 4551. Бибкод : 2019NatCo..10.4551G. doi : 10.1038/s41467-019-12397-x. PMC 6779910. PMID 31591416. S2CID 203782491 .
^ Марко Топлак; Стюарт Т. Рид; Кристоф Сандт; Ференц Борондикс (2021). «Квазар: простое машинное обучение для биоспектроскопии». Клетки . 10 (9): 2300. doi : 10.3390/cells10092300 . PMC 8466383. PMID 34571947 .