日本音響学会誌にて,慶應義塾大学の湯川 正裕先生による「非線形適応信号処理への凸解析的アプローチ 」という連載記事がある.
本記事ではそれら記事へのリンクをまとめておく. 2023年5月時点で最終回の記事は「フリー」ではないのですぐには読めないが,6月には「フリー」になるもよう.
関数解析の応用として興味深い.
拡散モデルに関する備忘録として。
大量に関連リンクを集めてもそれだけで満足してしまいがちなので、この記事では少なめで。
GitHub - heejkoo/Awesome-Diffusion-Models: A collection of resources and papers on Diffusion Models ←このリポジトリをブックマークすれば事足りる(かも)
GitHub - YangLing0818/Diffusion-Models-Papers-Survey-Taxonomy: Diffusion model papers, survey, and taxonomy ←論文が網羅的にまとまっている
PyODにおけるKernel PCAのコードは最近私がコミットしたものである。
ところで最近、PyODに以下のIssueが上がっていた。
SUODでインスタンスを複製して使うときに、すべての引数がNoneとして与えられる現象が起きているようだ。 引数がNoneになる状況は想定していなかったが、クラスのattributeを増やしてうまく対応できた。
PyOD本家にプルリクを送った。
うまくマージされることを祈る。
AIミュージックバトル!『弁財天』が配布しているスターターキットについて、PyTorch版を作成した記事を以前書いたことがあった。
その記事の段階では、Google Colabのノートブックを用意していなかったので、今回作ってみたということである。
以下のURLに置いてある。
各自のGoogle Driveにコピーして使うのがよいだろう。
AIミュージックバトル!『弁財天』 の成功を祈る。Let's ad-lib!
joblibとconcurrent.futuresを使った並列処理の実現方法についてそれぞれメモを残しておく。Pythonによる並列処理の関連記事はいくらでも見つかるのだが、個人的な備忘録ということで。
想定している状況:処理対象となるファイル数が多いので、直列で処理を動かすと時間がかかる。それを並列処理させることで、トータルでの実行時間の削減を目指す。例えば音声データ群(よくあるのは数百から数千ファイル)からの特徴量抽出を考えると、通常は音声ファイルごとに独立して抽出を行うので、並列処理に向いているというわけである。
サンプルコードの仕様:
joblibをpipでインストールしたのち、Parallel
クラスおよびdelayed
モジュールをインポートして使う。
from joblib import Parallel, delayed def your_function(file_name): """並列処理実行 Args: file_name (str): 並列処理の対象となるファイル """ # 何らかの処理 Parallel(n_jobs=4)( # job数はお好みで delayed(your_function)(_file) for _file in file_list )
delayedに関数を与えて、続いてその関数の引数を与える形である。
concurrent.futures
からProcessPoolExecutor
クラスをインポートして使う。
from concurrent.futures import ProcessPoolExecutor def your_function(file_name): """並列処理実行 Args: file_name (str): 並列処理の対象となるファイル """ # 何らかの処理 with ProcessPoolExecutor(max_workers=4) as executor: # max_workersがjob数に対応 futures = [executor.submit(your_function, _file) for _file in file_list] for future in futures: future.result()
executor.submitの第1引数が並列処理対象の関数で、以降は関数の引数を与える形である。当然、関数の引数は複数個与えてもOK。
マルチスレッド用のThreadPoolExecutor
もあるが、本記事では省略。
異常音検知に関して、まとめてリストしておく。備忘録。
ToyADMOS
MIMII