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

 
:

그건 그렇고 - 이해합니다.

그리고 다른 옵션은 이해하지 못했습니다. 한 번에 모든 예제 교육을 신청하려면 어떻게 해야 합니까? - 아니면 바보?

GA 그리드를 훈련 할 때 모든 예제를 한 번에 제출했습니다(모든 예제에서 FF의 총 값 계산). 학습 알고리즘은 다릅니다. 예를 들어 backprop은 한 번에 하나의 예제를 무작위 순서로 제출하지만 스크롤합니다. 전체 예제 목록을 여러 번 제공하므로 알고리즘에 한 번에 모든 예제를 제공하고 논리에 따라 그리드에 제공합니다.

위협 바보짓은 하지마, 다만 내가 거기에서 생각한 것의 주제가 아니라, 내가 모든 것을 설명과 함께 펼칠 것이다.

ZZY 지금은 모든 것을 설명할 준비가 되지 않았습니다. 제가 직접 알아내고 싶습니다. :)

 
gpwr :

Rebyata, ya budu redko syuda zahodit'. Esli est' voprosi ili interes k sovmestnim razrabotkam, pishite na moy yahoo email (ukazan v profile).

EngiNeuro 프로젝트에 행운을 빕니다!

블라디미르 감사합니다! 자주 놀러오세요 :)

우크라이나 :

한번에

나도 한 조각 한 조각이 최고라고 생각하곤 했다. 아니. 그래디언트 알고리즘은 총 오차를 위해 특별히 설계되었으므로 하나씩 제출하면 완전한 그래디언트 디센트가 아닙니다.

따라서 적어도 한 번에 모두 피드포워드

 
더엑스퍼트 :

블라디미르 감사합니다! 자주 놀러오세요 :)

나도 한 조각 한 조각이 최고라고 생각하곤 했다. 아니. 그래디언트 알고리즘은 총 오차를 위해 특별히 설계되었으므로 하나씩 제출하면 완전한 그래디언트 디센트가 아닙니다.

따라서 적어도 한 번에 모두 피드포워드


예, 알고리즘 구현에 따라 다릅니다. 지금 잊어버린 것이 있는지 궁금합니다.
 

NS 교육 노트

1) 피트니스 기능(학습기능)

신경망의 모든 학습 과정은 적응 인수의 공간(이 경우 가중치 공간)에서 기능의 최대(최소)를 찾는 것으로 축소됩니다.

2) MSE

기능의 클래식 버전은 MSE( 평균 제곱 오차)입니다.

각 적응 매개변수에 대한 편도함수를 쉽게 찾을 수 있으므로 가중치의 기울기 조정을 사용할 수 있습니다.

NN의 입력에 제공되는 각 예에 대해 네트워크의 응답 - y 를 얻고 "정답" - y' 를 얻습니다.

단계적 학습 방법의 경우 각 예제 후에 가중치를 조정합니다. 이 경우 MSE=MODULE(y-y')

배치 방법의 경우 전체 훈련 세트를 실행한 후 가중치가 조정됩니다. 여기서 MSE=ROOT((SUM(y-y'))^2)

MSE의 주요 단점은 각 예에 대해 "정답"이 있어야 한다는 것입니다.

각 막대에 "올바른"값이 알려진 경우 "알 수없는"지표의 알고리즘을 복원하는 것과 같이 이러한 기능을 사용하는 것이 편리합니다.

3) 비표준 기능

더 넓은 범위의 작업으로 비표준 기능 해결 가능

예를 들어, 합성 거래 전략을 검색하기 위해 신경망을 사용할 수 있습니다. 예를 들어 기능 F = Profit / Max Drawdown을 최대화하기 위해 훈련이 내려옵니다.

여기서 평가는 훈련 샘플에 대한 전체 실행 후에 수행됩니다. 전략의 성능은 기간이 끝날 때만 평가할 수 있기 때문입니다.

아주 좋은 메모 - 우리는 모든 막대에 대해 정답을 가질 필요가 없습니다.

불쾌한 "하지만"도 있습니다. 각 가중치에 대한 기능의 편도함수를 찾을 수 있는 방법이 없으므로 가중치를 구성하는 그래디언트 방법은 허용되지 않습니다. 예를 들어 GA와 같은 확률론적 방법을 사용해야 합니다.

이것은 GPU가 나타나는 곳입니다. 아직 예산 대안이 없습니다.

추신

각 특정 거래 전략에 대한 매개변수 최적화 프로그램과 달리 신경망을 사용하면 거래 전략에 대한 완전 합성 알고리즘을 "성장"할 수 있습니다.)))

