kerasの使い方 (python)



Python
Pythonとは
基本的な使い方
IDLE
Jupyter Notebook
Markdown
コマンドプロンプトで実行
仮想環境の構築
仮想環境でIDLEを実行
ライブラリのインストール
pipの使い方
numpy , matplotlib等
graphviz
pytorch
Mecab
Pythonの関数:一覧
共通関数
append , extend
class
copy
csv.reader
csv.writer
def , return
dict , defaultdict
enumerate
exit
for
if
import
in
input
lambda
len
list
min/max
OrderedDict
open/close
os
pickle
print
range
re.split
read/readline
round/floor/ceil
split
sys.argv
time
while
write
zip
・特殊メソッド
 ・__name__
 ・__iter__ , __next__
正規表現、メタ文字
データの型の種類
四則演算 (+ , - , * , /)
コメントアウト (# , ''')
numpy
append
arange
argmax/argmin
array
asfarray
astype , dtype
digitize
dot
hstack/vstack
linalg.solve
linspace
mean
meshgrid
mgrid
ndim
ndmin
pad
poly1d
polyfit
prod
random
reshape
savetxt/loadtxt
shape
std
transpose
where
zeros/zeros_like
scipy
expit
imread
interpolate
matplotlib
imshow
figure
pcolormesh
plot
scatter
scikit-learn
GaussianNB
KMeans
KNeighborsClassifier
SVC
tree
keras
chainer
chainerrl
pytorch
BCELoss , MSELoss
Embedding
device
Sequential
Dataset, Dataloader
RNN, LSTM
OpenAI gym
Blackjack-v0
CartPole-v0
tkinter
frame, grid
画像表示
画像を切り取り表示
画像を保存
目的別
ステップ関数
1 of K 符号化法
線形補間
配列に番号をつける

公開日:2019/11/23         

■説明
kerasはニューラルネットワークの計算を便利にする関数です。

■具体例
<シンプルなニューラルネットワーク>
以下に簡単な構成例を示します。実装具体例はこちら

# ライブラリ定義
from keras.utils import np_utils
from keras.models import Sequential
from keras.layers import Activation,Dense
keras.optimizers import Adam

# 実行
model = Sequential()
model.add(Dense(200,input_dim=784,activation='relu'))
model.add(Dense(10,activation='softmax'))
model.compile(loss='categorical_crossentropy',optimizer=Adam(), metrics=['accuracy'])
history = model.fit(A,B,epochs=10,batch_size=100,verbose=0,validation_data=(C,D))

これを図解すると以下のとおり。
 

1 of K 符号化法とはある要素だけ1でそれ以外が0になる配列で、kerasの場合以下となります。

np_utils.to_categorical(a, b)


<畳み込みニューラルネットワーク(CNN)>
CNNをする場合は以下の記載を追加変更します。実装具体例はこちら

>>from keras.layers import Activation, Dropout, Flatten, Dense
>>from keras.layers import Conv2D, MaxPooling2D
>>model.add(Conv2D(filters=10,kernel_size=(3, 3),padding='same',input_shape=(28,28,1), activation='relu'))
>>model.add(Flatten())


CNNは2次元データとして扱うのが特徴なので、2次元に対応した表記となっております。説明は以下。

 ・filters:画像フィルターの数
 ・kernel_size:フィルターのサイズ
 ・padding:sameはゼロパディング実施。validはパディングを実施しない。
 ・Flatten():1次元データに変換

<ディープラーニング>
上記畳み込み層に対してプーリング層やドロップアウト層を加え、深い層にしたものをディープラーニングといいます。実装具体例はこちら

>>model.add(MaxPooling2D(pool_size=(2, 2)))
>>model.add(Dropout(0.5))










サブチャンネルあります。⇒ 何かのお役に立てればと

関連記事一覧



Python
Pythonとは
基本的な使い方
IDLE
Jupyter Notebook
Markdown
コマンドプロンプトで実行
仮想環境の構築
仮想環境でIDLEを実行
ライブラリのインストール
pipの使い方
numpy , matplotlib等
graphviz
pytorch
Mecab
Pythonの関数:一覧
共通関数
append , extend
class
copy
csv.reader
csv.writer
def , return
dict , defaultdict
enumerate
exit
for
if
import
in
input
lambda
len
list
min/max
OrderedDict
open/close
os
pickle
print
range
re.split
read/readline
round/floor/ceil
split
sys.argv
time
while
write
zip
・特殊メソッド
 ・__name__
 ・__iter__ , __next__
正規表現、メタ文字
データの型の種類
四則演算 (+ , - , * , /)
コメントアウト (# , ''')
numpy
append
arange
argmax/argmin
array
asfarray
astype , dtype
digitize
dot
hstack/vstack
linalg.solve
linspace
mean
meshgrid
mgrid
ndim
ndmin
pad
poly1d
polyfit
prod
random
reshape
savetxt/loadtxt
shape
std
transpose
where
zeros/zeros_like
scipy
expit
imread
interpolate
matplotlib
imshow
figure
pcolormesh
plot
scatter
scikit-learn
GaussianNB
KMeans
KNeighborsClassifier
SVC
tree
keras
chainer
chainerrl
pytorch
BCELoss , MSELoss
Embedding
device
Sequential
Dataset, Dataloader
RNN, LSTM
OpenAI gym
Blackjack-v0
CartPole-v0
tkinter
frame, grid
画像表示
画像を切り取り表示
画像を保存
目的別
ステップ関数
1 of K 符号化法
線形補間
配列に番号をつける