筆者の立ち位置と本稿の目的筆者は自動車業界でエンジニアとして働いており、日々の業務ではセンサーデータや物理モデルの解析に携わっている。特に、多項式回帰やフーリエ変換を用いた関数近似や信号処理は、実務で頻繁に活用している技術である。一方で、関...
シミュレーションで実物を扱わなくても仕事ができる環境を目指す。つまり家に引きこもって外に出なくてもOKな世界。
MATLAB,Python,Scilab,Julia比較 第3章 その109【射影変換、アフィン変換合成①】
射影変換は数式上はアフィン変換の拡張型。 射影変換とアフィン変換の数 射影変換のgとhが0の場合、アフィン変換と同一の式になる。
Juiaで射影変換の台形から長方形の変換を実施。 想定通り変換。 コードの流れと構成及び文法的にもMATLAB時のコードと一緒なため、パラメータ調整箇所も一緒。 今回は座標変換なため影響はないが色情報の持ち方が256階調ではなく、0~1に正規化されてる点に注意。
【入門】射影変換(台形→長方形)(Scilab)【数値計算】
Scilabで射影変換の台形から長方形の変換を実施。 想定通り変換。 コードの流れと構成及び文法的にもMATLAB時のコードと一緒なため、パラメータ調整箇所も一緒。
【入門】射影変換(台形→長方形)(Python)【数値計算】
Python(NumPy)で射影変換の台形から長方形の変換を実施。 想定通り変換。 コードの流れと構成はMATLAB時のコードと一緒なため、パラメータ調整箇所も一緒。
【入門】射影変換(台形→長方形)(MATLAB)【数値計算】
MATLABで射影変換の台形から長方形の変換を実施。 想定通り変換。 画像は荒くなるが想定通り。 変換元、変換先パラメータを調整するだけで実現可能。
MATLAB,Python,Scilab,Julia比較 第3章 その108【射影変換(台形→長方形)⑥】
Juiaで射影変換の台形から長方形の変換を実施。 想定通り変換。 コードの流れと構成及び文法的にもMATLAB時のコードと一緒なため、パラメータ調整箇所も一緒。 今回は座標変換なため影響はないが色情報の持ち方が256階調ではなく、0~1に正規化されてる点に注意。
MATLAB,Python,Scilab,Julia比較 第3章 その107【射影変換(台形→長方形)⑤】
Scilabで射影変換の台形から長方形の変換を実施。 想定通り変換。 コードの流れと構成及び文法的にもMATLAB時のコードと一緒なため、パラメータ調整箇所も一緒。
MATLAB,Python,Scilab,Julia比較 第3章 その106【射影変換(台形→長方形)④】
Python(NumPy)で射影変換の台形から長方形の変換を実施。 想定通り変換。 コードの流れと構成はMATLAB時のコードと一緒なため、パラメータ調整箇所も一緒。
MATLAB,Python,Scilab,Julia比較 第3章 その105【射影変換(台形→長方形)③】
MATLABで射影変換の台形から長方形の変換を実施。 想定通り変換。 画像は荒くなるが想定通り。 変換元、変換先パラメータを調整するだけで実現可能。
射影変換で台形から長方形への変換もできるはず。 台形から長方形にする際に引き延ばした部分の画像は荒くなる。 プログラム化自体は以前のものを使い回し。
MATLAB,Python,Scilab,Julia比較 第3章 その104【射影変換(台形→長方形)②】
台形から長方形にする際に引き延ばした部分の画像は荒くなる。 射影変換に限らず、引き延ばしが発生する座標変換では必ず起きる問題。 プログラム化自体は以前のものを使い回し。 変換元、変換先のパラメータが変わるくらい。
MATLAB,Python,Scilab,Julia比較 第3章 その103【射影変換(台形→長方形)①】
射影変換で長方形から台形への変換はやった。 台形から長方形へ 画像での雰囲気を確認。 パラメータでの雰囲気を確認。
Juliaで射影変換実施。 基本的にはMATLABと一緒で、射影変換のsを解決するコードを追加すればOK。
Scilabで射影変換実施。 基本的にはMATLABと一緒で、射影変換のsを解決するコードを追加すればOK。
Python(NumPy)で射影変換を実施。 アフィン変換が出来ていれば、射影変換の処理を作るのはそれほど難しくない。
MATLABで射影変換を実施。 処理はアフィン変換の時のモノを流用。 射影変換のsの部分を追加で解決しているのみ。
MATLAB,Python,Scilab,Julia比較 第3章 その102【射影変換⑯】
Juliaで射影変換実施。 基本的にはMATLABと一緒で、射影変換のsを解決するコードを追加すればOK。
DS検定(データサイエンティスト検定)リテラシーレベル問題集(過去問道場 一問一答 仮)
DS検定リテラシーレベルの問題集を設置。 現状はデータサイエンス力の領域を中心に80問ほど放り込んでいる。問題は随時追加予定。 DS検定リテラシーレベルのまとめ記事や解説動画へのリンクはこちら 動画とか 【巧妙な罠】データサイエンティスト検
MATLAB,Python,Scilab,Julia比較 第3章 その101【射影変換⑮】
Scilabで射影変換実施。 基本的にはMATLABと一緒で、射影変換のsを解決するコードを追加すればOK。
MATLAB,Python,Scilab,Julia比較 第3章 その100【射影変換⑭】
Python(NumPy)で射影変換を実施。 アフィン変換が出来ていれば、射影変換の処理を作るのはそれほど難しくない。
MATLAB,Python,Scilab,Julia比較 第3章 その99【射影変換⑬】
MATLABで射影変換を実施。 処理はアフィン変換の 射影変換のsの部分を追加で解決しているのみ。
射影変換とアフィン変換との関係性について説明。 上記を元に8個の変数を求める8個の連立方程式を作成し行列表現に。 射影逆変換について説明。
射影変換の理屈を把握するための流れを記載。 変換過程を説明。 変換過程毎の数式化、方程式化、行列化を実施。
MATLAB,Python,Scilab,Julia比較 第3章 その98【射影変換⑫】
射影逆変換について説明。 射影変換を元にx,yについて解く式に変形 sの扱いについて説明。
MATLAB,Python,Scilab,Julia比較 第3章 その97【射影変換⑪】
射影変換の処理の流れを説明。 注意点としては射影変換だとまだら模様問題が起きるので、実際には射影逆変換のアルゴリズムを使用する。
MATLAB,Python,Scilab,Julia比較 第3章 その96【射影変換⑩】
射影変換の係数を求める連立方程式を行列表現に。 これにより、逆行列を使えば一撃で係数が求まる。 あとは各係数を射影変換行列に居れればOK。
MATLAB,Python,Scilab,Julia比較 第3章 その95【射影変換⑨】
各係数を求めるために式を変形。 自明な定数は変換元座標と変換先座標。 上記を元に8個の変数を求める8個の連立方程式を作成。
MATLAB,Python,Scilab,Julia比較 第3章 その94【射影変換⑧】
射影変換とアフィン変換との関係性について 概念は異なるが、行列表現がそっくりなため、射影変換はアフィン変換の拡張と言える。 パラメータg,hを0にするとアフィン変換と全く同一の式になる。
MATLAB,Python,Scilab,Julia比較 第3章 その93【射影変換⑦】
射影変換の方程式を変形。 いい感じにキレイになった。 キレイになった方程式を行列表現へ。
MATLAB,Python,Scilab,Julia比較 第3章 その92【射影変換⑥】
射影変換を行う一連の座標変換再掲。 上記を代入やらしてまとめる。 さらに、パラメータiで全体を割って変形。 パラメータ数を9個から8個に減らす。これが後々効いてくる。
MATLAB,Python,Scilab,Julia比較 第3章 その91【射影変換⑤】
「3次元空間を地面平面に落とし込む」 高さwのパラメータが重要で、これの影響でアフィン変換ではできなかった台形の対応が可能となる。
「ブログリーダー」を活用して、KEIさんをフォローしませんか?
筆者の立ち位置と本稿の目的筆者は自動車業界でエンジニアとして働いており、日々の業務ではセンサーデータや物理モデルの解析に携わっている。特に、多項式回帰やフーリエ変換を用いた関数近似や信号処理は、実務で頻繁に活用している技術である。一方で、関...
ソフトウェア設計における因果関係の明確化。条件分岐や状態遷移の数理的な記述。並列処理やバッチ処理の自然な導入。AIモデルとの構造的な共通性の理解。
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...
ニューラルネットワークの最適化アルゴリズムAdamをJuliaにて確認。 学習率を0.001にしている都合、収束までは時間がかかる。 勾配降下法、モーメンタムでは見れなかった分類パターンが拾えた。
ニューラルネットワークの最適化アルゴリズムAdamをScilabにて確認。 学習率を0.001にしている都合、収束までは時間がかかる。 勾配降下法、モーメンタムでは見れなかった分類パターンが拾えた。
ニューラルネットワークの最適化アルゴリズムAdamをPythonにて確認。 学習率を0.001にしている都合、収束までは時間がかかる。 勾配降下法、モーメンタムでは見れなかった分類パターンが拾えた。
ニューラルネットワークの最適化アルゴリズムAdamをMATLABにて確認。 学習率を0.001にしている都合、収束までは時間がかかる。 勾配降下法、モーメンタムでは見れなかった分類パターンが拾えた。
はじめに MATLAB,Python,Scilab,Julia比較するシリーズの第4章。 第3章では画像処理、座標変換の話がメインだった。 第4章は分類問題関連の話がメインとなる。基本的には以下の流れとなる。 形式ニューロン 決定境界線の安
分類問題を扱って第4章終了。 最も原始的なニューラルネットワークをやったことでディープラーニングの基礎部分は把握できたかもしれない。 次の章はこれから考える。
Adamだけで出てくる分類結果を確認。 四角形で分類する理想的な形状。 この分類結果になる場合は、誤差関数の値が一気に跳ね上がる時。 これにより大域最適解を引き当てやすくなる。
ニューラルネットワークの最適化アルゴリズムAdamをJuliaにて確認。 学習率を0.001にしている都合、収束までは時間がかかる。 勾配降下法、モーメンタムでは見れなかった分類パターンが拾えた。
ニューラルネットワークの最適化アルゴリズムAdamをScilabにて確認。 学習率を0.001にしている都合、収束までは時間がかかる。 勾配降下法、モーメンタムでは見れなかった分類パターンが拾えた。
ニューラルネットワークの最適化アルゴリズムAdamをPythonにて確認。 学習率を0.001にしている都合、収束までは時間がかかる。 勾配降下法、モーメンタムでは見れなかった分類パターンが拾えた。
ニューラルネットワークの最適化アルゴリズムAdamをMATLABにて確認。 学習率を0.001にしている都合、収束までは時間がかかる。 勾配降下法、モーメンタムでは見れなかった分類パターンが拾えた。
各最適化アルゴリズムの依存関係を記載。 1次の勾配で勢いをつけて、2次の勾配で抑制するというのが全体を通しての共通点。 Adamの更新式を実現するためのプログラムフローを記載。 学習率は0.001とかなり小さめの値に設定。 これにより収束は遅くなる。 かわりに特殊な最適解が得られるのでそれを確認する。
AdaDeltaについて説明。 RMSpropの拡張版に当たる。 最適化アルゴリズムAdamについて説明。 モーメンタムとRMSpropの合わせ技。 1次の勾配と、2次の勾配の指数移動平均を使用する。
もう一個試す予定の最適化アルゴリズムAdamへ至る系譜を説明予定。 AdaGradについて説明。 更新式をモーメンタムと比較。 RMSpropについて説明。 AdaGradの完了版であるため、AdaGradと更新式を比較。
Adamの更新式を実現するためのプログラムフローを記載。 モーメンタムの部分をAdamに差し替えただけ。 学習率は0.001とかなり小さめの値に設定。 これにより収束は遅くなる。 かわりに特殊な最適解が得られるのでそれを確認する。
各最適化アルゴリズムの依存関係を記載。 1次の勾配で勢いをつけて、2次の勾配で抑制するというのが全体を通しての共通点。 Adamが1次の勾配と2次の勾配を合わせたアルゴリズムとなる。
最適化アルゴリズムAdamについて説明。 モーメンタムとRMSpropの合わせ技。 1次の勾配と、2次の勾配の指数移動平均を使用する。
AdaDeltaについて説明。 RMSpropの拡張版に当たる。 学習率というハイパーパラメータ無しで動作する。 最終的な学習率は1近傍になるため振動しやすいらしい。
RMSpropについて説明。 AdaGradの完了版であるため、AdaGradと更新式を比較。 AdaGradでは2次の勾配の累積だったものが、2次の勾配の指数移動平均に。 これにより、極小値近辺やプラトーになっても更新を続けられる。
AdaGradについて説明。 更新式をモーメンタムと比較。 更新幅は、最初は大きく、徐々に小さくなり、最終的には学習が進まなくなる欠点を抱えている。