python
Mathieu Blondel氏によるKernel k-meansのPythonコードがあった。 Kernel K-means. · GitHub 上記のコードはPython 2系で書かれていたので、Python 3系で動くように整理した。 Kernel K-means. · GitHub 簡単なデモンストレーションを行うnotebookは以下の通…
PyODにおけるKernel PCAのコードは最近私がコミットしたものである。 ところで最近、PyODに以下のIssueが上がっていた。 github.com SUODでインスタンスを複製して使うときに、すべての引数がNoneとして与えられる現象が起きているようだ。 引数がNoneになる…
はじめに AIミュージックバトル!『弁財天』が配布しているスターターキットについて、PyTorch版を作成した記事を以前書いたことがあった。 tam5917.hatenablog.com その記事の段階では、Google Colabのノートブックを用意していなかったので、今回作ってみ…
joblibとconcurrent.futuresを使った並列処理の実現方法についてそれぞれメモを残しておく。Pythonによる並列処理の関連記事はいくらでも見つかるのだが、個人的な備忘録ということで。 想定している状況:処理対象となるファイル数が多いので、直列で処理を…
はじめに 改善のヒント ソースコードと動かし方 特徴 おわりに はじめに Pythonで音声認識を実行するためのツールとして、最近はVOSKが少しずつ使われるようになってきた。その大きなメリットのひとつはオフラインで動作するという点である。 インストールも…
はじめに スターターキットについて スターターキットが提供するモデルの概要 実装 必要なパッケージ 実装の概要 メロディ生成実験 実験条件 実験結果 実装の舞台裏やTIPS、TensorFlow版との違いなど おわりに はじめに 最近、下記のイベントが開催されるこ…
はじめに 事前準備 実装の概要 環境音合成実験 実験条件 実験結果 実装の舞台裏など おわりに はじめに 以前、Onoma-to-Waveを実装した記事を書いたことがあった: tam5917.hatenablog.com Onoma-to-Waveとはオノマトペ(文字列)を環境音(スペクトログラム…
はじめに Pythonでチャットボットを作りたくなった。 ChatterBotが便利に使えそうだということで、インストールログを残しておく。 動作環境 Python3.9.13 macOS BigSur 11.6 インストール まず仮想環境を準備する。 python3 -m venv chatbot chatbotディレ…
はじめに Attention is All You Needという論文で「warmup & ステップ数の逆平方根で学習率を減衰」させる学習率スケジューリングが提案されたが、そのようなスケジューリングを手軽に行うスケジューラを書いたということである。 ソースコード from torch.o…
はじめに 事前準備 ソースコード 実装の概要と動かし方 補助的に作成したモジュールの概要 おまけ:訓練済みモデルのリリース 環境音合成実験 音響イベントによる条件付けなし 音響イベントによる条件付けあり 実装の舞台裏とかTIPS おわりに 参考文献 はじ…
はじめに Yoshipon氏の以下のツイートからprogressbar2の存在を知ったので、使ってみたということ。 そういえば,最近from progressbar import progressbarが大変便利であることを知った ()— Yoshipon (@yoshipon0520) May 29, 2022 インストール pipでイン…
最近Hydraを使い始めた。tutorialに従えばひとまず使えるようにはなる。 例えば以下のyamlファイルをconfig.yamlとして保存したとする(ニューラルネット的なconfig)。 model: hidden_dim: 128 latent_dim: 32 output_dim: 256 training: epoch: 100 batch_…
wav2pixというGANの派生モデルがある。 要するに、音声から顔画像を生成するgeneratorを持つGANである。 図1: wav2pixのネットワーク構成 qiita.com wav2pixの実装はgithub上に見つかるのだが、いかんせんpython2系で実装されておりイマイチだったので、 こ…
はじめに scikit-learn 1.0の新機能として、OC-SVMのオンライン版が紹介されている。 scikit-learn.org オンライン化のご利益は訓練時間の大幅な削減である。 そこで本記事では、「結局オンライン化でどれくらい速くなったの?」という疑問に答えるべく、オ…
はじめに 先の記事 tam5917.hatenablog.com にてカーネルPCAに基づく外れ値検知を実装したが、計算量が多く使い物にならない。 そこで本記事では、 tam5917.hatenablog.com の記事にある、データセットのサブサンプリングを組み込むことで計算量を減らしつつ…
はじめに カーネル主成分分析を用いて外れ値検知ができるので、それを実装してみたということ。 カーネル主成分分析を外れ値検知に使うとは? 以下の論文にすべて書いてある(説明の手抜き!)。 Heiko Hoffmann, "Kernel PCA for novelty detection," Patte…
はじめに Random Projection Outlyingnessとはなにか? depthについて outlyingnessについて Random Projection Outlyingness (RPO) 実装 PyODのインストール RPOクラス Toy example ベンチマーク 参考文献 はじめに データ分布に対する各サンプル点の外れ度…
はじめに 外れ値検知の代表的な手法であるkNN, LOF, OC-SVM, Isolation Forestについて、ベンチマークを測定するスクリプトを作成した。 各手法は外れ値検知ライブラリのPyODに実装されており、今回はOptunaによるハイパーパラメータ探索も入れている。 PyOD…
はじめに "Rapid Distance-Based Outlier Detection via Sampling" という論文の中で提案された手法を、外れ値検知のためのPythonライブラリ PyOD のフォーマットに落とし込んで、手軽に使えるように実装したということ。併せてベンチマークデータを用いて性…
ディジタル信号処理を勉強するひとは、すべからくマスターすべき演算が畳み込みである(私見)。 畳み込み演算の重要性は論を俟たない。いわゆる線形時不変システムはインパルス応答と入力信号との畳み込みにより記述される。音声のディジタル信号処理の文脈…
はじめに 2022年にあたってPythonまわりのEmacsの設定を再び整理した。 今回もLanguage serverの紹介がメイン。 Python-mode MELPAからインストール可能。 melpa.org Language server Emacsからlanguage serverを使うためにeglotを入れる。さらにPython用のl…
例えばこんな感じ(10クラス)。 params = { "objective": "multiclass", "num_class": 10, "metric": "multi_logloss", "boosting_type": "gbdt", "verbosity": -1, } 多クラス分類させるときは、"metric"に"multi_logloss"を設定する。 残りのパラメタ調整…
こんな感じ。 pysimpleguiとpyaudioとpyworldでボイスチェンジャーができた pic.twitter.com/5V8A6I9ZX4— mat (@ballforest) January 10, 2022 ソースコードは以下。スペクトルのプロット機能はおまけのようなもの。 Real-time voice conversion by using Py…
タイトルの通り。PyWORLDを使ってスペクトル包絡を抽出した。 gist.github.com 軸の表示は今後の課題。
タイトルの通り。軸の表示やラベルは今後の課題。 gist.github.com
偉大なる先人のプログラムを参考に書いてみたということ。 gist.github.com 参考: Real Time PyAudio wave plot and FFT transform plots from microphone · GitHub
2値が-1と1とした場合、こう書く。 import numpy numpy.random.choice([-1, 1], 10) # 10個生成
はじめに PySimpleGUIの応用シリーズ。スクリプトの動作の様子は以下の通り。wavファイルを音声認識して、複数話者で音声合成するデモ(最初はデフォルトのテキストで合成) pic.twitter.com/CYX5pw0qiX— mat (@ballforest) September 5, 2021 本記事の趣旨…
表題の通り。 音声認識結果に基づく天気予報の結果を音声合成によりしゃべらせた、ということ。 必要なライブラリ pipでインストール可能である。 pip3 install numpy pip3 install pyopenjtalk pip3 install speech_recognition pip3 install urllib3 pip3 …
はじめに 2021年8月22日現在、Pythonの異常検知用パッケージであるPyODにガウス混合モデル(Gaussian Mixture Model; GMM)ベースの 異常検知が実装されていなかったので、それを実装したということである。 PyODのインストール pipでインストール可能である…