그리고 이 접근 방식의 가능성은 매우 높습니다.

 

메쉬를 bin 파일에 저장하는 기능을 준비하고 있습니다. 모든 정보는 olong 배열로 쉽게 암호화되지만 가중치로 무엇을 해야 할지 모르겠습니다.

중복이지만 표준 배열 저장 기능을 사용하고 싶습니다.

ulong에 복구 가능한 이중 암호화 알고리즘이 있는 사람이 있습니까?


그리드는 MQL5에서 사용하기 편리한 간단한 형식(기본 형식으로 사용)으로 저장해야 하고, 여기에서 다른 신경망 패키지의 다른 형식에 대한 변환기를 작성해야 한다고 생각합니다.

 
우크라이나 :

메쉬를 bin 파일에 저장하는 기능을 준비하고 있습니다. 모든 정보는 olong 배열로 쉽게 암호화되지만 가중치로 무엇을 해야 할지 모르겠습니다.

중복이지만 표준 배열 저장 기능을 사용하고 싶습니다.

ulong에 복구 가능한 이중 암호화 알고리즘이 있는 사람이 있습니까?


그리드는 MQL5에서 사용하기 편리한 간단한 형식(기본 형식으로 사용)으로 저장해야 하고, 다른 신경망 패키지의 다른 형식에 대한 변환기를 작성해야 한다고 생각합니다.


어떤 FileWriteArray가 적합하지 않습니까? 문제가 명확하지 않습니다. 더 자세한 예를 들어주실 수 있나요?

어떤 경우든 한 파일의 그리드 구성, 다른 파일의 가중치.

MQL이 더 편리하다고 생각하지 않으며, 왜 암호화 복원 , 추가 브레이크를 사용하는지 알 수 있습니다.

 
her.human :

어떤 FileWriteArray가 적합하지 않습니까? 문제가 명확하지 않습니다. 더 자세한 예를 들어주실 수 있나요?

어떤 경우든 한 파일의 그리드 구성, 다른 파일의 가중치.

MQL이 더 편리하다고 생각하지 않으며, 왜 암호화 복원 , 추가 브레이크를 사용하는지 알 수 있습니다.

네, 브레이크가 있을 것입니다(내 추정에 따르면 1개의 램 가중치, 5초를 암호화할 것입니다). 저는 단지 하나의 파일에 가중치와 그리드 장치를 모두 저장하고 싶습니다 . 그렇지 않으면 많은 파일을 깨뜨릴 것입니다. 악마 자신이 다리를 부러 뜨릴 것입니다. 나는 이것에서 편리함을 봅니다.

FileWriteArray 아래에는 선명하게 하고 싶지만 네트워크에 대한 설명(레이어 수, 뉴런 수, 뉴런 유형, 이들 사이의 연결)을 형성하는 ulong 배열이 있고 여기에 가중치 배열도 첨부되어 있습니다. , 하지만 이미 중복되어 있습니다.

모든 것을 하나의 bin-file에 넣는 방법은 다음과 같습니다(명확한 마크업이 없는 경우 마크업 자체는 그리드의 첫 날에 암호화됨) ??

 
우크라이나 :

0 . 메쉬를 bin 파일에 저장하는 기능을 준비하고 있습니다. 모든 정보는 olong 배열로 쉽게 암호화되지만 가중치로 무엇을 해야 할지 모르겠습니다.

