Pytorchの最近のブログ記事

Transformers Object detection - detr の転移学習とONNX変換と実行。
---- 雑草の独自データの転移学習とONNXでの変換、実行を試す ----

Transformers Object detection

1. 最初に、オリジナルの転移学習を試す。
次に、雑草画像の独自データを用意して、YOLO アノテーションを作成して、それを、COCO 形式に変換して、
雑草画像の転移学習を、試してみた。

開発環境
Ubuntu Mate 22.04
GPU: GeForce GTX 1070
Python 3.10
virtualenv

checkpoint = "facebook/detr-resnet-50"
が、転移学習のベースモデルみたい。
huggingface.co/facebook/detr-resnet-50

num_train_epochs=30
位必要みたい。
一応、オリジナル版の転移学習は、OK でした。

transformer asr japanese サンプルがある。

おんちゃんは、transformer asr のサンプルの、下記を試しておったが、
Automatic speech recognition
なんとも、日本語対応がすでに、ありますっと。

google で検索していたら、transformer asr japanese があった。
kotoba-tech/kotoba-whisper-v1.0 を ONNX に変換して動かしてみた。

1. 自分で転移学習をするなら、
August 2023, Fine-Tuning ASR Models for Japanese and Vietnamese by using OpenAI Whisper and Azure Speech Studio

2. そのまま使うなら、
kotoba-tech/kotoba-whisper-v1.0

ここのサンプルで、最近、判ったことだが、

torch_dtype = torch.bfloat16 if torch.cuda.is_available() else torch.float32

の部分は、使う GPU によっては、注意が必要みたいぞね。
おんちゃんの、GPU は、 GTX-1070 じゃが、この場合は、float16 は、使えないみたいぞね。

#torch_dtype = torch.bfloat16 if torch.cuda.is_available() else torch.float32
torch_dtype = torch.float32
こちらにすべきです。
これで、3.8 sec/f だったのが、 1.18 sec/f になったぞね。

日本語音声認識に特化したWhisperである kotoba-whisper-v1.0を早速試してみた
Kotoba-Whisper入門 - 日本語音声認識の新しい選択肢

結論を言えば、kotoba-whisper-v1.0 で、GTX-170 の場合、torch_dtype = torch.float32 で使うと、
リアルタイム MIC 入力で使えば、それなりに快適に動きます。
Yutube の怪談の動画の音声をスピーカーに出して、それをマイクで拾って遊んでいます。
まあ、間違いは、お愛嬌か。

OAK-D-Lite Object Detection YOLOv7 transfer learning.

OAK-D-Lite Object Detection YOLOv7 転移学習をしてみた。

単純に下記ページの YOLOv7 tutorial を実行するだけ。
docs.luxonis.com/software/ai-inference/training

結論から先に言えば、うまくできました。
OAK-D Lite で、動きました。

ただし、サンプルは、google colaboratory と、Google Drive を使っています。
おんちゃんも当初は、お同じにしていましたが、どうも、Google Drive への保存が良くわからなくて、学習結果が消えてしまいました。

結局、ubuntu 22.04 PC 上で、実行しました。

1. PC環境
Ubuntu Mate 22.04
GPU: GeForce GTX 1070
Python 3.10
virtualenv
OAK-D Lite

2. 手順
$ cd
$ python3 -m pip install virtualenv --user
$ python3 -m virtualenv torch_env
$ source ~/torch_env/bin/activate
(troch_env) xxx@xxx:~$
$ python -m pip install --upgrade pip

あとは、PyTorch のインストールをします。
https://github.com/WongKinYiu/yolov7 の環境を、そのまま使用します。
$ cd ~/Documents/Visualstudio-torch_env
$ git clone https://github.com/WongKinYiu/yolov7.git
$ cd yolo7
$ python -m pip install -r requirements.txt
$ python -m pip install notebook

これで、pytorch GPU も、OK です。
ただし、
Ubuntu 22.04 Tensorflow GPU Install. でシステム側にインストールした、
cudnn か、なにかのライブラリーと競合するようで、
~/.bashrc の記述の、LD_LIBRARY_PATH を取ります。
# add for libcudnn8
#export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:/home/nishi/usr/local/share/TensorRT-8.6.1.6/lib:$LD_LIBRARY_PATH

Pytorch PVCNN:Point-Voxel CNN for Efficient 3D Deep Learning #4

Pytorch PVCNN:Point-Voxel CNN for Efficient 3D Deep Learning #4 です。

Pytorch PVCNN:Point-Voxel CNN for Efficient 3D Deep Learning #3 で、S3DIS の学習ができたので、
今回は、予測(Predict) を試してみました。

開発環境
OS: Windows10
言語: Python 3.7.9
Pytorch 1.7.1 gpu
開発ツール: Eclipse
その他ツール:
VisualStudio 2017 community
MYSY2: ./data/shapenet/download.sh でのみ使用。
PCメモリー: 16G ( 9.5G 位使うみたい。)
注) オリジナルの、datasets/s3dis.py だと、チョットずつファイルから持ってくるので、メモリー消費は、少ないと思います。
GPU: GTX 1070 8G

前回同様、今回も、S3DISのデータアクセスは、オリジナルの datasets/s3dis.py では無くて、カスタマイズ版 (datasets/s3dis_nishi.py)を使います。
詳しくは、前回の Pytorch PVCNN:Point-Voxel CNN for Efficient 3D Deep Learning #3 をご覧ください。

