質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

88.64%

どんなにエポックを繰り返しても学習精度が0.5ほどになってしまう

解決済

回答 3

投稿 編集

  • 評価
  • クリップ 1
  • VIEW 620

taiyo2017

score 74

CNNでディープラーニングをしています。
どんなにエポックを繰り返しても学習精度が0.5ほどになってしまいます。どう言う原因が考えられますか?
データ数は1万件もあり、過学習の可能性はないです。

コードは以下のように書きました。

# coding: utf-8
import tensorflow as tf
import tflearn

from tflearn.layers.core import input_data,dropout,fully_connected
from tflearn.layers.conv import conv_2d, max_pool_2d
from tflearn.layers.normalization import local_response_normalization
from tflearn.layers.estimator import regression

tf.reset_default_graph()
net = input_data(shape=[None, 4, 42])
net = conv_2d(net, 4, 16, activation='relu')
net = max_pool_2d(net, 1)
net = tflearn.activations.relu(net)
net = dropout(net, 0.5)
net = tflearn.fully_connected(net, 2, activation='softmax')
net = tflearn.regression(net, optimizer='adam', learning_rate=0.5, loss='categorical_crossentropy')

model = tflearn.DNN(net)

model.fit(np.array(trainDataSet), np.array(trainLabel), n_epoch=400, batch_size=32, validation_set=0.1, show_metric=True)

pred = np.array(model.predict(np.array(testDataSet)).argmax(axis=1))

label = np.array(testLabel).argmax(axis=0)
accuracy = np.mean(pred == label, axis=0)

print(accuracy)
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 3

checkベストアンサー

+1

ポイントとしてはLossが飽和していてAccがそれに対応していれば過学習です
Accが0.5で落ち着くというのは相当難しいTrainかGANの場合以外大抵は過学習です

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/11/27 20:16 編集

    もしこのcodeがどこからかの引用でそこそこaccがでているのなら見当違いの回答になってしまいますが、個人的な見解を。

    ValDataを入れるときはDropoutの値を1にしないとaccが下がってしまいますけど、その点は問題ないですよね?

    しかし最初はDropout入れていなかったということなのでその他で考えられることといえば、Convが少ないような気がします。あと二つくらい追加したらいかがでしょうか?Convが少ない状態でLeaning rate0.5だと極値に落ちてもどってこられないのではないかとおもいます。Convを増やさないのであれば文献値の5e-4とかがいいのでは

    キャンセル

  • 2018/11/29 17:31

    ありがとうございます。conv層はどこに追加した方がいいとかありますか?

    キャンセル

  • キャンセル

0

やはり過学習でしょう
BNしてますか?Dropoutは?WeightDecayは?
TrainDataのClipはしてますか?

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/11/27 11:18

    ありがとうございます。BNとは何でしょうか?

    キャンセル

  • 2018/11/27 11:19

    また、TrainDataのClipとは何でしょうか?

    キャンセル

  • 2018/11/27 11:45

    なんのデータを使ってるか不明ですがImageの場合は引き延ばしたりひずませたりした後に部分的に取り込むのがClipでBNはバッチノーマリゼーションです。BNする場合はDropoutする必要がないといいわれていますが、併用する人がおおいですね。

    キャンセル

0

minibatchの作り方として順番に取り出す方法が良く提案されていますが、
やはりClipしてランダムに都度作成するのがTrainDataを有効に使える方法だと思います。
Imageの場合はKerasのImageDataGeneratorが特に有効です。
私自身Tensorflowを使ってますがTrainDataの水増しには上記を使っています。 

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 88.64%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る