Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2011.05.15;
Скачать: [xml.tar.bz2];

Вниз

Нейронные сети и кластеризация   Найти похожие ветки 

 
И. Павел ©   (2011-02-02 10:09) [0]

Здравствуйте.

Есть задача прогнозирования временного ряда (продажи товара) трехуровневой нейронной сетью. На вход поступают старые данные, а на выходе появляется еще и новое значение.

Подскажите, пожалуйста, каким образом к ней можно прицепить еще и методы кластеризации k-means/c-means? Мне кажется, что их можно использовать для начальной обработки входных данных: выделяем кластеры, и получаем таким образом интервалы с усредненными значениями продаж. Все равно для обучения нейронной сети нужен равномерный временной интервал. По крайней мере, если не передавать ей еще и значения интервалов. Хотя если временной ряд и так равномерный, то k-means, по моему, только внесет лишнюю погрешность...

Подскажите, пожалуйста, как "пристыковать" k-means/c-means к нейронной сети? Или все-таки можно как-то изловчиться и выполнить прогнозирование средствами одного только k-means и сравнить результаты с выходом нейронной сети? Например, последний кластер может забегать немного вперед... Но, по-моему, так ничего не выйдет. Если да, объясните, пожалуйста, принцип такого прогнозирования или поделитесь ссылкой.

Или все же, лучше не смешивать прогнозирование с кластеризацией?

Заранее спасибо.


 
TUser ©   (2011-02-02 11:43) [1]

неверная постановка задачи: использовать такой-то алгоритм

верная постановка: ответить на такой-то вопрос


 
И. Павел ©   (2011-02-02 11:52) [2]

> [1] TUser ©   (02.02.11 11:43)

В данном случае нужно именно продемонстрировать методы. Задачка учебная. В нейронных сетях, используемых на практике, чего только, наверное, не намешено... Взять хотя бы обычный человеческий мозг :)


 
Ega23 ©   (2011-02-02 11:58) [3]

http://www.finware.ru/article2.html


 
И. Павел ©   (2011-02-02 12:11) [4]


> [3] Ega23 ©   (02.02.11 11:58)

Мозговзрывательшая вещь, но с нейронными сетями и разбиением на домены, кажется, не связанная...


 
TUser ©   (2011-02-02 12:11) [5]

возможно, прокластеризовать товары по сходству динамик спроса


 
И. Павел ©   (2011-02-02 12:20) [6]

> [5] TUser ©   (02.02.11 12:11)

Да это можно. Думаю, скорее всего ничего другого с k-means и не сделать.

Но тогда ведь это будет отдельной задачей, не связанной с нейронной сетью. Скорее всего все же задача поставлена неверно. Даже получив кластеры, для прогнозирования потребуется еще что-то: отправить результат в нейронную сеть или просто линией соединить домены и продолжить. А прямо по k-means, кажется, прогнозировать нельзя. Да и в статьях, посвященных этому методу, ничего такого не упоминается...


 
Ega23 ©   (2011-02-02 12:24) [7]


> но с нейронными сетями и разбиением на домены, кажется,
> не связанная...


А зачем для прогнозирования продаж тебе именно нейронные сети нужны?


 
И. Павел ©   (2011-02-02 12:26) [8]

> [7] Ega23 ©   (02.02.11 12:24)

Задачка учебная.


 
Mystic ©   (2011-02-02 12:40) [9]

Во-первых, мозг это не нейронная сеть в том смысле, в каком это используется в ИИ.

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

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

И т. д. и т. п.


 
TUser ©   (2011-02-02 12:50) [10]


> Но тогда ведь это будет отдельной задачей, не связанной
> с нейронной сетью.

Что делать, задача "забить гвоздь при  помощи головы" тоже не решается, даже если требуется продемонстрировать возможности именно головы, и решение должно быть связано с забиванием гвоздей. :-)

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


 
И. Павел ©   (2011-02-02 13:05) [11]

> [9] Mystic ©   (02.02.11 12:40)

Большое спасибо. Подскажите, пожалуйста, правильно ли я понял алгоритм?

