回答編集履歴

3

PermissionErrorについて追記

2017/11/29 08:44

投稿

can110
can110

スコア38234

test CHANGED
@@ -9,3 +9,71 @@
9
9
 
10
10
 
11
11
  また、mkgreiさんも指摘されていますが`fd = open(~, 'rb')`と`rb`=バイナリモードで開かないと正常に読み込めないかもしれません(未検証)。
12
+
13
+
14
+
15
+ PermissionErrorについて追記
16
+
17
+ -----
18
+
19
+
20
+
21
+ おそらく**ファイル**ではなく**ディレクトリ**を開こうとしています。
22
+
23
+ 次のようなディレクトリ構成になっていないでしょうか?
24
+
25
+ ```plain
26
+
27
+ ./data +
28
+
29
+ |
30
+
31
+ + mnist +
32
+
33
+ |
34
+
35
+ + train-images-idx3-ubyte + ←ディレクトリ!
36
+
37
+ |
38
+
39
+ + train-images-idx3-ubyte 解凍されたファイル
40
+
41
+ ```
42
+
43
+
44
+
45
+ 検証コード
46
+
47
+ ```Python
48
+
49
+ import os
50
+
51
+ data_dir = os.path.join("./data", 'mnist')
52
+
53
+ file_path = os.path.join(data_dir, 'train-images-idx3-ubyte')
54
+
55
+ print(file_path)
56
+
57
+ fd = open(file_path)
58
+
59
+ fd.close()
60
+
61
+ ```
62
+
63
+
64
+
65
+ 実行結果
66
+
67
+ ```plain
68
+
69
+ ./data\mnist\train-images-idx3-ubyte
70
+
71
+ Traceback (most recent call last):
72
+
73
+ File "~\temp.py", line 7, in <module>
74
+
75
+ fd = open(file_path)
76
+
77
+ PermissionError: [Errno 13] Permission denied: './data\mnist\train-images-idx3-ubyte'
78
+
79
+ ```

2

ファイルモードについて追記

2017/11/29 08:44

投稿

can110
can110

スコア38234

test CHANGED
@@ -5,3 +5,7 @@
5
5
 
6
6
 
7
7
  参考:[MNIST 手書き数字データを画像ファイルに変換する](http://y-uti.hatenablog.jp/entry/2014/07/23/074845)
8
+
9
+
10
+
11
+ また、mkgreiさんも指摘されていますが`fd = open(~, 'rb')`と`rb`=バイナリモードで開かないと正常に読み込めないかもしれません(未検証)。

1

参考URL追加

2017/11/29 06:51

投稿

can110
can110

スコア38234

test CHANGED
@@ -1,3 +1,7 @@
1
1
  [train-images-idx3-ubyte.gz](http://yann.lecun.com/exdb/mnist/train-images-idx3-ubyte.gz)のサイズが`9,912,422`バイトなので、解凍前のファイルを読み込んでいると思われます。
2
2
 
3
3
  解凍して`train-images-idx3-ubyte`ファイルを置き換えると正常動作すると思います。
4
+
5
+
6
+
7
+ 参考:[MNIST 手書き数字データを画像ファイルに変換する](http://y-uti.hatenablog.jp/entry/2014/07/23/074845)