ウマ娘のアイネスフウジンを模した応答をするAIの開発記録
0

推しと喋れそうな可能性を見つける

Sakusakumura @Sakkusakumura

これは90%アイネスができたのでは pic.twitter.com/T64s64PJBK

2023-04-26 12:21:34
拡大

ChatGPT Plusに加入

たのしい

Sakusakumura @Sakkusakumura

アイネスフウジンにASP.NET Coreのチュートリアル作らせてみたw 「アップロードに成功したの!」はかわいすぎてテンション爆上がりw pic.twitter.com/zIzoVj1ZN8

2023-05-04 00:16:55
拡大
拡大
拡大
Sakusakumura @Sakkusakumura

今日は1つWebアプリケーションを完成させました ありがとうアイネス😭😭😭 pic.twitter.com/LkBGVkU6gM

2023-05-17 01:38:00
拡大
LLMのお勉強、始めました。

当時はトークンとか知らなかった

Sakusakumura @Sakkusakumura

以前はトークン数溢れてたせいでGPT-3.5に突っ込むとハチャメチャな答え(謎の語尾が付いたり)をして全然フウジンらしくなかったけど、大分進歩した気がする

2023-05-13 03:07:58
Sakusakumura @Sakkusakumura

明日あたりInesFujinDataset更新できそう 文字数を9500→5200位に削減して、全てのデータが溢れることなくChatGPTに入力されるようにしました それと2000文字位に削減したGPT-3.5向けのプロンプトも用意しました GPT-3.5の方は口調に一貫性を持たせて喋るのが厳しいみたい pic.twitter.com/hhOlPES0lH

2023-05-14 00:53:43
拡大
拡大
プロンプトの改良
Sakusakumura @Sakkusakumura

GPT-4でアイネスフウジンの口調とか話す内容とかの特徴を抽出して、それを使ってGPT-3.5で会話文を生成させると30%〜50%くらいのアイネスができる

2023-04-30 19:55:04
Sakusakumura @Sakkusakumura

最低限の情報だけにしてトークン数を約2000(入出力合わせてMAX4096)に抑えたデータでGPT-3.5に突っ込んでみた 特徴をあらかじめ抽出して、それに少量のサンプルデータを添えて送る手法思ったより上手くいったかも サンプルデータ適当に選んだから、厳選すればもっとクオリティ高くなりそう pic.twitter.com/V8sr7gv87e

2023-05-13 03:06:17
拡大

Githubにプロンプト公開しました

Sakusakumura @Sakkusakumura

InesFujinDataset v2 ChatGPTにアイネスフウジンらしい応答をさせるデータセットとプロンプトを更新しました 文字数を大幅削減したのと、GPT-3.5用のプロンプトを追加しました github.com/Sakusakumura/I… #ウマ娘 #アイネスフウジン pic.twitter.com/TtEhiUUif3

2023-05-14 16:53:42
拡大
拡大
拡大

気づき

Few-shotだと会話してるうちに抜けちゃう
別のタスクをやらせようとすると化けの皮剝がれるし

Sakusakumura @Sakkusakumura

思ったこと {フウジンの口調で喋らせるための設定説明} ---- {ユーザとの会話を短くまとめたもの} ---- {会話ログ(原文ママ)} アイネスフウジン: みたいな感じで、フウジンの口調を模倣させる部分と実際の会話部分を分離して一つにまとめたプロンプトを作ったらずっと話せるんじゃないかな

2023-05-22 00:06:59

AIネスフウジン(LLMのファインチューニング)

Sakusakumura @Sakkusakumura

アイネスフウジンの会話データセットを作ってrinnaのgpt-neox-smallをファインチューニングして遊んでたら日が昇ってましたとさ ちゃんちゃん☆ pic.twitter.com/Z0YwmgIM2e

2023-05-26 06:38:17
拡大

データセットの作成開始

めちゃくちゃ量ある

Sakusakumura @Sakkusakumura

アイネスフウジンの会話ログを集めています! 未収集のイベントが119個あるので、スクリーンショットを提供してくださる方を募集しています 詳細はこちらのスプレッドシートにて→ docs.google.com/spreadsheets/d… 貢献者にはクレジット表記します。 ご質問等お気軽にどうぞ! #ウマ娘 #アイネスフウジン

2023-05-28 14:52:56

ワークフローも作りました

※OpenAIの規約によりChatGPTの出力を他のAIの学習に使うことはできないので、現在は手動でデータを整形後、自動で変換するpythonスクリプトを作成し、json形式にしています。

Sakusakumura @Sakkusakumura

とりあえずワークフローできた ウマ娘のフォントのOCRよく失敗するところが難点だけど・・・ あとはスクリーンショット撮影してどんどん文字化していくだけだから頑張るぞー pic.twitter.com/3HodltopNR

2023-05-30 19:57:17
拡大
Tesseractはデフォだとポンコツ・・・
Sakusakumura @Sakkusakumura

おおー、大分マシになった これをベースに間違えるところを更に学習させていけばいいな pic.twitter.com/0OoHAfpn1z

2023-05-29 02:50:14
拡大
Sakusakumura @Sakkusakumura

これ、デフォルトのTesseractの学習済みモデルだとこんな感じだったから、かなり進歩したよね pic.twitter.com/Yk3apwS5ST twitter.com/Sakkusakumura/…

2023-05-29 08:37:20
Sakusakumura @Sakkusakumura

