フーリエ変換には角周波数を扱うものと周波数を扱うものがある。角周波数と周波数の間には角度と1回転という差があるのみ。よって、周波数に2πをかければ角周波数となる。
シミュレーションで実物を扱わなくても仕事ができる環境を目指す。つまり家に引きこもって外に出なくてもOKな世界。
【Ethernet】車載ネットワーク その25【lwIP①】
lwIPにBLFのEthernetFrameを入れるシムテム構成を描いた。EthernetInputが受信割り込み時に呼び出す関数。事前にUDP Socketを生成する必要がある。事前にマルチキャストグループに参加する必要がある。
【Ethernet】車載ネットワーク その24【プロトコルスタック③】
lwIPは軽量プロトコルスタック。数十[Kbyte]のRAMと約40[Kbyte]のROM。対応プロトコル多数。APIはバークレーSocketタイプ。アドオン済みアプリケーションがある。HTTP(S)とかSTMP(S)とか。
【Ethernet】車載ネットワーク その23【プロトコルスタック②】
オープンソースなプロトコルスタック3つを紹介。TINET。uIP。lwIP。lwIPを使用予定。
【Ethernet】車載ネットワーク その22【プロトコルスタック①】
プロトコルスタックの説明。組み込み向けのプロトコルスタックを使用すると何かできるかも?
【Ethernet】車載ネットワーク その21【IPフラグメント④】
IPフラグメント最後のEthernetFrameを確認。IPヘッダの継続フラグが0。残りのサイズが埋まっている。断片化位置が8byte境界になっていればよいので、パケット末端は8byte境界である必要はない。真面目に結合していくとメンドクサ
【Ethernet】車載ネットワーク その20【IPフラグメント③】
2フレーム目を確認。これもIPヘッダのフラグは継続。断片化位置の値は、その値×8が実際のデータオフセット位置となる。よって、IPフラグメントは8byte境界の仕様が暗黙的に発生する。
【Ethernet】車載ネットワーク その19【IPフラグメント②】
IPフラグメントに着目してEthernetFrameを確認。IPヘッダのフラグでIPフラグメントになるかどうかが決定する。断片化位置で全体のどこのデータかが分かるようになっている。
【Ethernet】車載ネットワーク その18【IPフラグメント①】
BLFのEthernetFrameを分解してみた。UDPだった。データ長がEthernetFrameの最大長を超えていた。つまり、IPフラグメント仕様が使われている。
【Ethernet】車載ネットワーク その17【EthernetFrame⑤】
ユニキャスト、マルチキャスト、ブロードキャストのまとめ。ノードで見た場合。MACアドレスで見た場合。IPアドレスで見た場合。
【Ethernet】車載ネットワーク その16【EthernetFrame④】
マルチキャストはMACアドレスでグループが確定する。ただし、MACアドレスはSocketLibrary等で制御できないため、IPアドレスとの紐づけルールが存在。
【Ethernet】車載ネットワーク その15【EthernetFrame③】
IPアドレスは、サブネットマスクでネットワーク部とホスト部に分かれる。ブロードキャストアドレスは2種類存在。リミテッドブロードキャストアドレス。ディレクティッドブロードキャストアドレス。
【Ethernet】車載ネットワーク その14【EthernetFrame②】
Ethernetフレーム説明。IPヘッダ説明。ブロードキャスト、マルチキャストを理解するには上記二つの理解が重要。
【Ethernet】車載ネットワーク その13【EthernetFrame①】
3つの通信方式を説明。ユニキャスト。ブロードキャスト。マルチキャスト。ブロードキャストとマルチキャストは似て非なるもの。ブロードキャストは同一ネットワーク。マルチキャストは同一グループ。
【Ethernet】車載ネットワーク その12【BLFファイル⑫】
BLFをフレーム単位にテキスト出力した。CANフレーム解説。Ethernetフレーム解説。Ethernetフレームはマルチキャストになっている。
【Ethernet】車載ネットワーク その11【BLFファイル⑪】
zlib解凍済みBLFをCANフレーム、Ethernetフレーム単位に分解するPythonコードを書いた。mObjectType:0x56 → CANフレーム。mObjectType:0x78 → Ethernetフレーム。
【Ethernet】車載ネットワーク その⑩【BLFファイル⑩】
zlib解凍済みBLFをバイナリエディタで覗いて各フレームを抽出。CANフレーム抽出。Ethernetフレームを抽出。mObjectTypeと仕様書上のオブジェクト構成はオブジェクトヘッダのサイズから雰囲気で特定。フレーム抽出&テキスト化の
【Ethernet】車載ネットワーク その9【BLFファイル⑨】
BLF内のオブジェクトの頭出しは"LOBJ"という文字列であり、先頭の方はxmlによるメタ情報が埋まっていた。よって、今回はテキストエディタで無理やりBLFを開いてみた。メタ情報はOS,CANoe,回線,使用しているデー
【Ethernet】車載ネットワーク その8【BLFファイル⑧】
BLFのオブジェクト抽出とzlib解凍のPythonコードを書いた。オブジェクト抽出に起因するコードが支配的。zlib解凍後のファイルも解析が必要。
【Ethernet】車載ネットワーク その7【BLFファイル⑦】
BLF解凍用の言語はPythonを採用zlibとか配列の制御が楽ちん。zlib解凍後のデータはまだ全貌がつかめていないので、改めて再調査予定。
【Ethernet】車載ネットワーク その6【BLFファイル⑥】
BLFの中身はzlibで圧縮されたもの。オブジェクトは"LOBJ"というシグネチャを先頭に始まるルールのもよう。
【Ethernet】車載ネットワーク その5【BLFファイル⑤】
BLFのオブジェクトヘッダを追っかけた。仕様書にないオブジェクトタイプが存在。実データ部は圧縮か、暗号化されている様子。
【Ethernet】車載ネットワーク その4【BLFファイル④】
BLFのオブジェクトヘッダの説明。CANオブジェクトの説明。Ethernetオブジェクトの説明。
【Ethernet】車載ネットワーク その3【BLFファイル③】
BLF仕様のライセンスについて確認。一言でまとめると「Vectorが一切責任を負わないことを条件に好きにしていいよ」。BLF仕様の概要説明。オブジェクトヘッダとオブジェクトの仕様がポイントとなる。
【Ethernet】車載ネットワーク その2【BLFファイル②】
BLFの仕様書はCANoeのインストールフォルダから発掘。仕様書は全部で6個。「CAN_and_General_BLF_Format.pdf」が基本的な仕様。その他は各物理層向けの追加仕様。
【Ethernet】車載ネットワーク その1【BLFファイル①】
上司からの恒例の無茶振り。BLFというVector社の独自フォーマットにEthernetの収録情報が入っているらしい。ダメ元でいろいろ調べていくことに。
主に車載ネットワークのEhternet関連についての記事。
簡単に振り返り。車両診断通信はユースケースが多岐に分かれるという特性上話もその分広くなる。反面。XCPなどは開発に特化している。本シリーズは一旦終了。
AUTOSAR-Dcmのシミュレーション実施。メッセージ最大長が変わるくらいで基本は同じ。AUTOSAR-CanTpのシミュレーション実施。リクエスト、レスポンスともにCAN-FDのルールに則った振る舞いをしていた。
AUTOSAR-CanTpのコンフィグレーションをCAN-FD用に修正。AUTOSAR-DcmのコンフィグレーションをCAN-FD用に修正。
「ブログリーダー」を活用して、KEIさんをフォローしませんか?
フーリエ変換には角周波数を扱うものと周波数を扱うものがある。角周波数と周波数の間には角度と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の対応方法を説明。
分数は割り算の別表現として理解しやすく、逆数を掛けることで計算が簡単になる。これにより、小数の掛け算や割り算の理解が深まる。一次関数の数式をグラフにすることや、グラフから数式を導くことは、データのトレンド分析や物理現象の理解に役立つ。微分は関数の変化率を求める手法であり、数値微分を使って近似的に求めることができる。これにより、物理学や経済学など多くの分野で応用可能。
Youtube動画やブログ記事のアイキャッチ用に作成した、VOCEIVX(四国めたん、ずんだもん、春日部つむぎ)、AivisSpeech(Anneli)の画像たち。Stable Diffusionで生成&少しペン入れ&GIMPによる補正したものになります。
各種フーリエについてまとめてみた。いままでは級数→係数の順番でやっていたため、逆フーリエ変換→フーリエ変換の順番が自然。実際には「フーリエの積分公式を求める」ことになるが、これは逆フーリエ変換そのものである。
各種フーリエについてまとめてみた。いままでは級数→係数の順番でやっていたため、逆フーリエ変換→フーリエ変換の順番が自然。実際には「フーリエの積分公式を求める」ことになるが、これは逆フーリエ変換そのものである。
モーメンタムを確認するプログラムの方針を確認。 以前の勾配降下法のプログラムをベースにする。 隠れ層のユニット数は4。 プログラムのフローを確認。 モーメンタム項とパラメータ更新が基本的な差分となる。
モーメンタムの更新式について確認。 指数移動平均を利用して直近の値を重視する。 モーメンタムの動作イメージについて確認。 最初は大きく更新して、最適解が近いと小さく更新。 勾配降下法で言うところの学習率が可変と同義な動きになる。
勾配降下法の更新式を確認。 勾配降下法の動作イメージを確認。 学習率が大きい場合と小さい場合で挙動が変わる。 ちょうど良い学習率を人間の手で探す。 これにより、一般的なパラメータとは異なるハイパーパラメータというカテゴリになる。
最適化アルゴリズムを取り扱う。 今回のネットワークだとさほど恩恵はないが知っていて損はない。 まずはモーメンタムから解説&実験をしていく。 最初は復習を兼ねて勾配降下法についても確認する。
モーメンタムを確認するプログラムの方針を確認。 以前の勾配降下法のプログラムをベースにする。 隠れ層のユニット数は4。 プログラムのフローを確認。 モーメンタム項とパラメータ更新が基本的な差分となる。
モーメンタムの動作イメージについて確認。 動作イメージの表現は難しい。 最初は大きく更新して、最適解が近いと小さく更新。 勾配降下法で言うところの学習率が可変と同義な動きになる。
モーメンタムの更新式について確認。 指数移動平均を利用して直近の値を重視する。 実際の指数移動平均とは異なっているので、その点は注意。
勾配降下法の動作イメージを確認。 学習率が大きい場合と小さい場合で挙動が変わる。 ちょうど良い学習率を人間の手で探す。 これにより、一般的なパラメータとは異なるハイパーパラメータというカテゴリになる。
今回改めてまじめに更新式を確認。 勾配降下法の更新式が一番シンプルなので今後の最適化アルゴリズムの更新式を見る際は比較対象になりやすい。
最適化アルゴリズムを取り扱う。 今回のネットワークだとさほど恩恵はないが知っていて損はない。 まずはモーメンタムから解説&実験をしてい 最初は復習を兼ねて勾配降下法についても確認する。
多層パーセプトロンの隠れ層のユニット数を2から4に変えたJuliaコードで分類を実施。 大きく2パターンの分類パターンがある。 やや複雑な分類パターンが4ユニットにすることで出てきたもの。
多層パーセプトロンの隠れ層のユニット数を2から4に変えたScilabコードで分類を実施。 大きく2パターンの分類パターンがある。 やや複雑な分類パターンが4ユニットにすることで出てきたもの。
多層パーセプトロンの隠れ層のユニット数を2から4に変えたPythonコードで分類を実施。 大きく2パターンの分類パタ やや複雑な分類パターンが4ユニットにすることで出てきたもの。
多層パーセプトロンの隠れ層のユニット数を2から4に変えたMATLABコードで分類を実施。 大きく2パターンの分類パターン やや複雑な分類パターンが4ユニットにすることで出てきたもの。
多層パーセプトロンの隠れ層のユニット数を2から4に変えたJuliaコードで分類を実施。 大きく2パターンの分類パターンがある。 やや複雑な分類パターンが4ユニットにすることで出てきたもの。
多層パーセプトロンの隠れ層のユニット数を2から4に変えたScilabコードで分類を実施。 大きく2パターンの分類パターンがある。 やや複雑な分類パターンが4ユニットにすることで出てきたもの。
多層パーセプトロンの隠れ層のユニット数を2から4に変えたPythonコードで分類を実施。 大きく2パターンの分類パターンがある。 やや複雑な分類パターンが4ユニットにすることで出てきたもの。
多層パーセプトロンの隠れ層のユニット数を2から4に変えたMATLABコードで分類を実施。 大きく2パターンの分類パターンがある やや複雑な分類パターンが4ユニットにすることで出てきたもの。
多層パーセプトロンの隠れ層のユニット数を増やす。 表現力が上がるはず。 局所最適解にハマらないというより大域最適解に近い局所最適解が増えるというイメージ。 プログラム上の修正点確認。 ベクトル、行列演算ができるため修正範囲は極小。
多層パーセプトロンの隠れ層のユニット数を増やす。 表現力が上がるはず。 局所最適解にハマらないというより大域最適解に近い局所最適解が増えるというイメージ。 プログラム上の修正点確認。 ベクトル、行列演算ができるため修正範囲は極小。