"New Neural"은 MetaTrader 5 플랫폼용 신경망 엔진의 오픈 소스 프로젝트입니다. - 페이지 38

 
gpwr :
필터는 무작위로 선택된 10000-40000개의 기록 섹션(동일한 반복 횟수)을 표시하여 감독되지 않은 상태로 훈련됩니다. 학습 속도가 매우 빠릅니다. 컴퓨터에 따라 10,000개의 필터는 360개의 GPU CUDA 프로세서에서 1-2분, 16개의 스레드가 있는 4개의 Intel 프로세서에서 약 1시간, 1개의 프로세서와 2개의 스레드가 있는 랩톱에서 3-4시간 동안 20,000개의 히스토리 섹션에 대해 훈련됩니다. 여기서 시간은 중요하지 않지만. 이런 식으로 필터를 훈련하는 데 하루나 이틀이 걸리더라도 견적당 한 번만 수행됩니다(EURUSD, USDJPY 등). 필터가 학습되면 변경되지 않고 새 가격을 필터링하는 데 사용됩니다. 필터링 자체는 매우 빠릅니다. 필터 계수로 가격 곱의 합을 계산합니다.

내가 기억하는 한, 그리드가 훈련된 것으로 간주되기 위해서는 각 섹션을 여러 번 통과해야 합니다.

문제는 각 예제를 몇 번 제출해야 하느냐는 것입니다.

 
우크라이나 :

내가 기억하는 한, 그리드가 훈련된 것으로 간주되기 위해서는 각 섹션을 여러 번 통과해야 합니다.

문제는 각 예제를 몇 번 제출해야 하느냐는 것입니다.

이야기의 같은 부분을 여러 번 통과할 필요는 없습니다. 그리고 적어도 한 번은 이야기의 모든 섹션을 살펴볼 필요가 없습니다. 이야기의 일부는 생략될 수 있습니다. 필터는 기본적으로 무작위 샘플에서 견적 통계를 수집합니다. 샘플링의 무작위성은 여기에서 핵심입니다. 전체 기록을 순차적으로 스캔할 때 필터는 기록 시작 부분의 통계 쪽으로 기울게 됩니다.
 
gpwr :
이야기의 같은 부분을 여러 번 통과할 필요는 없습니다. 그리고 적어도 한 번은 이야기의 모든 섹션을 살펴볼 필요가 없습니다. 이야기의 일부는 생략될 수 있습니다. 필터는 기본적으로 무작위 샘플에서 견적 통계를 수집합니다.
아니요, 당신은 필터에 대해 이야기하고 있지만 질문은 제쳐두고 경고했습니다. 나는 신경망 학습 알고리즘에 대해 이야기하고 있습니다.
 
우크라이나 :
아니요, 당신은 필터에 대해 이야기하고 있지만 질문은 제쳐두고 경고했습니다. 나는 신경망 학습 알고리즘에 대해 이야기하고 있습니다.
그때는 정말 이해가 되지 않았다. 내가 제안하는 네트워크는 두 개의 모듈로 구성됩니다. 여러 계층의 필터가 있는 데이터 변환 모듈과 분류 모듈입니다. 첫 번째 모듈의 필터는 기록 전체에 걸쳐 감독되지 않고 한 번 훈련되고 네트워크의 모든 후속 애플리케이션에 대해 기억됩니다. 필터가 훈련된 후 우리는 교사와 함께 두 번째 모듈을 훈련합니다. 첫 번째 모듈의 입력에는 가격 패턴이 있고 두 번째 모듈의 출력에는 이미 알려진 신호 매수(+1), 매도(-1), 보류(0)가 있습니다. 두 번째 모듈은 Feed-Forward Network(FFN 또는 MLP), Support Vector Machine(SVM), Radial Basis Function (RBF)과 같이 우리에게 알려진 모든 신경망일 수 있습니다. 이 모듈의 교육은 첫 번째 필터 모듈이 없는 한 오래입니다. 이전에 설명했듯이 제 생각에는 두 번째 모듈은 첫 번째 모듈만큼 중요하지 않습니다. 네트워크에 견적을 제출하기 전에 먼저 견적을 올바르게 변환(필터링)해야 합니다. 가장 간단한 필터링 방법은 예를 들어 MA입니다. 대부분의 신경망이 이미 하고 있는 다른 지표를 적용할 수 있습니다. 나는 동일하지만 왜곡된 패턴이 이 "지표"(내 네트워크의 첫 번째 모듈 ). 그런 다음 잘 알려진 방법을 사용하여 두 번째 모듈에서 이러한 코드를 분류하는 것이 이미 가능합니다.
 
