Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как по данным и результатам узнать формулу 
:(
    Опции темы
Artemios
Дата 26.3.2007, 10:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 405
Регистрация: 14.8.2006
Где: Саратов, Россия

Репутация: 1
Всего: 50



Цитата(kulibinka @  16.3.2007,  05:00 Найти цитируемый пост)
Есть информация о параметрах каждого объекта в виде строчки "ai1     ai2    ...ain"

Есть некоторая формула, которая на вход получает информацию о всех объектах, и потом сортирует эти объекты.
Есть практически неограниченное количество данных вида: реальные цифры - как их рассортировала наша формула.


Если переформулировать, задача: поиск бинарного отношения линейного порядка на множестве целочисленных векторов Z^n.
На Z^n существуют стандартные порядки: лексикография, обратная лексикография, по полной степени -пост-лексикография (или обратная) и т.д.
В общем случае любой сохраняющий сложение порядок (т.е. если a>b, то a+c>b+c при a,b,c \in Z^n) на Z^n можно определить матрицей n x n, задающей весовые коэффициенты и перестановки для перехода в стандартную лексикографию  ( \exists W - матрица \forall a<b: Wa <_{lex} Wb), и в этом случае как нельзя лучше подходит предложение sergejzr, а при неограниченном количестве входных данных результат будет практически 100-прроцентный.

Более неприятен случай, когда порядок не сохраняет сложения. Однако известно, что он конструктивен (т.к. уже реализован некоторой функцией), следовательно так или иначе определяется конечным набором соотношений. Над этим еще бы подумать... если время будет...

Это сообщение отредактировал(а) Artemios - 26.3.2007, 10:17


--------------------
fib = 1: 1: [ x+y | (x,y) <- zip fib (tail fib) ]
PM MAIL   Вверх
Promitheus
Дата 29.3.2007, 10:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 73
Регистрация: 28.3.2007

Репутация: нет
Всего: 1



Цитата

Получим  Какие проблемы записать нейросетку в виде набора формул? А еще любой приличный нейропакет позволяет по обученной сети сгенерировать код на языке программирования (на том же С, к примеру), который будет реализовывать эту НС и позволит вставить её в программу пользователя - это та же самая запись функции в явном виде, только уже переведенная с языка математики на язык программирования.


Мне кажется kulibinka хочет чтобы была формула в виде f(x)=ax^3+ bx^2+cx+d, нейропакеты в таком виде не выдают формулы (могу конечно ошибаться). Потом если неугадать с функцией активации: то либо будет большая погрешность апроксимирования искомой функции, либо будет работать в пределах икса скажем [0;10] вне этих пределов мусор который даже что-то похожее не будет выдавать.

Цитата

1. как узнать какие именно из параметров важнее других и насколько


Это надо заниматься факторным анализом, скажем в Статистике были примеры на этот счёт. Можно попробовать загнать данные в сеть Кохонена и посмотреть на сколько классов будут разделены данные, далее посмотреть чем они кардинально различаются.

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

Самое "простое" если есть прога, то дизасемблирование (знакомого попросить), и скопипастить себе ту функцию, которая выдаёт результат. Далее идёт интерполяция - по ней больше литературы и исходников в инете. Самое сложное это конечно нейросетевые технологии и генетические алгоритмы (просто с ними сложновато быстро разобраться и притом чтобы они тебе выдавали именно то, что тебе надо). 

PS Как было уже сказано: в результате одного из методов будет получена функция, которая выдаёт тоже что и надо, но она врят ли будет иметь физический смысл.
PM MAIL ICQ   Вверх
VictorTsaregorodtsev
Дата 29.3.2007, 10:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 274
Регистрация: 28.7.2006

Репутация: 3
Всего: 8



Цитата(Promitheus @  29.3.2007,  10:25 Найти цитируемый пост)
Мне кажется kulibinka хочет чтобы была формула в виде f(x)=ax^3+ bx^2+cx+d, нейропакеты в таком виде не выдают формулы (могу конечно ошибаться). Потом если неугадать с функцией активации: то либо будет большая погрешность апроксимирования искомой функции, либо будет работать в пределах икса скажем [0;10] вне этих пределов мусор который даже что-то похожее не будет выдавать.

Ну, если у человека есть какое-то предположение о виде формулы-зависимости, то какие проблемы сделать параметрическую идентификацию для этой формулы на наборе данных? А вот если никаких предположений нет, то почему бы и не нейросети?
Насчет вопроса о качестве интерполяции и экстраполяции - они относятся вообще к любому методу идентификации зависимостей, а не только к нейросетям. Вопрос, конечно, правильный, но он почти автоматически снимается в случае репрезентативности обучающей выборки (отражения всех свойств генеральной совокупности) и стационарности ситуации (т.е. когда новые данные за пределы значений, определенные на выборке, не вылезут)

Цитата(Promitheus @  29.3.2007,  10:25 Найти цитируемый пост)
Цитата

1. как узнать какие именно из параметров важнее других и насколько


Это надо заниматься факторным анализом, скажем в Статистике были примеры на этот счёт. 

Ну, не только этот способ возможен. Можно посчитать значимость параметров и исходя из "субъективного" "мнения" именно той функции-формулы, которая будет построена (например, банально посмотреть на частные производные - насколько быстро меняется зависимая переменная при изменении независимой). Т.е. есть возможности оценивания как с точки зрения выведенной формулы, так без всяких предположений об этой формуле (взять, например, банальные парные корреляции или парные/множественные условные энтропии) 
PM MAIL WWW   Вверх
Artemios
Дата 31.3.2007, 10:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 405
Регистрация: 14.8.2006
Где: Саратов, Россия

Репутация: 1
Всего: 50



Цитата(Promitheus @  29.3.2007,  11:25 Найти цитируемый пост)
Мне кажется kulibinka хочет чтобы была формула в виде f(x)=ax^3+ bx^2+cx+d

Точнее было бы f(x1,x2)=... , причем область значений функции примерно {-1,0,1}

Добавлено через 8 минут и 38 секунд
Или даже {true,false}  :
f(x1,x2) = x1>x2



--------------------
fib = 1: 1: [ x+y | (x,y) <- zip fib (tail fib) ]
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Алгоритмы"

maxim1000

Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Алгоритмы | Следующая тема »


 




[ Время генерации скрипта: 0.0615 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.