前提・実現したいこと
pythonの機械学習の勉強を始めようと思っているものです。
mnistの中から5の画像をリスト化して出力するコードを書こうとしています。
class,def,への理解がまだまだです。
どこがおかしいのでしょうか。
あまりにおかしすぎて修正できないレベルであれば考え直します。
発生している問題・エラーメッセージ
Traceback (most recent call last): File "mnist_def.py", line 23, in <module> mnist = Mnist('mnist_784', 'data', 'target') File "mnist_def.py", line 8, in __init__ self.mnist = fetch_openml('database_name', version = 1) #データベースを取得 File "/anaconda3/lib/python3.7/site-packages/sklearn/datasets/openml.py", line 563, in fetch_openml data_info = _get_data_info_by_name(name, version, data_home) File "/anaconda3/lib/python3.7/site-packages/sklearn/datasets/openml.py", line 333, in _get_data_info_by_name data_home) File "/anaconda3/lib/python3.7/site-packages/sklearn/datasets/openml.py", line 176, in _get_json_content_from_openml_api raise ValueError(error_message) ValueError: Dataset database_name with version 1 not found.
このようなエラーが出ていますが、ここ以外にもおかしな所が多数ある気がしています。
該当のソースコード
python
1from sklearn.datasets import fetch_openml 2import numpy as np 3from PIL import Image 4 5class Mnist: 6 #初期化メソッド 7 def __init__(self, database_name, data_label, target_label): 8 self.mnist = fetch_openml('database_name', version = 1,) #データベースを取得 9 self.picture = self.mnist[data_label] #画像データを取得 10 self.number = self.mnist[target_label]# ターゲット(数字)を取得 11 12#関数make_listは、引数(enum)として与えられた数値の画像データのリストを作成し、戻り値とする 13 def make_list(self, enum): 14 picture_list = list() 15 16 for i, num in enumerate(self.number): 17 n = int(num) #収納されている数字(文字列) 18 if n == enum: #emuで指定した数字と一緒なら 19 picture_list.append(self.picture[i]) #画像をリストに追加 20 21 return picture_list 22#クラスとその関数を使って、数値5の画像リストpicuture_listを作成する 23mnist = Mnist('mnist_784', 'data', 'target') 24picture = mnist.make_list(5) 25print(len(picture_list)) 26
試したこと
教材やネットを見ながら書いていたのですが、、、手詰まりになってきたので質問しました。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/06/03 15:35
2019/06/03 15:57 編集
2019/06/04 11:57
2019/06/04 12:33
2019/06/04 14:06