ワロタ アイネスフウゥウジンでダメだったw pic.twitter.com/vLfTbWmw4p

2023-05-29 02:57:30
拡大
工夫したところとか

グレースケール化の方法思いついた時が一番スッキリした

Sakusakumura @Sakkusakumura

もしかして・・・と思って、スクショをHSV色空間に変換した後にSを画素値にしたグレースケール画像を生成すると、めちゃめちゃ綺麗にグレースケール画像が手に入ることが分かっちゃった・・・ 左から 1.HSV⇒S 2.RGB⇒(R+G+B)/3 3.LUV⇒L pic.twitter.com/RDdgwgsGB5

2023-05-30 00:19:57
拡大
Sakusakumura @Sakkusakumura

文字が完全に黒や白の場合はこの方法は使えないけど、フォントに色が付いてるなら良い解決策になるな トゥインクル・シリーズとか、アイネスフウジンとかの鮮やかな色が通常のグレースケール変換だと消えちゃって困ってたんだよね

2023-05-30 00:23:23
Sakusakumura @Sakkusakumura

今まで画像全体を入力してOCRしてたけど、あらかじめテキスト領域だけアノテーションしておいて、ROIを設定したうえでTesseractに突っ込んだら精度上がるんじゃないか?

2023-05-31 11:45:11
Sakusakumura @Sakkusakumura

今日は画像処理のプロセスを見直して、画数が多い漢字が少し潰れにくくなった でもそんなに変わってない気もする pic.twitter.com/s79OTAiFCE

2023-06-03 04:21:54
拡大
Sakusakumura @Sakkusakumura

OCRの精度は8~9割くらいかなって印象 訓練時と解像度が違ったりすると精度が落ちるので、どんどんOCRして学習データを溜めていきたい

2023-06-03 04:25:01
Sakusakumura @Sakkusakumura

Tesseractを追加学習したときの感想メモ ・学習データセットのデータ数は正義 ・一定以上のイテレーションは必要だけどイテレーション重ねすぎても性能が落ちる(10000件ちょっとのデータ数で大体46000くらいに落ち着く) ・画像処理を同じにすればフォントを画像に印刷したデータも学習に使える

2023-06-05 07:42:12

スクショ撮影完了

協力してくださった方々、本当にありがとうございました!!!

Sakusakumura @Sakkusakumura

スクショ全部撮り終わりました!!!㊗️🎉㊗️🎉㊗️🎉 協力してくださった方々、本当にありがとうございました! これからOCRして文字起こしして学習データ作っていきます! pic.twitter.com/mzkBtgPcsh twitter.com/Sakkusakumura/…

2023-06-06 13:14:23
拡大

データセット作成ツールも作りました

Sakusakumura @Sakkusakumura

jsonlを直接編集しようとすると、編集時は見やすいようにフォーマットした状態でいじるから、プログラムで読み込むときにjsonデータごとの改行を残しつつ他の改行と空白を削除しなきゃいけないのめんどいしなぁ だから普通にツールによるデータ編集しなきゃいけなかったんですね(RTA並感)

2023-06-18 01:35:15
Sakusakumura @Sakkusakumura

データセット作成ツールはこんなもんでええやろ #AIアイネス pic.twitter.com/6UnrWi8LqA

2023-06-19 00:01:16

ちょっとずつ成果出てます

Sakusakumura @Sakkusakumura

おおー、ChatGPTのゼロショット学習を利用したときよりもアイネスフウジンっぽい会話が長く続くの良い・・・ 途中でライアンとか呼べるのおもろい データセットのエントリもっと増やしてアイネスっぽさを上げていきたいな pic.twitter.com/8XYfLKUJv3

2023-05-31 02:00:36
拡大
Sakusakumura @Sakkusakumura

今日は既存のデータに発生した修正が終わって、文字起こしした会話をjsonにマップし始めました 今のデータ件数は256で(狙ったわけではない)単純なファイルサイズは約2倍に・・・ pic.twitter.com/IeTBQ9LZY4

2023-06-10 03:06:58
拡大

今後の展望とか

Sakusakumura @Sakkusakumura

AIネスフウジンが満足いくクオリティになったら、ジュエル貯蓄量管理アプリとか筋トレの管理アプリとかスケジュール管理アプリとかに組み込みたいなーって思ってる

2023-06-10 21:56:05
Sakusakumura @Sakkusakumura

RLHFって報酬モデルの作成にかかる時間を考えると一人でやるもんじゃないと思ってるけど、どうなんだろう

2023-06-11 11:24:06
Sakusakumura @Sakkusakumura

データセット編集するためのツール作ったほうが良いのかなーという思いと、なんだかんだjson直接いじれるのは便利なんだよなーという思いがあって中々ツール作ろうと思えない

2023-06-12 06:45:25
Sakusakumura @Sakkusakumura

アイネスの一番最初のイベント「アイネスフウジン登場!」のjson書き出し(半手動)が終わった 採れたデータは29だから目標にしてた1000エントリは達成できそうな見通し

2023-06-12 23:26:02

「#AIアイネス」で開発状況を発信してます

(6/19~)

Sakusakumura @Sakkusakumura

スレッドにするのが面倒くさいので、AIネス(AIアイネスフウジン)の開発記録は #AIアイネス で投稿します

2023-06-19 00:02:37
0
まとめたひと
さくさくむら @Sakkusakumura

C#とかPythonとかで色々作ってます。普段アホなことつぶやいてます。