1. Берем, например, значения продаж для 12 месяцев 2010 года.
2. Разбиваем их на N кластеров.
3. Считаем, что объем продаж в каждом месяце, принадлежащем кластеру K равен объему продаж в месяце, наиболее близком к центру кластеризации кластера K.
4. На вход нейросети передаем объемы продаж для 12 месяцев, посчитанные по пункту 3) и номер сезона для прогнозирования (от 1 до 4). На выходе получаем, например,месяцы со 2 по 12, сезон прогнозирования и прогноз на январь 2011.
5. Если нужно спрогнозировать следующий месяц, по повторяем 1-4, считая, что в январе 2011 нам значение продаж уже известно и оно посчитано в пункте 4?


 
Mystic ©   (2011-02-02 13:13) [12]

На выходе получаем прогноз на следующий месяц? Что значит месяцы с 2 по 12 и сезон прогнозирования я не понял, потому что это входные данные по сути.


 
Mystic ©   (2011-02-02 13:13) [13]

Еще можно по неделям, там будут учитываться праздники, все такое, ...


 
И. Павел ©   (2011-02-02 13:34) [14]

> [12] Mystic ©   (02.02.11 13:13)
> На выходе получаем прогноз на следующий месяц? Что значит
> месяцы с 2 по 12 и сезон прогнозирования я не понял, потому
> что это входные данные по сути.

Просто я нашел модель с уже заданным числом выходных нейронов и подумал, что раз реальных цифр продаж у меня все равно нет, то и нет смысла как-то предсказать, какая модель будет работать лучше.

Система с одним выходом будут лучше? А как определить число нейронов во входном и вспомогательном слоях? Только экспериментом? Обучить на имеющихся данных а потом пройтись по этим данным еще раз и посчитать суммарную ошибку?


> [10] TUser ©   (02.02.11 12:50)

Спасибо. Интересная идея.


 
Mystic ©   (2011-02-02 17:19) [15]

Система с одним выходом будут лучше? А как определить число нейронов во входном и вспомогательном слоях? Только экспериментом? Обучить на имеющихся данных а потом пройтись по этим данным еще раз и посчитать суммарную ошибку?

В этом вся суть: пробуем один вариант, второй, сравниваем...


 
И. Павел ©   (2011-02-02 18:29) [16]


> В этом вся суть: пробуем один вариант, второй, сравниваем...

Ясно. Спасибо. Буду разбираться. Вещь интересная и, ИМХО, очень перспективная.


 
TUser ©   (2011-02-02 19:11) [17]

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

Фундаментальный анализ: исследуем систему, выявляем факторы, которые влияют на данное явление, формулируем модель, обучаем ее, применяем.

Технический анализ: не задумываемся об устройстве и функционировании системы, применяем "универсальный" метод. Экстраполяцию, фурье-анализ, нейронные сети, векторные машины, генетические алгоритмы ... у математиков такого добра навалом.

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

Ну, вот так.


 
Leonid Troyanovsky ©   (2011-02-02 19:31) [18]


> И. Павел ©   (02.02.11 13:34) [14]

>  Обучить на имеющихся данных а потом пройтись по этим данным
> еще раз и посчитать суммарную ошибку?

Надо рандомно поделить данные, на одной части обучать,
а на другой - оценивать ошибку прогноза.

--
Regards, LVT.


 
И. Павел ©   (2011-02-02 19:33) [19]


> Leonid Troyanovsky ©   (02.02.11 19:31) [18]

Спасибо. Учту.



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2011.05.15;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.5 MB
Время: 0.003 c
1-1253820069
Fynjisx
2009-09-24 23:21
2011.05.15
Текстовый редактор на основе TMemo или RichEdit


2-1296987414
Fr
2011-02-06 13:16
2011.05.15
использование TDialogOpen


15-1296163782
Юрий
2011-01-28 00:29
2011.05.15
С днем рождения ! 28 января 2011 пятница


15-1296130623
Knight
2011-01-27 15:17
2011.05.15
Права доступа и тормоза в 1с...


9-1189256130
walde
2007-09-08 16:55
2011.05.15
Тормознутость??





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский