Приветствую. Есть ли какие-то готовые библиотеки для Ады на тему машинного обучения? Реализованные решающие деревья, бустинг, линейные методы, метод опорных векторов (SVM) в его различных вариациях и так далее? Я поискал, найти не смог. Спасибо.
> Деревья решений реализованы здесь > http://www.dmitry-kazakov.de/ada/fuzzy_ml.htm Спасибо! Попробую разобраться что там как. > Сама система обучения, в принципе, расширяемая. Я не добавлял других > методов обучения т.к. 20 лет не было никакого реального экономического > интереса к машинному обучению вообще. Да и теперь все это выглядит как > мыльный пузырь тогда, в начале 90-х. Посмотрим. > Ну, скажем так, хайпа вокруг этих методов, как обычно, подняли больше чем оно того стоит, но по факту это все уже довольно давно используется в проде (в некоторых областях конечно, не везде), и с этим нельзя не считаться. Например, там где я работаю ML используется повсеместно. Я не уверен что в нише Ады ML прям таки нужен-нужен. На ум приходит разве что self driving car, где с одной стороны совсем без ML тяжко, с другой если ML-часть реализована на питоне или плюсах, то это как-то стрёмно c точки зрения безопасности. (хотя наличие ML само по себе означает, что ошибки таки БУДУТ, но добавлять к ML-ошибка еще софтверные ошибки реализации, это как-то перебор)
Деревья решений реализованы здесь http://www.dmitry-kazakov.de/ada/fuzzy_ml.htm http://www.dmitry-kazakov.de/ada/fuzzy_ml.htm Графичесий интерфейс можно не использовать, если не нужен. Нечеткость вся сведена на нижний уровень дерева, т.е. оно может работать как четкое или вероятностное дерево. Сама система обучения, в принципе, расширяемая. Я не добавлял других методов обучения т.к. 20 лет не было никакого реального экономического интереса к машинному обучению вообще. Да и теперь все это выглядит как мыльный пузырь тогда, в начале 90-х. Посмотрим.
Будут вопросы или пожелания, пришите. Касательно надежности, это - не проблема языка, а проблема самого подхода. Инженерное решение должно иметь определенные рамки применимости, что позволяет предвидеть вероятность отказа, его стоимость и т.п. В случае ИИ, все решения не инженерные по-определению. Вы в принципе не знаете почему обученная смстема работает, и когда и где она работать не будет. Если бы знали, то не надо было бы обучать. Так что ИИ - то, что (пока) не знаем как. Когда знаем это - уже не ИИ, а просто конкретный метод решения конкретной проблемы. Есть всякие подходы к "извлечению знаний" из обученной системы. Но это не очень работает, скорее, очень не работает. Прямая аналогия - воспитание детей или дрессировка животных. Каждый случай - штучный товар, исход не предсказуем, результат на другой объект не переносим. Детский сад или цирк - не инженерное бюро, хотя бывает что наооборот. Хуже того, сами области применения ИИ таковы, что системы там не тестируемы. Например, невозможно тестировать систему автономного вождения с покрытием больше чем бесконечно малым. То есть и прямые методы контроля (доказательство, оценка), и косвенные (тесты, сценарии) не работают. На чем это писать - ну какая разница?
Чтобы оставить новое сообщение необходимо Зарегистрироваться и Войти