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

・signal.square, sawtooth

matplotlib
・contour

・imshow

・figure

・pcolormesh

・plot

・quiver

・scatter

scikit-learn
・GaussianNB

・KMeans

・KNeighborsClassifier

・SVC

・tree

chaospy

keras

chainer

chainerrl

pandas
・データ抽出

・concat

・DataFrame

・read_excel

pytorch
・BCELoss , MSELoss

・Embedding

・device

・Sequential

・Dataset, Dataloader

・RNN, LSTM

OpenAI gym
・Blackjack-v0

・CartPole-v0

seaborn
・pairplot

tkinter
・frame, grid

・画像表示

・画像を切り取り表示

・画像を保存

目的別
・ステップ関数

・矩形波, 三角波

・1 of K 符号化法

・線形補間

・配列に番号をつける

・ベクトル場を描く

・線形回帰, 多項式回帰

・Bluetooth接続


公開日: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

・signal.square, sawtooth

matplotlib
・contour

・imshow

・figure

・pcolormesh

・plot

・quiver

・scatter

scikit-learn
・GaussianNB

・KMeans

・KNeighborsClassifier

・SVC

・tree

chaospy

keras

chainer

chainerrl

pandas
・データ抽出

・concat

・DataFrame

・read_excel

pytorch
・BCELoss , MSELoss

・Embedding

・device

・Sequential

・Dataset, Dataloader

・RNN, LSTM

OpenAI gym
・Blackjack-v0

・CartPole-v0

seaborn
・pairplot

tkinter
・frame, grid

・画像表示

・画像を切り取り表示

・画像を保存

目的別
・ステップ関数

・矩形波, 三角波

・1 of K 符号化法

・線形補間

・配列に番号をつける

・ベクトル場を描く

・線形回帰, 多項式回帰

・Bluetooth接続