Developer Blog AIフレームワーク 開発ブログ

2025年11月06日 2025年10月15日

今日の愚痴

ああ、しんど!

pyainoの修正はしんどいね?

重みやバイアスなどのパラメータの扱い

Neuronはpyainoの一番基本のモジュールの一つです。
このモジュールにはニューラルネットワークの基本部品が定義されています。そして、それゆえに、このモジュールはNeuronという名前にしています。
これはufiesiaも同じです。
しかし、基本部品といっても大きく分けて、物としての部品と、それをどう操作するのか、2つの要素があります。もちろんこの2つは不可分ではあります。
象徴的に言うならば、前者は重みやバイアスなどのパラメータであり、後者はy=x@w+bのいわゆるアフィン変換です。
そしてufiesiaでは、そもそも構成が単純なので、これを一体にしておくのは、理にかなっていると考えていて、それは今も変わりません。
しかし、pyainoでは、その物としてのパラメータの初期化から、更新の操作だけでも、複雑になってきているし、操作の方もまた十分に複雑です。
そして、それらを同時に読み取ろうとすると、作った私自身がしんどいと感じているのです。
そういったことから、これらを分けるのが良いだろうと、しばらく前から考えていました。
それで、秋のイベントが終わって、少しまとまった時間が取れそうなので、これに取り組み始めました。
しかしながら、Neuronはニューラルネットワークのほぼすべてに使われる基本中の基本、それだけに、pyainoのほかのモジュールにも参照されています。
気合を入れなければ、なかなか、こりゃ、いじるのが大変です。あらためて見てみると、Neuronは紙に打ち出してみても相当なページ数。
イベントの後の少しゆっくりできるはずの時間は、かくして自らに気合をいれながら、頑張る時間となってしまいました。
やっと何とかなってきたので、そろそろリリースです。というわけで、愚痴をこぼす余裕が生まれてブログとなりました。悪しからず。
因みにufiesiaは今のままで良いんだよ...と誰かに言うようなことなので、変えません。あー疲れた!

追伸:

昨日、某大学を訪問させていただきました。
その中で、pyainoを使ってGPT方式の言語モデルを作り、それを小説10作ほどでpre-trainした後に、ウェブ に公開されている「つくよみちゃん」の会話データ<注>をfine-tuneで学習させて、チャットボットを作る話をしたところ、次のカリキュラム更新の際に候補として検討していただけるというお話をいただけました。

<注>
■つくよみちゃん会話AI育成計画
https://tyc.rei-yumesaki.net/material/kaiwa-ai/
© Rei Yumesaki

ブログのご感想やAIフレームワーク「ufiesia」「pyaino」に関するお問い合わせは、
問い合わせフォームからお送りください。

お問い合わせ
  • お問い合わせ内容によりましては、ご期待に添えない場合やご回答が出来ない事が有ります。