フーリエ変換には角周波数を扱うものと周波数を扱うものがある。角周波数と周波数の間には角度と1回転という差があるのみ。よって、周波数に2πをかければ角周波数となる。
シミュレーションで実物を扱わなくても仕事ができる環境を目指す。つまり家に引きこもって外に出なくてもOKな世界。
G検定シラバス「人工知能をめぐる動向」の範囲の対策。難易度は中程度で、過去問、問題集で凡そフォローできる。STRIPSは1971年 Richard FikesとNils Nilcsonの自動計画AISHRDLUはCycプロジェクトから200
G検定シラバス「人工知能(AI)とは」の範囲の対策。アーサー・サミュエルの発言"明示的にプログラムしなくても学習する能力をコンピュータに与える研究分野"各ブームの終焉理由は把握しておいた方が良い。あまり、問題として出る範囲ではないが、大まか
【G検定】JDLA Deep Learning for GENERAL 2020#1 受験まとめ
2020年3月14日に実施された日本ディープラーニング協会ジェネラリスト検定(通称:G検定)に無事合格。よって、どのように勉強したのかとか感想を記載する。まずは大まかな感想。・ネット上の情報から感じた所感よりも難しかった。
前回まで出てきた各種簡易モデルを結合してみる。スロットル開度[%]を指令値として、前述の実吸気量算出、噴射量算出、空燃比補正のロジックをCloseループ化してみた。すべて吸気流用に依存。つまり、スロットル開度に依存している。
本命のインジェクタの話。空燃比や他の補正を元に算出された燃料噴射量がインジェクタより噴霧される。インジェクタには噴射量を指示するのではなく、通電時間で噴射量を決定させる。インジェクタの噴射特性はリニアではないため、ECU制御においてはマップ
前回、吸気流量から基本目標噴射量算出が実施される話をした。吸気流量はスロットルによって制御されている。そのスロットルの開度を示しているのがスロットルポジションセンサとなる。スロットルボディと一体になっている。大概2系統以上あり、センサ異常を
前回のMAF(吸気流量センサ)から求められた吸気流量を元に基本目標噴射量が算出できる。実空気流量G_a[g]/噴射量Q_f[g] = 14.7になるように調整。14.7は、理論空燃比。燃料が完全燃焼し、排ガスが最もクリーンになる空気/燃料の
エンジンに吸気される空気量を測定する重要なセンサ。空気量そのものが計測出来れば良いが実はそう簡単な話では無い。一般名称はエアフロメータ。以下のタイプが存在する。(by Wikipedia)・フラップ式(メジャリングプレート式)・熱線式(ホッ
クランク角センサとそこから算出されるエンジン回転数について記載する。4ストローク1サイクルエンジンは、1サイクルを完結させるために吸気、圧縮、燃焼、排気の4行程を要する。1サイクルはクランク2回転となる。クランクには外周に歯を持つ鉄製の円盤
O2センサの特性や空燃比フィードバックの概要を記載する。理論空燃費(燃料1[g]に対して空気14.7[g])を中心にリッチ時に1[V]、リーン字に0[V]となる。極端なO2センサモデルを描き起こすと以下のようになる。
エンジンの噴射制御全体のデータフローを記載する。大まかには以下に分かれる。・フューエルカット判定・基本目標噴射量算出・噴射補正の算出・噴射量算出・噴射時間算出エンジンにおいての燃料噴射量を算出する基本構成を示す。
自身でECU設計/検証/シミュレーションの業務を行っていると言い張っているが、実際にECUがどのような目的でどのような制御を行っているかまで把握していることは少ない。接続されているデバイスを起点にして知識掘り下げを行い、知見拡大を狙う。基本
今回は、AmazonS3からのDownload。FTP のGET相当となる。S3 仕様としてはGET object に相当。aws s3 cp s3://XXXXXXXXXXXXXXX/folder/text2.txt ./
今回は、AmazonS3へのUpload。FTP のPUT相当AWSのPUT object仕様になる。aws s3 cp ./command.txt s3://XXXXXXXXXXXXXXX/folder/command.txtPOSTメソ
「Google search consoleからの苦情」対策集
「Google search console」から定期的に「XXXXで問題が検出されました」とメールが来ることがある。それの対処集。
AmazonS3 RESTパケット解析(リスト取得 max-key付き)
前回、AmazonS3に対してリスト取得のパケットキャプチャを実施した。しかし、GET Bucket のレスポンス長はディレクトリのファイル数に依存し、必要メモリサイズが予測できないことが多い。特にIoT 関連デバイス含めた組込み系システム
Google search consoleからの苦情「構文にエラーがある構造化データが検出されました。」
Google search consoleから「構文にエラーがある構造化データが検出されました。文字列中に無効なエスケープシーケンスがあります」と苦情が来た。何を言っているのかわからん。
AmazonS3のBucket内のリスト取得をキャプチャしてみる。以下のコマンドで発行aws s3 ls s3://XXXXXXXXXXXXXXX/folder
はじめにちょっと、組み込み装置でamazon S3へのRESTアクセスの調査が必要となった。RaspberryPiなどの組み込みLinuxでやるのであれば、割と簡単かもしれないが、ガチな組み込み機器であるため、Ethernetドライバ、TC
Google search consoleからの苦情「クリック可能な要素同士が近すぎます。テキストが小さすぎて読めません。」
Google search consoleから「クリック可能な要素同士が近すぎます。テキストが小さすぎて読めません。」と苦情が来た。しかも、ほっとくと勝手に解決したりで、なんじゃこれ?
場合によって、伝達関数ブロックを使用できない局面があり得る。中間の帰還パラメータの変動。制御モデルの推定で要離散化。自前のHILS装置で要離散化。など。
Google search consoleからの苦情「送信された URL に noindex タグが追加されています。」
Google search consoleから「送信された URL に noindex タグが追加されています。」と苦情がちょいちょい来ていたので一応対処したよって話。
伝達関数「電圧→トルク→角速度→角移動量」を纏めてモデル化
フレミングの左手の法則より、磁界の中を長さlの導体に電流I_mを流すとローレンツ力Fが発生する。
フレミングの左手の法則より、磁界の中を長さ\(l\)の導体に電流\(I_m\)を流すとローレンツ力\(F\)が発生する。
ここで言う運動方程式は回転の運動方程式となる。(モーター自身は回転運動しかしないため。)以下が回転の運動方程式となる。\(T\):トルク\(\)\(J\):イナーシャ\(\)\(θ\):移動角\(\) \(T=J\frac{d^2}{dt
フレミングの右手の法則より、磁界の中を長さ\(l\)の導体が速度\(v\)で移動すると起電圧\(e\)が発生する。 \(e=Blv\)\(B\):磁束密度\(l\):磁界の中の導体長\(\)\(v\):導体の速度\(\)\(e\):起電
モーター等価回路モーターの等価回路は下の図のようになる。キルヒホッフ第二法則、オームの法則、時間領域に於けるインダクタンスにより以下の式で表現できる。 $$E_m - E_{ke} = R_m I_m + L_m \frac{d}{dt}
はじめにモーターの伝達関数そのものはググればそれなりに出てくる。しかし、どのように導出したかわからなければその後の調整、応用ができなくなる。よって、導出過程を見た上で応用を考える。全体の流れ凡その以下の流れの話となる。モーターの等価回路から
はじめに前回の「ScilabによるモーターMILS」のMatlab/Simulink版。全体構成プラントモデル制御モデルシミュレーション結果まとめ慣れているということもあるが、やはりMatlab/Simulinkの方が楽。...
はじめにscilab/xcosで以下を実施。モーターの動特性を持ったモータープラントモデルの作成モーターといってもブラシ付きDCモーターモーターの先の負荷は一旦無視。(つまり空転状態)そのモーターを制御する制御モデルの作成さらにそれらを合体
「ブログリーダー」を活用して、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による補正したものになります。
各種フーリエについてまとめてみた。いままでは級数→係数の順番でやっていたため、逆フーリエ変換→フーリエ変換の順番が自然。実際には「フーリエの積分公式を求める」ことになるが、これは逆フーリエ変換そのものである。
各種フーリエについてまとめてみた。いままでは級数→係数の順番でやっていたため、逆フーリエ変換→フーリエ変換の順番が自然。実際には「フーリエの積分公式を求める」ことになるが、これは逆フーリエ変換そのものである。
最適化アルゴリズム モーメンタムを用いて分類の学習をMATLABで実現。 問題無く動作。 学習の収束が通常の勾配降下法よりも比較的早い。
モーメンタムを確認するプログラムの方針を確認。 以前の勾配降下法のプログラムをベースにする。 隠れ層のユニット数は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ユニットにすることで出てきたもの。
多層パーセプトロンの隠れ層のユニット数を増やす。 表現力が上がるはず。 局所最適解にハマらないというより大域最適解に近い局所最適解が増えるというイメージ。 プログラム上の修正点確認。 ベクトル、行列演算ができるため修正範囲は極小。