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

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

詳細はこちら
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Jupyter

Jupyter (旧IPython notebook)は、Notebook形式でドキュメント作成し、プログラムの記述・実行、その実行結果を記録するツールです。メモの作成や保存、共有、確認などもブラウザ上で行うことができます。

Python

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

Q&A

1回答

1685閲覧

python3.6で手書き数字認識AIの作成

T.abe0531

総合スコア7

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Jupyter

Jupyter (旧IPython notebook)は、Notebook形式でドキュメント作成し、プログラムの記述・実行、その実行結果を記録するツールです。メモの作成や保存、共有、確認などもブラウザ上で行うことができます。

Python

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

0グッド

0クリップ

投稿2019/12/31 04:45

編集2020/01/03 02:35

AIの勉強をすることになったので、まずはと思っていますwindows10で手書き数字認識のAIを作りたい。

ブラウザ上で手書きの数字を判別するAIを、コピー&ペーストで作ってみよう

上記のサイトに従いjupyterの表示とhellow worldの表示まではできましたが、いざその2をコピペして実行してみるとtensorflowのエラーばかりが起きてしまいました。
モジュールがないということで探してフォルダに入れるなど行いましたが、結局エラーは直らず進みません。

エラーは

ImportError: cannot import name 'activations'

ImportError: cannot import name 'Layer'

試したこと

バージョンがダメだと見かけたのでtensorflowをいくつかのバージョンで試しました。

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

windows10
powershell
tensorflow1.12.0
python3.6

追記(バージョン)

jupyter 1.0.0
jupyter-client 5.3.4
jupyter-console 6.0.0
jupyter-core 4.6.1
Keras 2.3.1
Keras-Applications 1.0.8
Keras-Preprocessing 1.1.0
numpy 1.17.4
matplotlib 3.1.2
scikit-learn 0.22.1
scipy 1.4.1
pandas 0.25.3
Pillow 6.2.1
tensorflow 1.12.0
tensorflow-estimator 2.0.1

追記(コード)

powershellからjupyterNoteBookを起動してコピペしました。

import tensorflow as tf import numpy as np from tensorflow.contrib.learn.python.learn.datasets import mnist as mnist_loader x = tf.placeholder("float",[None,784]) Weight = tf.Variable(tf.zeros([784,10])) b = tf.Variable(tf.zeros([10])) y = tf.nn.softmax(tf.matmul(x,Weight)+b) y_ = tf.placeholder("float",[None,10]) cross_entropy = -tf.reduce_sum(y_*tf.log(y)) train_step = tf.train.GradientDescentOptimizer(0.01).minimize(cross_entropy) init = tf.global_variables_initializer() ss = tf.InteractiveSession() ss.run(init) for times in range(1200): xb, yb = mnist.train.next_batch(100) ss.run(train_step, feed_dict={x: xb, y_: yb})

追記エラー

ERROR:root:Internal Python error in the inspect module. Below is the traceback from this internal error. ・・・ File "c:\users\ユーザー名\appdata\local\programs\python\python36\lib\site-packages\tensorflow_core\keras\__init__.py", line 24, in <module> from tensorflow.python.keras import activations ImportError: cannot import name 'activations'

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

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

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

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

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

snowshink

2019/12/31 04:58

参考サイトに完成イメージがあったのですが、どこまで出来ました? あと、AIというと画像認識というイメージがあると思いますが、レコメンドや線形なども機械学習のひとつです。画像認識は多次元ゆえに複雑なので、簡単なscikit-learnから始めるのも手です。参考までに。
meg_

2019/12/31 05:16 編集

・リンクは「リンクの挿入」で記入しましょう。 ・pythonはcondaではなく素のpythonですか? ・tensorflowはGPU版ですか? CPU版ですか? ・エラーは全文掲載しましょう。(ユーザー名等は隠してもらってOKです)
T.abe0531

2019/12/31 05:24

はい、リンクの挿入を使います。 pythonは素のものです。condaもインストールしましたがよくわかりませんでしたので。 手順に従ってインストールしたので、恐らくCPUだと思います。
T.abe0531

2019/12/31 05:35

ーーsnowshink 参考サイトのその2でエラーが起きているので、インストール部分で不具合が起きているのではないかと考えています。 tesseractを使い画像の文字認識は行えたので、次に自分で書いた数字を認識してくれるものに挑戦しようと考えました。 scikit-learnもそれができるのでしょうか?
snowshink

2019/12/31 08:37

自分としては、まずあなたの書いたコードが知りたいです。 ほんとにコピペしただけですか?余分な全角空白とか入ってませんか? こういう部分が知りたいので、質問しました。 activationやLayerにあたる箇所がざっと見たところ見当たらなかったので。 基本的にエラーメッセージに発生行がかかれているはずなのですが。そこもないので pip listでインストールされたパッケージがわかるのでそこを載せてくれませんか。 絶対にバージョンの問題というわけではないので。 scikit-learnでも手書き認識はできます。ただ、いきなりtensorflowかあと思っただけなのでお好きにどうぞ。 condaがよくわからなかったというのも自分としてはよくわからないです。自分も機械学習を勉強する機会があってAnaconda3,jupyterNoteBook使いましたけど特に難はありませんでした。
meg_

2020/01/03 03:59

エラー発生箇所は「import tensorflow as tf」ですか?
meg_

2020/01/03 04:10

参考にされたサイトを見ましたが、Kerasはインストールしてなかったので、独自に入れましたか? 仮想環境を新たに作って参考サイト通りに環境を作り直してみてはどうでしょうか? ※但し記事から1年以上経っているので当時の各モジュールのバージョンについて、記事を書いた人に聞いた方が良いかもです。Qiitaにはコメント投稿機能がありますよ。
snowshink

2020/01/03 14:36

jupyterNoteBookを起動したんですか?ならなぜjupyterでやらないんですか?
T.abe0531

2020/01/03 23:51

手順通りにjupyterで行いエラーが起きています。 昨日scikit-learnで手書きの数字認識を試した際もバージョン関係でエラーが起きていたので、そちらを試してみようと思っています。
guest

回答1

0

長いのでコメント欄ではなく回答欄に書きます。

今インストールされているものがTFv1.12、かつKeras2.3.1だそうですので、それをベースに投稿されているエラーを調べるとおおむね以下の3通りの解決策が出てきました。いずれも、Pythonスクリプトの初めの方に何らかのimportを挟む、というものです。

Cannot import name 'activations'
from tensorflow.keras.layers import Layer

Cannot import name 'activations' using keras 2.3.1
from tensorflow.keras.layers import InputSpec
from keras import activations, initializers, regularizers, constraints

Upgrade tensor flow from 1.9 to 1.12
from tensorflow.keras.layers import Embedding, Dense, Input, Dropout, LSTM, Activation, Conv2D, Reshape, Average, Bidirectional


環境にも寄るかと思いますが、今のところ古めのTFで一番安定しているのはv1.14だったかと思います。参考まで。

投稿2020/01/04 00:27

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

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

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

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問