others
【pytorch】caltech-101 を使ってCNNモデルの歴史を辿る【VGG16からEfficientNetまで】
備考 caltech-101 の中にはモノクロ画像(チャンネル数1)が混ざっているため、前処理でチャンネル数を3に変換する。 学習済みのモデルを使用して、学習をさせる GPUはA2000 12GBを使用する 今回はあくまでもモデルごとの違いをコードを通じて体感することが目的。パラメータが最適であるかは不問。 requirements.txt cuda-bindings==13.2.0 cuda-pathfinder==1.5.2 cuda-toolkit==13.0.2 filelock==3.25.2 fsspec==2026.3.0 Jinja2==3.1.6 MarkupSafe==3.0.3 mpmath==1.3.0 networkx==3.4.2 numpy==2.2.6 nvidia-cublas==13.1.0.3 nvidia-cuda-cupti==13.0.85 nvidia-cuda-nvrtc==13.0.88 nvidia-cuda-runtime==13.0.96 nvidia-cudnn-cu13==9.19.0.56 nvidia-cufft==12.0.0.61 nvidia-cufile==1.15.1.6 nvidia-curand==10.4.0.35 nvidia-cusolver==12.0.4.66 nvidia-cusparse==12.6.3.3 nvidia-cusparselt-cu13==0.8.0 nvidia-nccl-cu13==2.28.9 nvidia-nvjitlink==13.0.88 nvidia-nvshmem-cu13==3.4.5 nvidia-nvtx==13.0.85 pillow==12.2.0 scipy==1.15.3 sympy==1.14.0 torch==2.11.0 torchvision==0.26.0 triton==3.6.0 typing_extensions==4.15.0 VGG16 VGG16 は3x3 畳み込みをとにかく深くして、単純にすることを目 ...pytorch の nn.moduleを継承して自作AIモデルを作り、CNNモデルの歴史を辿る
CNNの歴史。 この歴史に沿って、FassionMNISTに対し、nn.moduleで各AIモデルに沿ったモデルを作る。 VGG 3x3 の畳み込みをただ深く積み重ねる class VGG_Fashion(nn.Module): def __init__(self): super(VGG_Fashion, self).__init__() self.features = nn.Sequential( # Block 1 nn.Conv2d(1, 32, 3, padding=1), nn.ReLU(), nn.Conv2d(32, 32, 3, padding=1), nn.ReLU(), nn.MaxPool2d(2), # 14x14 # Block 2 nn.Conv2d(32, 64, 3, padding=1), nn.ReLU(), nn.Conv2d(64, 64, 3, padding=1), nn.ReLU(), nn.MaxPool2d(2) # 7x7 ) self.classifier = nn.Sequential( nn.Linear(64 * 7 * 7, 512), nn.ReLU(), nn.Dropout(0.5), nn.Linear(512, 10) ) GoogLeNet 1x1 フィルタを使用して次元数を削減している。(※ 5x5 畳み込みはサイズの都合上、省略) class InceptionModule(nn.Module): def __init__(self, in_ch, out_1x1, out_3x3): super().__init__() self.branch1 = nn.Conv2d(in_ch, out_1x1, kernel_size=1) self.branch2 = nn.Sequential( nn.Conv2d(in_ch, out_3x3//2, kernel_size=1), nn.Conv2d(out_3x3//2, out_3x3, kernel_size=3, padding=1) ) def forward(self, x): ...MicroSoft Accessの制約メモ
Ubuntuの夜間モードが通用しない場合の対処法
GUIから夜間モードの操作をする。 gnome-control-center display これで夜間モードの設定画面が開く。 コマンドから夜間モードを有効にする。 gsettings set org.gnome.settings-daemon.plugins.color night-light-enabled true これでONになり、 gsettings set org.gnome.settings-daemon.plugins.color night-light-enabled false これでOFFになる。ショートカットキーにも割り当てておけば便利かもしれない。 どうしても夜間モードが効かない場合は? ログアウトして再度ログインする。これでデスクトップが起動し直され、夜間モードが正常に機能する。 ...OracleDBのSQLまとめ
dockerにインストールしたOracle−XEを使用している。 UbuntuのDockerでOracle DB SQL Silverの試験勉強の環境を整える HR スキーマを搭載した。 雇用日時をもとに絞り込みをする 【非推奨】文字列を与えると、暗黙的にDATE型に変換する 例えば、2015年1月1日以降に雇用した従業員を出力するには、 SELECT * FROM employees WHERE hire_date >= '2015-01-01' ; そして、新人を上に表示させるため、降順に並び替える。 SELECT * FROM employees WHERE hire_date >= '2015-01-01' ...Seleniumの基本操作のまとめ
Seleniumは同じような処理が続くため、基本操作をまとめた。 ただ、forループとtry 文が続く冗長構成のため、後に修正する予定。 ソースコード from selenium import webdriver from selenium.webdriver.support.ui import WebDriverWait, Select from selenium.webdriver.support import expected_conditions from selenium.webdriver.common.by import By from selenium.common.exceptions import TimeoutException driver = webdriver.Firefox() wait = WebDriverWait(driver, 10) retry = 10 # 要素が見えているか def xpath_visible(xpath: str): return wait.until(excepted_conditions.visibility_of_element_located((By.XPATH, xpath))) def xpath_click(xpath: str): for _ in range(retry): try: elem = xpath_visible(xpath) elem.click() except: continue else: return raise TimeoutException(f"クリックできませんでした: {xpath}") def xpath_send_keys(xpath: str, keys: str): for _ in range(retry): try: elem = xpath_visible(xpath) elem.send_keys(keys) except: continue else: return raise Timeout ...ffmpeg で すべてのmp4ファイルをまとめて加工するシェルスクリプト
冒頭に広告や前置きなどがある動画を、まとめて加工したい場合。 高速で切り取りしたい場合 #! /bin/bash for file in *.mp4; do ffmpeg -i "$file" -ss 100 -c copy "${file}_output.mp4" done たまに、冒頭数秒が空白になってしまうようだ。 品質も維持したい場合 #! /bin/bash for file in *.mp4; do ffmpeg -i "$file" -ss 100 -c:v libx264 -c:a aac -strict experimental "${file}_output.mp4" done こちらはエンコードまでするため、冒頭の空白が除去できる。 解説 -i input.mp4 : 編集対象のファイルを指定する -ss 100 : 動画の開始時間を100秒とする -c copy : エンコードなしでコピーする(品質よりも高速化 ...Ubuntuにnode.jsを手動でインストールする【tar.xz ファイルの解凍と】
- 作成日時:
- 最終更新日時:
- Categories: others
- Tags: node.js JavaScript Ubuntu
UbuntuからWindows開発環境への移行作業
慣れ親しんだUbuntuからWindowsへメインマシンを移行し、開発環境を構築する必要が出てきたので、ここにその手順をまとめておく。 VirtualBoxのインストール とりあえず、VirtualBoxさえあれば元のUbuntu環境をある程度の再現はできるので事前にインストールしておく。 https://www.oracle.com/jp/virtualization/technologies/vm/downloads/virtualbox-downloads.html Windows の場合、Visual C++を事前にインストールしておく必要がある https://1nux.com/archives/318 このページのX64 をDLしてインストールした ...