Обнаружение отношений с использованием нейронных сетей - PullRequest
1 голос
/ 10 ноября 2009

Предположим, я выполняю выборку нескольких сигналов с фиксированной скоростью (скажем, раз в секунду) и извлекаю из сигналов некоторые метрики, такие как отношение одного к другому, скорость изменения, относительная скорость изменения и т. Д.
Я слышал, что нейронные сети могут быть полезны для обнаружения отношений. Это правда?
Если да, то какие книги / интернет-ресурсы я могу использовать, чтобы узнать больше о том, как это сделать.
Обработка выполняется на языке Java, поэтому очень хотелось бы получить уклон Java на все ваши ответы.
Спасибо

Ответы [ 2 ]

0 голосов
/ 11 ноября 2009

Скорее всего, вам понадобится определить какое-то «окно», как, может быть, последние 10 сэмплов. Вы бы нормализовали ваш сигнал в массив из 10 «двойников», нормализованных между -1 и 1. Это сформировало бы «вход» в вашу нейронную сеть. Таким образом, у вас будет 10 входных нейронов. Затем вы должны решить, какой результат вы хотите получить. Возможно, у вас есть 100 различных классификаций, в которые вы можете классифицировать сигналы. Если это так, у вас будет 100 различных выходных нейронов, каждый из которых будет обучен генерировать более высокий выход, чем другие выходные нейроны, когда они распознают определенный сигнал.

Между входным и выходным слоями нейронные сети обычно имеют один или несколько скрытых слоев. Они просто предоставляют дополнительные возможности нейронной сети.

Для программирования нейронной сети Java вы можете попробовать проект Encog . Существует также версия Encog для DotNet.

0 голосов
/ 10 ноября 2009

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

Я бы действительно рекомендовал изучить алгоритм Neural Net, который поставляется с MS Analysis Services . Это хороший способ узнать о NNets до того, как вы начнете что-либо программировать (и, поскольку это серверная служба, вы можете вызывать ее из Java).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...