2026年03月
新着記事
最近のコメント
月別
カテゴリ
2026.03.14 16:01

とりあえず一周動作


・ホワイトデーというのか、円周率の日というのかって、毎年思ってる気がする。
・産医師異国に向こう 産後厄無く産児御社(みやしろ)に 虫さんさん闇になく 郷には早よ行くな ・・・と出てきて、もう少し先まで語呂合わせしていたのだけど、忘れたな。
・そんなところで、CNNの畳み込み、プーリングとそれぞれの逆方向も出来上がったので実行してみる。
・まずはフォワーディング
 テストデータ(8x8)=(拡張)=>24x24=>畳み込み#1=>22x22=>パディング=>24x24=>プーリング#1=>12x12=>パディング=>14x14=>畳み込み#2=>12x12=>プーリング#2=>6x6
 ときて、内部のフィルタ数はCNNはそれぞれ10個にしてみたので、出力は6x6x10=360これを、FNN(全結合)で360=>10=>2
・これを教師データと比較してバックワード
 FNN#2=>FNN#1=>CNN#2=>CNN#1
 と戻っていくわけだけど、なぜかCNN#2はちゃんと動くのにCNN#1がエラーになる。何が起きているのかと思ったら
    d_x[:,:,i:i+self.f_h,j:j+self.f_w] += np.sum(w_reshaped*curr_err, axis=1)
numpy._core._exceptions._UFuncOutputCastingError: Cannot cast ufunc 'add' output from dtype('float64') to dtype('int64') with casting rule 'same_kind'
 とか言っている。どうやら、int64で作ったところにfloat64を入れるのがよろしく無いらしい。で、改めてd_xは?と思ったら
d_x = np.zeros_like(self.indat)
 とあった。
・なるほど。入力されるデータが整数画像データだったので、気を利かせてint64で生成されてしまったのか。対策は安易にGeminiに頼ったら後ろに
 .astype(np.float64)
をつければ良いとわかって、やってみたら成功。
・さて、これで繰り返していったら学習は進むのかな?

この記事へのコメント
コメントを書く
名前

タイトル

ホームページ

コメント

パスワード(削除用)
クッキー