Обсуждение:Полигон алгоритмов
Материал из MachineLearning.
Исследователи, студенты, программисты, заинтересовавшиеся проектом, и желающие участвовать в разработке, могут обращаться ко мне (К.В.Воронцов). |
История
В Советском Союзе попытки разработки такого Полигона предпринимались несколько раз. Если кто-то может квалифицированно и непредвзято изложить историю полигонов, сделайте это, пожалуйста, на данной странице, либо дайте ссылки. — К.В.Воронцов 01:48, 5 апреля 2008 (MSD)
Вводный комментарий
Действительно интересный, актуальный и амбициозный проект!
1) Однако, первый вопрос, который у меня возникает, как можно сравнивать алгоритмы классификации без приведения терминов, в которых описываются входные и выходные данные к общей теоретико-вероятностной базе? А, без этого, как можно применять один алгоритм классификации A, взятый из одной области знаний X - в совсем другой области Y? Не совсем очевидно, откуда в этом алгоритме может быть хоть сколько бы значимая информация об этой области Y... Другое дело, если было бы возможно выделить некоторые общие объективные характеристики связанные с самой задачей и классифицировать сами задачи по этим характеристикам. — Участник:ADY
- Алгоритмы классификации обучаются по прецедентам, привлекая минимум дополнительной информации, ориентированной на конкретную задачу. Практически все известные алгоритмы универсальны и могут применяться к любой задаче, описанной матрицей «объекты–признаки» (нейросети, метрические классификаторы, SVM, логические алгоритмы, и многие другие). Таких алгоритмов сотни или даже тысячи. Некоторые из них работают лучше в среднем по всем задачам (например, бустинг решающих деревьев), некоторые проявляют себя на узком подмножестве задач. Для выяснения этих способностей универсальных алгоритмов и затевается проект. Есть, конечно, и алгоритмы, узко заточенные под конкретную задачу, но это прошлый век (примерно 60-е годы). Впрочем, тестирование и таких алгоритмов в Полигоне не возбраняется. А некоторого рода классификация задач возникнет в Полигоне автоматически. По результатам работы определятся группы задач, хорошо решаемых тем или иным подходом, ведь в каждом методе всё же заложена некоторая эвристическая информационная модель, пусть даже эта модель универсальна… — К.В.Воронцов 10:13, 2 июля 2008 (MSD)
2) Насколько мне известно, любая идеальная модель не может иметь своих собственных характеристик, не привязанных к данным. Таким образом, модели можно сравнивать только на объемах данных из одного теоретико-вероятностного класса. Если так, то будет стоять задача, как выделить характеристики модели связанные с этим теоретико-вероятностным классом. Модели есть смысл сравнивать только по этим характеристикам. — Участник:ADY
- Это ля-ля философия. Что такое «данные из одного теоретико-вероятностного класса», я не понимаю. Во-первых, не стоит выдумывать новую терминологию, тем более, не давая формальных определений. Во-вторых, не надо зацикливаться на теории вероятностей. Некоторые методы напрочь игнорируют вероятностные обоснования, тем не менее, практические задачи решают хорошо. Для многих методов поиски вероятностных обоснований затягиваются на многие десятилетия, наталкиваясь на (почти) непреодолимые технические трудности. Это никому не мешает успешно использовать их в приложениях. Когда дело доходит до практики, оказывается, что обучение по прецедентам — это в большей степени оптимизация и аппроксимация, а не теорвер и матстат. Это личное мнение — К.В.Воронцов
- >Что такое «данные из одного теоретико-вероятностного класса».
- Для того, чтобы объяснить мысль мне понадобилось как-то назвать множество множеств. Причем не любое, а с определенными характеристиками. Назвал его классом :)... Это мысль, которая возникла на уровне интуиции. Может она верна в той или иной степени, а может и нет.ADY 16:14, 2 июля 2008 (MSD)
Несколько предложений
Важным моментом в данном проекте считаю открытость и полную документированность сетевого протокола. Это значит, что пользователь может писать свой сервер на уровне сокетов, не используя вообще никаких компонент и кода разработчиков проекта. Плагины - хорошо и во многих случаях удобно, но они приводят к зависимости пользователей от разработчиков. Если же есть удобный открытый протокол, то проект может быть легко подхвачен сообществом, если вдруг инициаторы перестанут его поддерживать.
Также наличие такого протокола позволит пользователям эффективно обрабатывать свои данные: достаточно получить от системы URL сервера, реализующего нужный алгоритм, после чего работать с ним непосредственно - слать данные и получать решение.
Интерфейс плагинов желателен кроссплатформенным (например, консольное приложение, обменивающееся данными через stdin-out).
Желательна возможность размещения сервера (плагина) как на собственном хосте, так и на хосте проекта (без раскрытия кода).
Кроме серверов методов, хорошо бы ввести сервера задач. Т.е., пользователь описывает задачу и предоставляет сервер, откуда система может брать обучающую выборку, контроль без ответов, сообщать ответы и получать результат.
Желательно предусмотреть задачи с однократным контролем по большой тестовой выборке, поскольку это единственный метод тестирования, дающий достоверную и точную оценку качества решающей функции в вероятностной постановке. Еще лучше, предусмотреть возможность генерации выборок по вероятностным моделям (в этих случаях задаче соответствует не конкретная выборка, а распределение). Nvm 23:42, 1 июля 2008 (MSD)