exoファイルを使えば、立ち絵の設定をテンプレ化して何度でも使い回せる。キャラごと・表情ごとのexoパターンを作っておけば、配置も口パクも一瞬。拡張編集にドラッグ&ドロップするだけで、作業時間が爆速短縮。
シミュレーションで実物を扱わなくても仕事ができる環境を目指す。つまり家に引きこもって外に出なくてもOKな世界。
前回までに求めた三角関数の直交性を示す公式を再確認。 ベクトルの内積によるベクトル成分抽出のイメージを説明。 三角関数の直交性を利用した三角関数成分の抽出について説明。 イメージしずらい概念だが、関数の成分を抽出できるという事実に着目すると良い。
MATLAB,Python,Scilab,Julia比較 第5章 その43【フーリエ係数⑦】
フーリエ係数を求めるプログラムを作成予定。 フーリエ係数で係数を求め、その係数を利用してフーリエ級数で波形を再現する方式。 nを大きくすることで、波形がどう変化するかがポイント。
MATLAB,Python,Scilab,Julia比較 第5章 その42【フーリエ係数⑥】
フーリエ係数を求める一般化された式のまとめ。 a0が1/2されている理由を説明。 見栄えが悪いとか、平均値として扱いたいからなど理由はある。
MATLAB,Python,Scilab,Julia比較 第5章 その41【フーリエ係数⑤】
フーリエ係数のbnを求める式の一般化。 ついでにa0を求める式も一般化。 常に1のような定数関数は畳み込み積分に於いては矩形波をイメージすると認識しやすい。
MATLAB,Python,Scilab,Julia比較 第5章 その40【フーリエ係数④】
フーリエ係数anを求める式の一般化。 流れとしては前回のa1を求める式と同じ。
MATLAB,Python,Scilab,Julia比較 第5章 その39【フーリエ係数③】
フーリエ係数を求める雰囲気を感じ取るため、係数a1のみに着目。 三角関数の直交性を利用すると、フーリエ級数の各項のほとんどが0となる。 それを使用して係数a1を求める式を導出できる。
MATLAB,Python,Scilab,Julia比較 第5章 その38【フーリエ係数②】
三角関数の直交性を利用した三角関数成分の抽出について説明。 イメージしずらい概念だが、関数の成分を抽出できるという事実に着目すると良い。
MATLAB,Python,Scilab,Julia比較 第5章 その37【フーリエ係数①】
前回までに求めた三角関数の直交性を示す公式を再確認。 ベクトルの内積によるベクトル成分抽出のイメージを説明。
三角関数の直交性をJuliaで確認してみた。 同一の関数及び角周波数の場合はπになり、それ以外は0になる。
三角関数の直交性をScilabで確認してみた。 同一の関数及び角周波数の場合はπになり、それ以外は0になる。
三角関数の直交性をPythonのNumPyで確認してみた。 同一の関数及び角周波数の場合はπになり、それ以外は0になる。
三角関数の直交性をMATLABで確認してみた。 同一の関数及び角周波数の場合はπになり、それ以外は0になる。
MATLAB,Python,Scilab,Julia比較 第5章 その36【三角関数の直交性⑪】
三角関数の直交性をJuliaで確認してみた。 同一の関数及び角周波数の場合はπになり、それ以外は0になる。
MATLAB,Python,Scilab,Julia比較 第5章 その35【三角関数の直交性⑩】
三角関数の直交性をScilabで確認してみた。 同一の関数及び角周波数の場合はπになり、それ以外は0になる。
MATLAB,Python,Scilab,Julia比較 第5章 その34【三角関数の直交性⑨】
三角関数の直交性をPythonのNumPyで確認してみた。 同一の関数及び角周波数の場合はπになり、それ以外は0になる。
MATLAB,Python,Scilab,Julia比較 第5章 その33【三角関数の直交性⑧】
三角関数の直交性をMATLABで確認してみた。 同一の関数及び角周波数の場合はπになり、それ以外は0になる。
三角関数の直交性のまとめ。 各種式を確認。 直交性具合をアニメーションで確認。 三角関数の畳み込みをプログラムでやっている予定。
cos関数同士の直交性を確認。 結果としてcos関数同士は直交していることになる。 m=nの時のcos関数の内積を求める。 分母が0になるため、極限値を利用する。 結果としてはπになる。 つまり、同じ角周波数のcos同士の内積は必ずπになる。
sin関数同士の直交性を確認。 結果としてsin関数同士は直交していることになる。 m=nの時のsin関数の内積を求める。 分母が0になるため、極限値を利用する。 結果としてはπになる。 つまり、同じ角周波数のsin同士の内積は必ずπになる。
直交性とは2つのベクトルが垂直に交わることを指す。 直交しているベクトルの内積は必ず0になる。 奇関数、偶関数の特性より、sin、cosの畳み込み積分は0となる。 畳み込み積分が0ということは内積も0になる。 内積が0ということは直交しているということになる。
重要な極限値について説明。 まずは円に接する三角形と扇形に着目する。 はさみうちの原理により1が求められる。 sinc関数について説明&MATLABでプロットしてみた。(Pythonコードも)
三角関数の加法定理の組み合わせで積和公式が導出できる。 sin,cos、cos,cos、sin,sinの積和公式を導出してみた。 積和公式をフーリエ係数に向けて変形。 α,βをαx,βxにするだけ。
三角関数の加法定理を確認。 偶関数、奇関数を利用すると、βにマイナス符号が付いた加法定理の式も導出できる。
前回までの数式パズルの力業的解法と関数の内積はほぼ同一の考え方。 関数を無限次元ベクトルを解釈すると、関数の内積は関数の積の定積分として表現される。
JDLA G検定 2021年版、2024年版シラバスを比較してみた
はじめに G検定2024年#6(2024年11月8日(金)、9日(土)実施)から新シラバスに代わるらしい。それまでのシラバスを2021年版とし、新シラバスを2024年版として比較してみた。 シラバスの入手は以下から。 G検定まとめページ ま
MATLAB,Python,Scilab,Julia比較 第5章 その32【三角関数の直交性⑦】
三角関数の直交性のまとめ。 各種式を確認。 直交性具合をアニメーションで確認。 三角関数の畳み込みをプログラムでやっている予定。
MATLAB,Python,Scilab,Julia比較 第5章 その31【三角関数の直交性⑥】
m=nの時のcos関数の内積を求める。 分母が0になるため、極限値を利用する。 結果としてはπになる。 つまり、同じ角周波数のcos同士の内積は必ずπになる。
MATLAB,Python,Scilab,Julia比較 第5章 その30【三角関数の直交性⑤】
cos関数同士の直交性を確認。 cos同士の積和公式の定積分を元に解いていく。 最終的にはsinが0になるので、内積の結果も0となる。 結果としてcos関数同士は直交していることになる。
MATLAB,Python,Scilab,Julia比較 第5章 その29【三角関数の直交性④】
m=nの時のsin関数の内積を求める。 分母が0になるため、極限値を利用する。 結果としてはπになる。 つまり、同じ角周波数のsin同士の内積は必ずπになる。
MATLAB,Python,Scilab,Julia比較 第5章 その28【三角関数の直交性③】
sin関数同士の直交性を確認。 sin同士の積和公式の定積分を元に解いていく。 最終的にはsinが0になるので、内積の結果も0となる。 結果としてsin関数同士は直交していることになる。
「ブログリーダー」を活用して、KEIさんをフォローしませんか?
exoファイルを使えば、立ち絵の設定をテンプレ化して何度でも使い回せる。キャラごと・表情ごとのexoパターンを作っておけば、配置も口パクも一瞬。拡張編集にドラッグ&ドロップするだけで、作業時間が爆速短縮。
G検定まとめ記事はこちらはじめに結構昔にG検定向けの動画で、「JDLAジェネラリスト検定(G検定)さっくり対策(究極カンペの作り方)カンペを見なくても問題が解ける自分の作り方。」というのを公開しているのだが、これに対しての問い合わせがちょく...
動画作成関連のバックナンバー用ページ。立ち絵を作ったり、動画作ったり、アイキャッチ画像作ったりなどを掲載していく。
画像認識の全体像を因果関係図で整理し、AlexNetを起点に各モデルの進化をたどる。一般物体認識から物体検出・セグメンテーション・姿勢推定まで、各カテゴリの代表モデルと技術を解説。モデル同士の構造的なつながりや技術的背景を踏まえ、因果関係をもとに体系的に理解を深めていく。
究極カンペの作り方についての問い合わせが増えている。G検定の評判を確認し、ネガティブな意見を問題提起として捉える。勉強のステージを定義し、語彙力と因果関係の把握が重要であることを説明。
フーリエ変換には角周波数を扱うものと周波数を扱うものがある。角周波数と周波数の間には角度と1回転という差があるのみ。よって、周波数に2πをかければ角周波数となる。
MATLAB,Python,Scilab,Julia比較するシリーズの第4章。第4章では分類問題で最終的にはニューラルネットワークや最適化アルゴリズムの話だった。第5章はフーリエ解析学から高速フーリエの話がメインとなる。
立ち絵の配置: PSDファイルをAviUtlに配置し、画面サイズやフレームレートを設定。のっぺらぼう化: 目と口を消して、アニメーション効果を追加。アニメーション効果: 目パチと口パクの設定を行い、リップシンクを調整。
フーリエ変換を定義。フーリエの積分公式の一部を抜き出す。逆フーリエ変換を定義。フーリエの積分公式にフーリエ変換を代入するだけ。
Δωで刻みにしたので、極限を利用して連続系へ。数式上は連続ではあるが、一般的な表現ではない。区分求積法とリーマン積分について。フーリエの積分公式を導出した。
VOICEVOXとAivisSpeechキャラと一緒に!AviUtlを使った動画作成 バックナンバーはじめに以前、AivisSpeechのAnneliというキャラの立ち絵を作成した。さらにそこに加えて、AivisSpeechのアイコン画像を...
PSDToolKitプラグインの導入の仕方を説明。PSDファイルを探してGIMPで内容を確認。GIMPで瞬き用、口パク用のレイヤー編集。
フーリエに積分公式は複素フーリエ級数と複素フーリエ係数から導出する。周期2Lの波の数を示すnを周期2πに於ける波の数である角周波数ωに変換。角周波数ωの刻みであるΔωについて説明。Δωを定義することで、離散的な係数算出が連続的な角周波数算出に近づけていっている。
区分求積法とリーマン積分について。離散と連続の分け目。フーリエの積分公式を導出した。演算したはずなのに変化しない。つまり変換、逆変換が成立することを示している。
Δωで刻みにしたので、極限を利用して連続系へ。数式上は連続ではあるが、一般的な表現ではない。よって、一般的な表現に書き換える必要がある。
角周波数ωの刻みであるΔωについて説明。Δωを定義することで、離散的な係数算出が連続的な角周波数算出に近づけていっている。
周期2Lの波の数を示すnを周期2πに於ける波の数である角周波数ωに変換。ω=nπ/Lを使用して変換するだけ。これにより少し数式がシンプルになった。
VOICEVOXとAivisSpeechキャラと一緒に!AviUtlを使った動画作成 バックナンバーはじめに以前、AivisSpeechのAnneliというキャラの立ち絵を作成した。ほぼ独自に作成したが、Anneliの画像自体はAivisS...
フーリエに積分公式は複素フーリエ級数と複素フーリエ係数から導出する。変換を想定した式に変換。複素指数関数との積と積分、総和を経由すると元に関数に戻るというイメージが重要。
AviUtlのセットアップと拡張編集Pluginの導入を行った。mp4ファイルの入力と出力の方法を説明。アニメーションgifの対応方法を説明。
各最適化アルゴリズムの依存関係を記載。 1次の勾配で勢いをつけて、2次の勾配で抑制するというのが全体を通しての共通点。 Adamが1次の勾配と2次の勾配を合わせたアルゴリズムとなる。
最適化アルゴリズムAdamについて説明。 モーメンタムとRMSpropの合わせ技。 1次の勾配と、2次の勾配の指数移動平均を使用する。
AdaDeltaについて説明。 RMSpropの拡張版に当たる。 学習率というハイパーパラメータ無しで動作する。 最終的な学習率は1近傍になるため振動しやすいらしい。
RMSpropについて説明。 AdaGradの完了版であるため、AdaGradと更新式を比較。 AdaGradでは2次の勾配の累積だったものが、2次の勾配の指数移動平均に。 これにより、極小値近辺やプラトーになっても更新を続けられる。
AdaGradについて説明。 更新式をモーメンタムと比較。 更新幅は、最初は大きく、徐々に小さくなり、最終的には学習が進まなくなる欠点を抱えている。
もう一個試す予定の最適化アルゴリズムへ至る系譜を説明予定。 プログラム化して試すのはAdamだが、それに至るアルゴリズムを数式レベルで確認。 Adam以降の最適化アルゴリズムもあるが、基本はAdamベースでクリッピングが入ってる感じ。
最適化アルゴリズムを通常の勾配降下法からモーメンタムに変えた際の差分を確認。 モーメンタムの方が学習の収束が早い。 勾配降下法で500エポックのところ100エポック。 モーメンタムの場合、初期のパラメータ移動が大き目。 これにより、大域最適化を見つける可能性が高くなる。
最適化アルゴリズム モーメンタムを用いて分類の学習をJuliaで実現。 問題無く動作。 学習の収束が通常の勾配降下法よりも比較的早い。
最適化アルゴリズム モーメンタムを用いて分類の学習をScilabで実現。 問題無く動作。 学習の収束が通常の勾配降下法よりも比較的早い。
最適化アルゴリズム モーメンタムを用いて分類の学習をPythonで実現。 問題無く動作。 学習の収束が通常の勾配降下法よりも比較的早い。
最適化アルゴリズム モーメンタムを用いて分類の学習をMATLABで実現。 問題無く動作。 学習の収束が通常の勾配降下法よりも比較的早い。
最適化アルゴリズムを通常の勾配降下法からモーメンタムに変えた際の差分を確認。 モーメンタムの方が学習の収束が早い。 勾配降下法で500エポックのところ100エポック。 モーメンタムの場合、初期のパラメータ移動が大き目。 これにより、大域最適化を見つける可能性が高くなる。
最適化アルゴリズム モーメンタムを用いて分類の学習をJuliaで実現。 問題無く動作。 学習の収束が通常の勾配降下法よりも比較的早い。
最適化アルゴリズム モーメンタムを用いて分類の学習をScilabで実現。 問題無く動作。 学習の収束が通常の勾配降下法よりも比較的早い。
最適化アルゴリズム モーメンタムを用いて分類の学習をScilabで実現。 問題無く動作。 学習の収束が通常の勾配降下法よりも比較的早い。
最適化アルゴリズム モーメンタムを用いて分類の学習をPythonで実現。 問題無く動作。 学習の収束が通常の勾配降下法よりも比較的早い。
最適化アルゴリズム モーメンタムを用いて分類の学習をMATLABで実現。 問題無く動作。 学習の収束が通常の勾配降下法よりも比較的早い。
モーメンタムを確認するプログラムの方針を確認。 以前の勾配降下法のプログラムをベースにする。 隠れ層のユニット数は4。 プログラムのフローを確認。 モーメンタム項とパラメータ更新が基本的な差分となる。
モーメンタムの更新式について確認。 指数移動平均を利用して直近の値を重視する。 モーメンタムの動作イメージについて確認。 最初は大きく更新して、最適解が近いと小さく更新。 勾配降下法で言うところの学習率が可変と同義な動きになる。
勾配降下法の更新式を確認。 勾配降下法の動作イメージを確認。 学習率が大きい場合と小さい場合で挙動が変わる。 ちょうど良い学習率を人間の手で探す。 これにより、一般的なパラメータとは異なるハイパーパラメータというカテゴリになる。