MetaTrader 5 Python User Group - メタトレーダーでPythonを使用する方法 - ページ 82

 
Vladimir Karputov:

オフセットの作り方を教えてください。

これが表(データフレーム)です

どうしたらこんな風に作れるのか

何のために?プリントアウトするだけ?

 
Vladimir Karputov:

オフセットの作り方を教えてください。

これが表(データフレーム)です

こんな風に作るには

ここで、pandas.DataFrame.shiftを 発見。

最後の行を削除し忘れるとゴミが入るので、要注意です。

 
私は乱暴です)私はMQL5でpythonを介してキーボードを押すことが可能であるかどうかを知りたいのですが、全く実験する時間がありません。
 
mt5へのpythonの統合について、かなり有益なスレッドです...mt5のターミナルでPythonスクリプトを追加すると、すぐに削除されてしまうのはなぜですか?
 

親愛なる皆様、私の理解のどこがおかしいのか、アドバイスをお願いします。

ニューラルネットワークを 構築しました。データを作成した。

(10452, 50) (10452, 2)  полный набор данных
(7316, 50) (7316, 2)    тренировочный набор
(3136, 50) (3136, 2)    тестовый набор

鍛え上げる。

Параметры модели:
clf__epochs = 66
clf__layers
> Размерность слоёв:
>>> Входной слой = 50
>>>>>> Скрытых слоёв -- 2
>>>>>>>> 1-й слой    = 25
>>> >> слой имеет dropout = 0.3
>>>>>>>> 2-й слой    = 12
>>> Выходной слой    = 2
clf__loss = BCE
clf__metric = accuracy
clf__optimizer = adam

結果

Score on train data is 0.9672635197639465
Score on test data is  0.9674744606018066

#  Оцениваем на тестовых данных
test loss, test acc: [0.1585625737373318, 0.96747446]

そして、どうなるのか理解できない...。

predictions = model.predict(X_test[:15])

.

predictions[:15] =  
[[0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]
 [0.03263587 0.03311919]]

なぜそのような「予測」結果が出るのか?0-0、0-1、1-0のいずれかを予想...。

 

いつもこうなんです...。

質問をすると、誰もが思うのは、「なぜ悩むのか」ということです。

主観:93%はググるしかない...。9割がた問題を正解してしまう...。

ご感想ありがとうございました以上、今回はこの辺で。ググってみると...。

 

は、クラス1と2の確率です。

2位の方が確率が高いので、予測される

が1でなければならないので、ここで何らかの学習エラーが発生します。

2値分類の場合、1ニューロン出力する必要があります。またはソフトマックス
 
Maxim Dmitrievsky:

は、クラス1と2の確率です。

2位の方が確率が高いので、予測される

の合計が1になるはずですが、ここで何らかの学習エラーが発生しています。

2値分類であれば1出力につき1ニューロン必要です。またはソフトマックス

二値分類は、1つの出力に対して1つのニューロンを意味するものではありません。少なくとも、私が調べた限りでは...。

しかし、問題は、他の損失関数を使っても絵が変わらないことです

明日、予測検証でデータテスターを書きます。しかし、何か、その結果は嘆かわしいものになりそうな気がするのです

ただ、「精度」が96%を超えているのに、「こうなる」という予測ができないのは理解できないのですが...。

もしかして、私のやり方が悪いのか?

 
Сергей Таболин:

二値分類は、1つの出力に対して1つのニューロンを意味するものではありません。少なくとも、私が調べた限りでは...。

しかし、問題は、他の損失関数を使っても絵が変わらないことです

明日、予測検証でデータテスターを書きます。しかし、何か、その結果は嘆かわしいものになりそうな気がするのです

ただ、「精度」が96%を超えているのに、「こうなる」という予測ができないのは理解できないのですが...。

もしかして、私のやり方が悪いのか?

ネットワーク・コンストラクタがどんなものなのか、さっぱりわからないのでしょう。

1つのニューロンは意味しませんが、加算器が立ち、活性化f-eが必要です。通常、1ニューロン

いろいろな理由があるのでしょう。例えば、データが正規化されていない、適切に準備されていない、ネットワークが曲がっているなど
 
Maxim Dmitrievsky:

ネットワーク・コンストラクタがどんなものなのか、さっぱりわからないのでしょう。

1個のニューロンは意味しないが、加算器が設置され、活性化f-eが必要である。通常は1ニューロンです。

いろいろな理由があるのでしょう。例えば、データが正規化されていない、適切に準備されていない、ネットワークが正しく構築されていないなど

問題は、正規化が迷走していることです

説明しよう。データA、B、C...があります。

意義などが異なるのです。みんな(google)、正規化は行単位ではなく列単位(A-A-A, B-B-B, C-C-C)で行うべきと言っています。これは論理的に理解できる。

しかし、「予測」のために新しいデータが現れたとき、それが1行だけの場合、どのように正規化するのでしょうか?そして、その行にあるどの項も、トレーニングデータとテストデータで正規化を超えることができるのですね。

また、文字列による正規化は何の効果もありません

実は、このニュアンスを確認した時点で、すでにこの「魂の叫び」がありました ))))