Нейрокомпьютерные системы | Учебный курс | НОУ ИНТУИТ
Нейрокомпьютерные системы | Учебный курс | НОУ ИНТУИТ
  • www.intuit.ru
Излагаются основы построения нейрокомпьютеров. Дается детальный обзор и описание важнейших методов обучения нейронных сетей различной структуры, а также задач, решаемых этими сетями. Рассмотрены вопросы реализации нейронных сетей.
파일:
Books.zip  14709 kb
 

gpwr :

그때는 정말 이해가 되지 않았다. 내가 제안하는 네트워크는 두 개의 모듈로 구성됩니다. 여러 계층의 필터가 있는 데이터 변환 모듈과 분류 모듈입니다. 첫 번째 모듈의 필터는 기록 전체에 걸쳐 감독되지 않고 한 번 훈련되고 네트워크의 모든 후속 애플리케이션에 대해 기억됩니다. 필터가 훈련된 후 우리는 교사와 함께 두 번째 모듈을 훈련합니다. 입구에는 가격 패턴이 있고 출구에는 이미 알려진 신호 매수(+1), 매도(-1), 보류(0)가 있습니다. 두 번째 모듈은 Feed-Forward Network(FFN 또는 MLP), Support Vector Machine(SVM), Radial Basis Function(RBF)과 같이 우리에게 알려진 모든 신경망일 수 있습니다. 이 모듈의 교육은 첫 번째 필터 모듈이 없는 한 오래입니다. 이전에 설명했듯이 제 생각에는 두 번째 모듈은 첫 번째 모듈만큼 중요하지 않습니다. 네트워크에 견적을 제출하기 전에 먼저 견적을 올바르게 변환(필터링)해야 합니다. 가장 간단한 필터링 방법은 예를 들어 MA입니다. 대부분의 신경망이 이미 하고 있는 다른 지표를 적용할 수 있습니다. 나는 동일하지만 왜곡된 패턴이 이 "지표"(내 네트워크의 첫 번째 모듈 ). 그런 다음 잘 알려진 방법을 사용하여 두 번째 모듈에서 이러한 코드를 분류하는 것이 이미 가능합니다.

내가 올바르게 이해한다면 필터 자체와 해당 교육은 전처리 모듈에 기인할 수 있습니다.
 
우크라이나 :
내가 올바르게 이해한다면 필터 자체와 해당 교육은 전처리 모듈에 기인할 수 있습니다.
예, 첫 번째 모듈은 평생 한 번 자체 학습합니다.
 
우크라이나 :
Alex, 어떻게 14미터, 중재자 권한을 첨부하거나 제한을 늘렸습니까?
16M 이전에 작성되었습니다. 아마도 증가했을 것입니다.
 
에! 만세, 15번째 강의는 제가 맨 처음에 얘기했던 퍼지 논리 네트워크입니다.
 

u - 활성제 입력

y 는 추가 역률입니다.

 //+------------------------------------------------------------------+
double sigma0( double u, double y= 1 .) // [0;1]
  {
   return ( 1 ./( 1 .+ exp (-y*u)));
  }
//+------------------------------------------------------------------+
double sigma1( double u, double y= 1 .) // [-1;1] сдвинутый сигмоид
  {
   return (( 2 ./( 1 .+ exp (-y*u)))- 1 .);
  }
//+------------------------------------------------------------------+
double func1( double u, double y= 1 .) // [-1;1]
  {
   return (y*u/ sqrt ( 1 .+y*y*u*u));
  }
//+------------------------------------------------------------------+
double func2( double u, double y= 1 .) // [-1;1]
  {
   return ( sin ( M_PI_2 *y*u));
  }
//+------------------------------------------------------------------+
double func3( double u, double y= 1 .) // [-1;1]
  {
   return ( 2 ./ M_PI * atan (y*u));
  }
//+------------------------------------------------------------------+
double func4( double u, double y= 1 .) // [-1;1]
  {
   return (y*u-y*y*y/ 3 .*u*u*u);
  }
//+------------------------------------------------------------------+
double line0( double u, double y= 1 .) // [0;1] линейный активатор
  {
   double v=y*u;
   return ((v> 1 .? 1 .:v< 0 .? 0 .:v));
  }
//+------------------------------------------------------------------+
double line1( double u, double y= 1 .) // [-1;1]
  {
   double v=y*u;
   return ((v> 1 .? 1 .:v<- 1 .?- 1 .:v));
  }
//+------------------------------------------------------------------+
double Mline( double v) // [DBL_MIN;DBL_MAX]
  {
   return ((v> DBL_MAX ? DBL_MAX :v< DBL_MIN ? DBL_MIN :v));
  }
//+------------------------------------------------------------------+