目次

ゼロから作るDeep Learning

windows環境にて

PyCharm

anacondaをインストールしてPyCharm をインストールしてみたが、numpyやmatplotlibがインストールされていない。

Terminarlで

# インストールされているモジュールを確認したところ入っていない
>conda list
# packages in environment at C:\Users\xxx\anaconda3\envs\pythonProject:
#
# Name                    Version                   Build  Channel
ca-certificates           2021.1.19            haa95532_0
certifi                   2020.12.5        py38haa95532_0
openssl                   1.1.1j               h2bbff1b_0
pip                       21.0.1           py38haa95532_0
python                    3.8.8                hdbf39b2_4
setuptools                52.0.0           py38haa95532_0
sqlite                    3.33.0               h2a8f88b_0
vc                        14.2                 h21ff451_1
vs2015_runtime            14.27.29016          h5e58377_2
wheel                     0.36.2             pyhd3eb1b0_0
wincertstore              0.2                      py38_0
zlib                      1.2.11               h62dcd97_4
# 以下の2つをpipでインストール
>pip install numpy
>pip install matplotlib

無事にグラグが表示された。
環境周りの説明があまり詳しくないようだ。
wslのubutuではグラフの表示は諦めた。
plt.savefig(img.png) として画像出力にした。

matplotlibでplt show()しても画像が表示されない (ゼロから作るディープラーニング)

3.6.1 MNISTデータセット

そのままでは画像をダウンロードできない。

import numpy as np
import matplotlib.pylab as plt
import sys, os   # コロンではない、カンマ
 
os.chdir("C:\\Users\\[user_name]\\PycharmProjects\\pythonProject\\deep-learning-from-scratch-master\\ch03")
sys.path.append(os.pardir)  # 親ディレクトリのファイルをインポートするための設定
from dataset.mnist import load_mnist
from PIL import Image
...
dataset/mnist.py
def _download(file_name):
    file_path = dataset_dir + "/" + file_name
 
    if os.path.exists(file_path):
        return
 
    print("Downloading " + file_name + " ... ")
    # urllib.request.urlretrieve(url_base + file_name, file_path)  #←この行をコメントアウト
 
    # ↓↓↓ 追加 ↓↓↓
 
    headers = {
        "User-Agent": "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:47.0) Gecko/20100101 Firefox/47.0"
        }
    request = urllib.request.Request(url_base+file_name, headers=headers)
    response = urllib.request.urlopen(request).read()
    with open(file_path, mode='wb') as f:
        f.write(response)
    # ↑↑↑ 追加 ↑↑↑
 
    print("Done")

3.6.2 ニューラルネットワークの推論処理

NameError: name 'pickle' is not definedというエラーがでる。
import pickleを追加したらエラーが消えた。

4.3.3 偏微数

図4-8の出し方がわからなかったので調査。

def function_2(x):
    return x[0]**2 + x[1]**2
    # return np.sum(x**2)
 
 
import matplotlib.pylab as plt
from mpl_toolkits.mplot3d import Axes3D
 
# Figureと3DAxeS
fig = plt.figure(figsize = (5, 5))
ax = fig.add_subplot(111, projection="3d")
 
# (x,y)データを作成
x = np.arange(-1.0, 1.0, 0.1)
y = np.arange(-1.0, 1.0, 0.1)
 
# 格子点を作成
X, Y = np.meshgrid(x, y)
 
# 高度の計算式
Z = function_2(np.array([X,Y]))
 
# 曲面を描画
ax.plot_surface(X, Y, Z, cmap = "summer")
 
plt.show()