중복이지만 표준 배열 저장 기능을 사용하고 싶습니다.

1 . ulong에 복구 가능한 이중 암호화 알고리즘이 있는 사람이 있습니까?


2 . 그리드는 MQL5에서 사용하기 편리한 간단한 형식(기본 형식으로 사용)으로 저장해야 하고, 여기에서 다른 신경망 패키지의 다른 형식에 대한 변환기를 작성해야 한다고 생각합니다.

0 . 매우 시기상조. 첫째, 논리적 수준에서 그리드의 구조 및 설정에 명확하게 매핑된 전체 데이터 세트를 절대적으로 명확히 하고 동의해야 합니다. 물리적 보존은 전혀 문제가 되지 않습니다.

1 . 그것은 간단합니다. 이러한 변환을 위해 mql5에 특별한 구멍이 남아 있습니다. 동일한 크기 라면 다른 유형의 구조를 제한 없이 서로 할당할 수 있습니다.

// ulong과 double은 정확히 동일합니다.

여기에서 변태 예를 참조하십시오: https://www.mql5.com/ru/forum/3775/75737#comment_75743

2 . 음 ... 한편으로는 형식이 편리하고 단순해야 한다는 데 동의합니다. 다른 한편으로는 xml과 같이 매우 다재다능한 것이 바람직합니다. 두 가지 옵션(상호 고유하게 표시됨)을 예약하는 것이 가능할 수 있습니다. 하나는 텍스트이고 다른 하나는 바이너리입니다. 그리고 vapche -- 항목 # 0 을 보십시오.

---

나는 지점 주위를 빙글빙글 돌아 다니고 있습니다. 여전히 개입할지 의심됩니다.

생각이 저를 갉아 먹습니다. 하나. // 많은 생각의 의미에서, 그러나 단 하나만 g아 먹는다. :)

이런 생각: "메시 편집기"(구성자)에서 미리 구성한 후 메쉬 코드를 생성해야 합니다. // 이 아이디어는 반복적으로 표현되었으며 거부된 기억이 없습니다.

따라서 이 체계는 신경망 구조에 대한 완전한 정보를 포함하는 필수 중간 표현(예: xml 파일 형식) 입니다.

중간 표현은 신중하게 고려되고 완전성 및 기타 지혜에 대해 분석되고 승인되고 고정 됩니다.

(1) 모든 종류의 그리드 구성자, (2) 코드 생성기 - 중간 표현을 mql5 코드로 변환합니다.

그리고 그것들과 다른 것들은 여러 가지 구현을 가질 수 있습니다. 이는 훌륭하고 정확합니다.

 
우크라이나 :

네, 브레이크가 있을 것입니다(내 추정에 따르면 1개의 램 가중치, 5초를 암호화할 것입니다). 저는 단지 하나의 파일에 가중치와 그리드 장치를 모두 저장하고 싶습니다 . 그렇지 않으면 많은 파일을 깨뜨릴 것입니다. 악마 자신이 다리를 부러 뜨릴 것입니다. 나는 이것에서 편리함을 봅니다.

FileWriteArray 아래에는 선명하게 하고 싶지만 네트워크에 대한 설명(레이어 수, 뉴런 수, 뉴런 유형, 이들 사이의 연결)을 형성하는 ulong 어레이가 있으며 가중치 어레이도 첨부되어 있습니다. , 하지만 이미 중복되어 있습니다.

모든 것을 하나의 bin-file에 넣는 방법은 다음과 같습니다(명확한 마크업이 없는 경우 마크업 자체는 그리드의 첫 날에 암호화됨) ??

모든 것을 하나의 파일에 넣는 것은 절대 반대입니다. 네트워크에 대한 설명은 별도로 - 가중치는 별도로 지정합니다. 그렇지 않으면 다른 불필요한 문제가 발생합니다.

 
왜 빈? 눈으로 볼 수 있도록 간단한 텍스트 파일이 더 나을까요?