Sequentialの使い方(pytorch)



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

max,min

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

quiver

scatter

scikit-learn
GaussianNB

KMeans

KNeighborsClassifier

SVC

tree

chaospy

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 符号化法

線形補間

配列に番号をつける

ベクトル場を描く

線形回帰, 多項式回帰


公開日:2021/6/11         

■説明
ニューラルネットワーク畳み込みニューラルネットワーク(CNN)の計算を行います。

■具体例
<ニューラルネットワーク>
活性化関数は以下の他にも、nn.Sigmoid()などが使えます。

import torch
import torch.nn as nn

class neural(nn.Module):
    def __init__(self, input_size, hidden, output):
        super().__init__()
        self.net = nn.Sequential(nn.Linear(input_size, hidden),nn.ReLU(),
                        nn.Linear(hidden, hidden),nn.LeakyReLU(0.2), #0.2はnegative slopeの傾き
                        nn.Linear(hidden, output),nn.Tanh())

    def forward(self, x):
        return self.net(x)

NN = neural(784, 256, 10) #入力:784、中間層:256、出力:10のニューラルネットワークを構築

x = torch.randn(784) #ここでは入力は適当にランダム値を入力
ans = NN(x) #forward関数を呼び出し
print(ans)

⇒ tensor([-0.0408, 0.0085, 0.0283, 0.0937, 0.0415, 0.0384, 0.1297, -0.0291,
        -0.1880, 0.0256], grad_fn=<TanhBackward>)


<畳み込みニューラルネットワーク>
以下を計算します。



import torch
import torch.nn as nn
import torch.nn.functional as F

class neural(nn.Module):
    def __init__(self):
        super().__init__()
        self.conv1    = nn.Conv2d(1, 32, 3)            # 畳み込み層, 3はフィルタサイズ
        self.conv2    = nn.Conv2d(32, 64, 3)           # 畳み込み層, 3はフィルタサイズ
        self.pool      = nn.MaxPool2d(2, 2)              # プーリング層
        self.dropout1= nn.Dropout2d()                   # ドロップアウト層
        self.fc1        = nn.Linear(64*12*12, 128)    # 全結合層
        self.dropout2 = nn.Dropout2d()                   # ドロップアウト層
        self.fc2        = nn.Linear(128, 10)                # 全結合層

    def forward(self, x):
        x = F.relu(self.conv1(x))        # [100, 32, 26, 26]
        x = F.relu(self.conv2(x))        # [100, 64, 24, 24]
        x = self.pool(x)                     # [100, 64, 12, 12]
        x = self.dropout1(x)              # [100, 64, 12, 12]
        x = x.reshape(-1, 9216)        # [100, 9216]
        x = F.relu(self.fc1(x))             # [100, 128]
        x = self.dropout2(x)              # [100, 128]
        x = self.fc2(x)                      # [100, 10]

        return x

NN = neural()

x = torch.randn(100, 1, 28, 28)    # batch_size , channels, input x input
ans = NN(x)                                # [100, 10]
print(ans.shape)

⇒ torch.Size([100, 10])










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

関連記事一覧



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

max,min

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

quiver

scatter

scikit-learn
GaussianNB

KMeans

KNeighborsClassifier

SVC

tree

chaospy

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 符号化法

線形補間

配列に番号をつける

ベクトル場を描く

線形回帰, 多項式回帰