評価用のオリジナルプログラムは、evaluate/s3dis/eval.py ですが、やはりこちらも、
データセットが用意出来ないので、コピーして、少し改造してやります。

Pytorch PVCNN:Point-Voxel CNN for Efficient 3D Deep Learning #3

Pytorch PVCNN:Point-Voxel CNN for Efficient 3D Deep Learning #3 です。

mit-han-lab/pvcnn

前回までで、shapenet データでの確認ができたので、今回は、KITTI と行きたいところですが、
KITTI のラベルデータの入手が、面倒なので、先に、S3DIS を試してみました。

開発環境
OS: Windows10
言語: Python 3.7.9
Pytorch 1.7.1 gpu
開発ツール: Eclipse
その他ツール:
VisualStudio 2017 community
MYSY2: ./data/shapenet/download.sh でのみ使用。
PCメモリー: 16G ( 9.5G 位使うみたい。)
注) オリジナルの、datasets/s3dis.py だと、チョットずつファイルから持ってくるので、メモリー消費は、少ないと思います。
GPU: GTX 1070 8G

S3DISの方も、オリジナルの datasets/s3dis.py のままでは、オリジナルデータのText ZIP
(http://buildingparser.stanford.edu/dataset.html) が必要なので使えません。

なので、今回は、'https://shapenet.cs.stanford.edu/media/indoor3d_sem_seg_hdf5_data.zip' を
ダウンロード And Unzip した、h5 ファイル版を使います。

Pytorch PVCNN:Point-Voxel CNN for Efficient 3D Deep Learning #2

Pytorch PVCNN:Point-Voxel CNN for Efficient 3D Deep Learning #2 です。

mit-han-lab/pvcnn

Pytorch PVCNN:Point-Voxel CNN for Efficient 3D Deep Learning で学習ができたので、結果確認をしてみます。

開発環境
OS: Windows10
言語: Python 3.7.9
Pytorch 1.7.1 gpu
開発ツール: Eclipse
その他ツール:
VisualStudio 2017 community
MYSY2: ./data/shapenet/download.sh でのみ使用。

1. 評価
オリジナルでは、下記、スクリプトを実行します。
> python train.py configs/shapenet/pvcnn/c1.py --devices 0 --evaluate

但し、これでは、面白くありません。
第一、通常のアプリケーションで使えるような代物ではありません。
たとえは、1件の画像 (Point Cloudデータ) を入力して、その結果を利用する。
には、使えません。
なので、今回少し改造をしてみました。

Pytorch PVCNN:Point-Voxel CNN for Efficient 3D Deep Learning

Pytorch PVCNN:Point-Voxel CNN for Efficient 3D Deep Learning を試してみました。

mit-han-lab/pvcnn

開発環境
OS: Windows10
言語: Python 3.7.9
Pytorch 1.7.1 gpu
開発ツール: Eclipse
その他ツール:
VisualStudio 2017 community
MYSY2: ./data/shapenet/download.sh でのみ使用。

1. Data
Data は、ShapeNet にしました。

2. Pytorch 実行環境
Anaconda で、 Pytorch 1.7.1用のチャネルだけ作成して、後は、全て
pip install で、必要パッケージを追加します。
毎回、環境を設定するのが、結構大変なので、batch ファイルを用意して、DOS プロンプトで起動します。

Pytorch で U-Net(セマンティックセグメンテーション) のサンプルが結構公開されているので、
その中から、
https://github.com/milesial/Pytorch-UNet
を、Windows10 + GPU 環境で試してみました。

OS:Windows10
GPU:GeForce GTX 1050 Ti 4.0GB)
CUDA:10.0
Anaconda3 + Python 3.6
Pytorch 1.0.1

その前に、PyDenseCRF のインストールで躓いたので、メモしておきます。
pip install pydensecrf では、コンパイルエラーになります。
https://github.com/conda-forge/pydensecrf-feedstock

TensorRT 5.1 Windows10 での試し #2

TensorRT 5.1 の Windows10での試し、第2回として、
今回は、 Pytorch 1.0 Object Detection faster-rcnn の試し で使った学習済みモデルを、
TensorRT 5.1 に持って行って実行できるか試してみます。

TensorRT で Pytorch の学習済モデルを使うには、ONNX format にしてから、TensorRT で取り込んんでやれば良いとの事です。

https://docs.nvidia.com/deeplearning/sdk/tensorrt-sample-support-guide/index.html#onnx_mnist_sample 

その前に、 おんちゃんは、TensorRT5.1 で C++ 開発をするにあたり、下記ページを参考にしています。
tensorrt-developer-guide > 2. Working With TensorRT Using The C++ API

Pytorch 1.0 Object Detection faster-rcnn の試し

Windows10 + Pytorch 1.0 + VisualStudio 2017 環境で試せる Object Detection faster-rcnn が
GitHub に紹介されていたので、試してみました。

 https://github.com/facebookresearch/maskrcnn-benchmark

インストレーションは、
https://github.com/facebookresearch/maskrcnn-benchmark/blob/master/INSTALL.md

を参考にして行います。

但し途中の箇所でエラーが出てそれから進みません。

このアーカイブについて

このページには、過去に書かれたブログ記事のうちPytorchカテゴリに属しているものが含まれています。

前のカテゴリはPlatformio IDEです。

次のカテゴリはROSです。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

カテゴリ

ウェブページ

サイトナビ