2010-02-07 9 views
11

backpropagation을 사용하여 일기 예보 프로그램을 작성하려고합니다. 나는이 분야의 초보자이다. 온도, 습도, 풍속, 강우량 등 다양한 매개 변수가있는 역사적인 데이터가 있습니다.신경망을 이용한 일기 예보

이 데이터를 입력 레이어에 제공하는 방법에 대해 혼란스러워합니다. 각 입력 노드에 주어진 날의 전체 데이터가 제공되는지 또는 각 매개 변수에 대해 다른 네트워크가 필요한지 여부 나는 출력 레이어에 대해서도 혼란 스럽다.

답변

1

의사 결정 트리가 신경 네트워크보다이 문제에 더 나은 해결책 일 수 있습니다. Here은 의사 결정 트리가 작동하는 방식에 대한 설명입니다. 또한, 뉴럴 네트워크 (neural network)를 포함하여 다양한 분류 자의 구현을 갖는 소프트웨어가 이용 가능하다. 내가 Weka와 함께 일했고 아주 잘 작동합니다. 또한 Weka의 기능을 Java 및 C#과 같은 프로그래밍 언어로 활용하는 데 사용할 수있는 라이브러리가 있습니다. Weka로 작업하기로 결정했다면, here으로 기술 된 .arff 형식을 숙지하십시오.

+0

Weka 사용에 관심이있는 경우 Weka 프리미티브가 포함 된 Eclipse 기반 워크 플로 패키지 인 Knime을 사용해 볼 수 있습니다. –

+0

이 문제에 대한 결정 트리를 어떻게 적용하는지 궁금합니다. – brian

+0

임의의 숲이 재미 있습니다 – ron

2

입력 레이어에는 입력 데이터의 각 차원 (날씨, 바람 등)에 대해 X 개의 개별 노드가 있습니다. 여기서 X는 되돌아 볼 일 수입니다 (4-7을 보자). 그런 다음 [-1.0, 1.0]이라고 가정 해 봅시다. 각 입력 차원을 적절한 범위에서 정규화해야합니다.

첫 번째 레이어와 완벽하게 상호 연결된 두 번째 "숨겨진"레이어가 있습니다 (또한 수정 점으로 사용할 수정 1.0 입력 "바이어스"노드가 있음). 입력 레이어보다 노드가 적어야하지만 엄지 손가락의 규칙 일 뿐이므로 실험을해야 할 수도 있습니다.

마지막 레이어는 두 번째 레이어와 완전히 상호 연결된 출력 레이어입니다 (또한 바이어스가 떨어집니다). 각 차원에 대해 별도의 출력 뉴런이 있어야합니다.

입력과 출력 모두에서 정규화 된 값으로 학습하는 것을 잊지 마십시오. 이것은 시간 계열이기 때문에 훈련 데이터의 순서를 무작위로 정할 필요는 없지만 시간에 따라 순서대로 먹이면됩니다. 행운과 함께 시간 관계를 배우게됩니다. (행운과 함께 :)

. 시계열 데이터를 조정한다 "시간적 역 전파") I)이이 책을 사용하는 (그리고 자신의 한

+0

더 정확한 관련 변수를 포함한다고 가정하는 것이 맞습니까? 즉 {강우, 풍속, 자외선 지수}보다 우수한 {온도, 압력, 습도}를 사용합니까? –

+0

@Aaron : 더 많은 관련 변수를 사용하는 것이 더 좋습니다. 그러나 강력한 관계가있는 경우 네트워크는 다른 변수를 사용하여 학습 할 수도 있습니다. 또한 네트워크를 더 잘 연구하기 위해서는 일부 데이터를 변환해야 할 수도 있습니다 (예 : 로그 스케일 등). – ron

1

라는 방법 : Introduction to Neural Networks with Java

나는 그것에게 유용한 참고 자료를 발견했다. 그것은 역 전파 (backpropogation)를 포함하여 NN 주제의 상당 부분을 다룹니다.