Обнадёживающее введение. Спасибо.
Объясните, пожалуйста, как мне раздобыть книгу Добеши И. Десять лекций по вейвлетам. Москва, "РХД", 2001 г.
Тематика: Фильтрация
Обсуждение: Основы теории вейвлет-преобразования
Юрий Комаровский из Владивостока
03-06-2003
Закажите в издательстве (если у них еще осталось) - пришлют по почте.
http://shop.rcd.ru:8101/cgi-bin/index.cgi
Victor G. Tsaregorodtsev
03-06-2003
Предварительное сжатие входных данных
Здравствуйте,
Предсказания нейронной сети во многом зависят от входных данных (ну или мусора), которые идут на вход.
Классически подаются embedding данные, несколько последних значений time series. Опущу здесь варианты предварительной обработки, как вычисление разницы, нормирование итд
А какие есть наилучшие методы для сжатия размерности (dimensionality reduction) входного временного ряда? Есть массив значений пускай 60 данных погружения, надо их сжать и получить скажем 16 данных, которые хорошо описывают особенности time series. Варианты
1) Кусочная линейная аппроксимация
мы используем нелинейный метод нейронных сетей, а такими входами получается обрезаем нелинейность
2) спектр, преобразование фурье
как показывает опыт, плохо работает
3) вейвлеты
можно взять первые значимые коэффициенты вейвлетного разложения. Но вейвлеты хорошо сглаживают середину ряда, а для прогнозирования требуется адекватно описать правый край данных, здесь вейвлеты не очень
4) многочлены
коэффициенты при высоких степенях оказывают очень сильное влияние на выходной ряд
5) сплайны (?)
6) преобразование в грамматический ряд, например в зависимости от количества стандартных отклонений от среднего
7) Разложение по собственным функциям. Как мне кажется это наиболее правильное преобразование, но здесь непонятно насколько базис будет сохраняться в будущем при работе с нестационарными данными?
Может быть подскажете современные методики для подобных преобразований? Заранее спасибо.
Ярослав
10-02-2012
Эквалайзеры (адаптивные фильтры)
Народ помогите…
Необходимо с помощью программ типа SystemView или Matlab смоделировать эквалайзер, который используется в GSM или транкинговой радиосвязи стандарта Tetra. В принципе можно построить эквалайзер Витерби. Это все уже придумано…должны же быть готовые математические модели эквалайзеров? Если есть ссылки на программные реализации или мат модели с описанием……..кидайте на мыло или сюда. Буду очень признателен. Заранее спасибо.
Valter
02-03-2007
Здравствуйте, у меня такой же вопрос как и у Вас, хотел спросить что-нибудь нашли по данному вопросу, мне тоже надо смодулировать на systemview транкинг.с.рс. TETRA.
Кайрат
25-09-2011
Выявление аномалий в БД
Доброго времени суток! Есть задача выявить аномально малые или большие записи в таблице фактов в MS SQL 2005 BI, с помощью ИМЕННО средств аналитики. Подскажите пожалуйста как это сделать.
Пример: аномально большое количество нетрудоустроинных выпускников в одном из регионов за конкретный отчетный период.
Сергей
21-06-2011
MATLAB (графики)
помогите в матлабе написать программу.
надо в одной области сделать 2-ва графика(параболлу и гиперболу)
Иван
08-04-2011
Определение модели мобильного девайса по User Agent
У нас есть большое количество юзер агентов в экспертной базе по которым мы четко определяем модель мобильного телефона. Но ведь программирование не стоит на месте. Появляются новые мобилки и новые браузеры с немного другим видом юзер агентов.
Примеры для Nokia N73:
NokiaN73
NokiaN73/3.0000.0.0 Series60/3.0 Profile/MIDP-2.0 Configuration/CLDC-1.1
NokiaN73-1/2.0 (2.0623.0.0.8) S60/3.0 Profile/MIDP-2.0 Configuration/CLDC-1.1
Тоесть на вход имеем юзер агент, а получить нужно модель
Возможно ли такое решить с помощью нейронных сетей? Если да - то куда копать?
p.s. Наша экспертная база содержит около 4000 разных юзер агентов.
nvvetal
20-05-2009
Сжатие размерности для временного ряда?
Здравствуйте! Стоит задача сжать временной ряд, преобразовать его в в данные меньшей размерности. Скажем есть 32 входа, надо получить 8 или 16. Чтобы отброшенные данные содержали шум.
Я пробовал вейвлеты для этой цели, после преобразования беру набор первых чисел, как показывает опыт, они несут основную информацию о длинных трендах. А последние числа в массиве как правило маленькой величины и несут в себе шум.
Но вейвлеты меня не очень устраивают, в частности теряется точность на концах временного ряда, а задача стоит в прогнозировании вперёд, поэтому последние данные особенно важны.
Есть другой вариант, раскладывать ряд по собственным компонентам, SSA методом (гусеница), пока не пробовал. Но тут собственные вектора берутся непосредственно из участка ряда.
В идеале хочется алгоритм data mining, который на большой истории данных определит основной набор главных векторов, а потом любой кусочек ряда будет раскладывать по этим главным компонентам.
Или какие есть стандартные способы?
Заранее спасибо.
Ярослав
28-08-2010
Прогнозируем погоду на луне?
Ну а если серьезно - если хочется сжать данные и при этом терять точность более-менее равномерно по всей длине участка ряда, а не на концах, то попробуйте нейросети-автоассоциаторы на основе многослойного персептрона или deep beliеf nets.
Если же еще серьезнее - то я бы посылал всё сжатие куда подальше, оно ничего полезного не даёт (если выборка данных или временной ряд сам по себе репрезентативен), а лишние параметры из модели можно выкинуть методом регуляризации решения или методом упрощения (имеются в виду методы упрощения для нейросеток типа многослойного персептрона).
Victor Tsaregorodtsev
28-08-2010
Спасибо Виктор,
Я читал ваши статьи по поводу удаления неинформационных данных, вы советуете оставлять все данные в модели, нейросеть сама разберется.
Я использую нейросетку для прогнозирования, поэтому варианты сжатия данных с помощью нейросети не рассматриваю.
Просто одно дело если я подам на вход 32 последних данных time series (разницу цен), а другое если я сожму последние 128 цен до 32 наиболее важных данных, пускай спектр плюс фазы. Это работает лучше, проверено. Вот я и интересуюсь, какие есть альтернативные методы для выявления наиболее важных трендов и колебаний, отбрасывая неинформативный шум.
Мне особенно важен правый край.
Ярослав
30-08-2010
Советую оставлять в нейросети потому, что есть куча методов как упрощения нейросети, так и методов регуляризации решения. Да и доказано давно, что обучение с шумом в данных эквивалентно явному использованию регуляризации. В общем, мне (при имеющемся наборе инструментов и индикаторов) проще укладывать нейросеть в прокрустово ложе (запрещать нейросети запоминать шум), чем иметь риск потерять существенную информацию при удалении шума из данных. Может, и субъективна такая позиция - но при прочих равных я остановился именно на ней (хотя инструментов удаления шума, очевидно, тоже куча - начиная от обычного статистического метода проецирования в пространство нескольких главных компонент, начиная от метода сглаживания скользящим средним,...).
Нейросетями-автоассоциаторами возможно сделать сжатие 128 в 32, а затем - подать эти 32 на вход новой сети. Поэтому, честно говоря, не понял, почему этот вариант Вам неприемлем.
Очевидно (из-за нейросетевой нелинейности), что по сравнению с использованим линейного метода главных компонент (по сравнению с проецированием на несколько самых первых главных компонент) будет или меньше потерь, или можно будет обойтись меньшим числом итоговых переменных при той же точности описания данных. А по сравнению с вейвлетами - ошибка не будет концентироваться на правом краю, а будет достаточно хорошо размазана по всему окну.
Victor Tsaregorodtsev
30-08-2010
Спасибо, почитаю про нейросети-автоассоциаторы...
Виктор, а можете просветить пожалуйста про "запрещать нейросети запоминать шум", это алгоритмы раннего останова обучения или что еще можно попробовать? Также отдельно заведу ветку про обучение сети. Заранее спасибо.
Ярослав
30-08-2010
Еще:
1. Остановка при достижении максимума обобщающих способностей (контроль по кривым обучения). Похоже на ранний останов, но не в произвольный момент, а в "оптимальный".
2. Добавление штрафного (регуляризующего) слагаемого в целевую функцию
3. Перебор нескольких размеров сети, начиная с некоторого минимального. Если обученная сеть чуть увеличенного размера (по сравнению с предыдущими размерами) имеет бОльшую ошибку обобщения, значит, рост размера пошел во вред.
4. Штрафные функции с люфтом (допуском) на точность запоминания
5. Алгоритмы упрощения нейросети (отстрел неинформативных, дублирующих и/или шумовых входов, отстрел излишних нейронов и синапсов в сети).
6. ...
Очевидно, что не все варианты надо в конкретной задаче использовать - обычно при экспериментах быстро понимаешь, что к чему. Ну и многое видно сразу, без отдельных экспериментов (например, разбегание кривых обучения и обобщения начиная с какой-то эпохи обучения сети). Ну и если реализуется п.3 (эксперименты проводятся начиная буквально с линейных сетей), то последующее упрощение найденной сети околооптимального размера тоже касается, в основном, только её входов.
Victor Tsaregorodtsev
31-08-2010
Я увеличил число данных для обучения в два раза, сетка стала немножко лучше обучаться. Потом добавил новых входов, корреляция прогноза вне выборки еще немножко выросла, а ошибка упала. Но похоже это предел, потому что рост корреляции очень маленький:
Было примерно 0.673 стало 0.677
Ошибка вне выборки была скажем 324 стала 322
Ярослав
11-09-2010
Анализ показаний счетчиков электрической энергии
Добрый день! Разыскиваю материалы на темы:
- АНАЛИЗ ДОСТОВЕРНОСТИ ПОКАЗАНИЙ СЧЁТЧИКОВ ЭЛЕКТРОЭНЕРГИИ;
- Обнаружение плохих данных в телеизмерениях;
Интересуют иностранные источники.
Геннадий
12-07-2010
анализ данных и кластеризация
пишу диплом по теме формирования сменного задания. Есть парочку вопросиков:
1) задаие будет раздаваться на несколько людей, поэтому необходимо сгруппировать объекты. Какой алгоритм стоит выбрать(с известным кол. кластеров)? может кто0нибудь разрабатывал подобные системы...
2) необходимо провести анализ временных рядов для прозназирования выхода из строя датчиков(их порядка 2500 и они периодически ломаются), что взять за основу в этом подходе?
Артём
02-05-2010
Веёвелет преобразования
на сайте есть программа на языке делфи,не могу с ней разобраться, а все что надо это пропустить 2 сигнала, экспоненту и гаусовский белый шум...разработчики если можете пропустите сигналы и киньте скрины на почту или свяжитесь и помогите разобраться с программой)
Артём
21-04-2010



новое сообщение
карта форума
правила форума
обратная связь
