画像生成AIを作る

2025/01/19(日) 13:52:21.32ID:dMmOXYWM
Pytorchなどの既存の機械学習用ライブラリを使わずにC++とCUDAを使ってゼロから画像生成AIを作っている
画像生成モデルにはGAN、VAE、拡散モデルなどがあるが
巷で話題のStable DiffusionというのはVEAと拡散モデルを両方取り入れたもの
ただし、Stable Diffusionにはprompt embeddingというユーザーの入力であるテキストプロンプトをニューラルネットワークに埋め込む構造が存在しているが
自分が作ろうとしているのは単純に正規分布の乱数列を入力すると任意の画像が生成されるという改造版のStable Diffusionなので
prompt embeddingを使わない方向で行こうと思う
2025/01/19(日) 14:34:14.09ID:dMmOXYWM
学習データはエロ画像ということもあり
もともとはPINK板にスレ建てたが
プログラム板住民ほど賢い人がいないのと、60レス目からグロ画像荒らしが来るようになったため
ここに来た次第である

https://phoebe.bbspink.com/test/read.cgi/hgame/1724853336/
3デフォルトの名無しさん
垢版 |
2025/01/19(日) 18:17:28.14ID:I92SXWAZ
尾行ついてるぞ
余計なもん連れて来やがって
2025/01/19(日) 20:56:10.51ID:dMmOXYWM
>>3
よくわからないですが、尾行とは誰のことでしょうか?
2025/01/19(日) 20:59:58.30ID:dMmOXYWM
あ、もしかして2レス目からハンドルネームがついてるのに違和感を覚えたのか
それならIDが同じであることからもわかるけど、同じ人ですよ
ただし、前に使っていたネームと違うものにしました
2025/01/19(日) 23:33:04.94ID:xePVZNJy
AI構築って企業が金を積んで教師データ量でバトルする領域だと思ってたけど、今さら個人でどうにかなるもんなの
勉強ついでなら好きにすればいいけどさ
7デフォルトの名無しさん
垢版 |
2025/01/20(月) 13:40:51.06ID:G+ryJ45G
企業は馬鹿を対象に馬鹿なデータも大量に集めるから馬鹿なAIにしかならんよ
2025/01/20(月) 18:13:35.96ID:OQDgsUSb
そこそこ知名度のある企業だと公衆の目を浴びなければいけないので
公序良俗に反するエロに進出することもできなくなるのでしょう
2025/01/20(月) 22:14:43.77ID:OQDgsUSb
Stable Diffsionのトレーニング手順としては
VAEのトレーニングと拡散モデルのトレーニングの二つの段階に分けられる
VAEはエンコーダとデコーダを持つモデルで、画像を低次元の潜在空間に圧縮し、その表現を使って元の画像を再構築する
拡散モデルのトレーニングはVAEで学習された潜在空間上で行われる
つまり、VAEが正しく画像を圧縮と再構築できなければ、次の段階である拡散モデルのトレーニングに進むこともできない
2025/01/20(月) 22:28:21.53ID:OQDgsUSb
VAEのトレーニングは先週から始めた
自分のPCのGPUのVRAMは16GBしかないため
もともとのstable diffusionで使われたいた512×512サイズの画像で学習することはできず、128×128で学習している

MSE lossは今では0.02なんだけど
再構築された画像はまだ微妙な感じ

https://i.imgur.com/nxwODSu.png
https://i.imgur.com/Vv32Cf2.png
11デフォルトの名無しさん
垢版 |
2025/01/21(火) 08:30:55.42ID:yRL5l1cZ
QRコードの質問此処で良い?
2025/01/21(火) 17:31:17.12ID:7ESsCguq
>>11
QRコードに関しては自分は全く詳しくないが
QRコードに使う誤り訂正とか数学的な話なら興味あるので調べてわかったなら答えるかもしれない
2025/01/21(火) 17:41:37.93ID:7ESsCguq
stable diffusionの構造に関してネットいろんな記事を見てきたけど
自分が見つけた実装レベルまで詳しく解説してくれているのは以下です

https://blog.csdn.net/xd_wjc/article/details/134441396
2025/01/22(水) 19:22:28.21ID:3QEENyMF
数日VAEをトレーニングしてみたが
最構築された画像はどれも>>10のようなぼやけているものばかり
ChatGPTに聞いてみたところ、どうやらMSEの短所らしい
MSEはピクセル単位で誤差を判断するため、キャラクターの輪郭など全体的な特徴を評価するのが苦手
全体的な誤差を評価するために、画像の類似度を示せるSSIMがいいらしい
合っているかどうかわからないが、とりあえずMSEとSSIMを組み合わせて使おうと思う
2025/01/22(水) 21:27:34.18ID:Ggey4yUO
stable diffusionの画像生成プロセスを観てると、夢ん中で作られていく感じに似てるとおもた
2025/01/22(水) 22:07:43.80ID:3QEENyMF
>>15
画像に一歩ずつノイズを加えていくと、最終的には画像自体が完全にノイズになる
その逆過程を実現するのが拡散モデルです
ランダムなノイズから認識できる画像になっていくのは
確かに夢に似ているね
17デフォルトの名無しさん
垢版 |
2025/01/24(金) 11:01:44.72ID:BC4ZbKEp
VAEから作ってんのか
なかなか真面目じゃん
2025/01/24(金) 18:06:04.80ID:AlhjyAq6
>>17
ありがとうございます
一応C++標準ライブラリとCUDA以外のライブラリは使わないつまりなので
VAEを作る前の段階として
tensorや主要なニューラルネットワークの層も自作しています
ただ、png画像の読み込みと出力はopencvを使い、グラフのプロットはgnuplotを使っています
どちらも複数のOSに対応しているので、環境構築は非常に簡単です
2025/01/24(金) 18:36:35.48ID:NBK/ONYA
ソース公開する気ないならただの日記だよ?
2025/01/24(金) 20:03:37.86ID:AlhjyAq6
ソースは完成したら公開する予定です
readme.mdはまだ書いていないのと、ライセンス関係はまだよくわからないので
今は公開できないです
2025/01/24(金) 21:58:30.76ID:5i0pdKkE
ただの統失の日記スレ
2025/01/24(金) 23:22:56.22ID:AlhjyAq6
そうですね
個人日記なら別にスレを建てる必要はないですね
お騒がせしてすいませんでした
23デフォルトの名無しさん
垢版 |
2025/04/29(火) 00:25:24.70ID:/Qf//3PH
どう?開発進んだ?
レスを投稿する

5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況