🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Chainer

Chainerは、国産の深層学習フレームワークです。あらゆるニューラルネットワークをPythonで柔軟に書くことができ、学習させることが可能。GPUをサポートしており、複数のGPUを用いた学習も直感的に記述できます。

深層学習

深層学習は、多数のレイヤのニューラルネットワークによる機械学習手法。人工知能研究の一つでディープラーニングとも呼ばれています。コンピューター自体がデータの潜在的な特徴を汲み取り、効率的で的確な判断を実現することができます。

機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

1回答

1433閲覧

chainerのデータセットをcifar10からMNISTに変えるとエラーになる

cogi

総合スコア4

Chainer

Chainerは、国産の深層学習フレームワークです。あらゆるニューラルネットワークをPythonで柔軟に書くことができ、学習させることが可能。GPUをサポートしており、複数のGPUを用いた学習も直感的に記述できます。

深層学習

深層学習は、多数のレイヤのニューラルネットワークによる機械学習手法。人工知能研究の一つでディープラーニングとも呼ばれています。コンピューター自体がデータの潜在的な特徴を汲み取り、効率的で的確な判断を実現することができます。

機械学習

機械学習は、データからパターンを自動的に発見し、そこから知能的な判断を下すためのコンピューターアルゴリズムを指します。人工知能における課題のひとつです。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2019/10/13 21:31

前提・実現したいこと

chainerで画像分類モデルと学習の定義をしていました。
データセットをcifar10からIRISに変更したところ
以下のエラーが発生します。

発生している問題・エラーメッセージ

Exception in main training loop: Invalid operation is performed in: Convolution2DFunction (Forward)

該当のソースコード

python

1def train(batchsize=128, gpu_id=0, max_epoch=20, base_lr=0.01): 2 # 1. Dataset 3 #train_val, test = chainer.datasets.get_cifar10() 4 #train_size = int(len(train_val) * 0.9) 5 #train, valid = split_dataset_random(train_val, train_size, seed=0) 6 7 # Iris データセットの読み込み 8 dataset = load_iris() 9 10 # 入力値と目標値を別々の変数へ格納 11 x = dataset.data 12 t = dataset.target 13 14 # Chainer がデフォルトで用いる float32 型へ変換 15 x = np.array(x, np.float32) 16 t = np.array(t, np.int32) 17 18 # 入力値と目標値を引数に与え、`TupleDataset` オブジェクトを作成 19 dataset = TupleDataset(x, t) 20 21 n_train = int(len(dataset) * 0.7) 22 23 train, valid = split_dataset_random(dataset, n_train, seed=0) 24 25 # 2. Iterator 26 train_iter = iterators.MultiprocessIterator(train, batchsize) 27 valid_iter = iterators.MultiprocessIterator(valid, batchsize, False, False) 28 29 # 3. Model 30 model = DeepCNN(10) 31 net = L.Classifier(model) 32 33 # 4. Optimizer 34 optimizer = optimizers.MomentumSGD(lr=0.01).setup(net) 35 optimizer.add_hook(chainer.optimizer.WeightDecay(0.0005)) 36 37 # 5. Updater 38 updater = training.StandardUpdater(train_iter, optimizer, device=gpu_id) 39 40 # 6. Trainer 41 trainer = training.Trainer(updater, (max_epoch, 'epoch'), out='result-cifar-10') 42 43 # 7. Trainer extensions 44 trainer.extend(extensions.LogReport()) 45 trainer.extend(extensions.observe_lr()) 46 trainer.extend(extensions.Evaluator(valid_iter, net, device=gpu_id), name='val') 47 trainer.extend(extensions.PrintReport(['epoch', 'main/loss', 'main/accuracy', 'val/main/loss', 'val/main/accuracy', 'elapsed_time', 'lr'])) 48 trainer.extend(extensions.PlotReport(['main/loss', 'val/main/loss'], x_key='epoch', file_name='loss.png')) 49 trainer.extend(extensions.PlotReport(['main/accuracy', 'val/main/accuracy'], x_key='epoch', file_name='accuracy.png')) 50 trainer.extend(extensions.snapshot_object(model 51 , "model_epoch_{.updater.epoch}")) 52 trainer.extend(extensions.dump_graph("main/loss")) 53 54 trainer.run() 55 del trainer 56 57 # 8. Evaluation 58 test_iter = iterators.MultiprocessIterator(test, batchsize, False, False) 59 test_evaluator = extensions.Evaluator(test_iter, net, device=gpu_id) 60 results = test_evaluator() 61 print('Test accuracy:', results['main/accuracy']) 62 return model

python

1model = train()

補足情報(FW/ツールのバージョンなど)

google coraboratory 上で実行しています。

このサイトを参考に作成しています。
https://qiita.com/ta7uw/items/9301eef7dd74a249d5ea

気になる質問をクリップする

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

タイトル間違ってました。
MNIST→IRISです。

投稿2019/10/13 21:43

cogi

総合スコア4

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問