タグ

2021年7月4日のブックマーク (18件)

  • 【python】pythonでメモリ不足になったときにすること - 静かなる名辞

    最終更新:2018/11/26 はじめに pythonはLLですが、なぜかメモリを何十GBも消費するような(一般的なPCのリソースからすれば)大規模なデータ分析に広く使われています。このようなデータ分析では、往々にしてメモリ不足が生じ、それなりに配慮してプログラムを書かないとそもそもプログラムが走らない、MemoryErrorが出るといった事態が発生しがちです。 そういうときにやるべきことをつらつらと書いていきます。なお、下の方に行くほど邪悪度()が増していきます。 目次 はじめに 対策 メモリを増設する・システムのswap領域を増やす multiprocessingを使っているなら使うのをやめる、あるいはプロセス数を減らす 要らないデータはGCに回収させる リストは積極的にnumpy配列にする 疎行列型配列を使用する 32bitにする 配列処理は破壊的代入で行う numpyの機能に頼る

    【python】pythonでメモリ不足になったときにすること - 静かなる名辞
  • 8.HPSSで音楽を分離してみよう - keep learning blog(キープラーニングブログ)

    ――私には、完璧ではない音楽のつくり方がわからないんですよ。―― ヴォルフガング・アマデウス・モーツァルト HPSSで音楽を分離してみよう 音声処理の基中の基 デジタルとアナログ サンプリング デジタルデータと離散フーリエ変換 短時間フーリエ変換(STFT) 調波打楽器音分離(HPSS) 最も基的なHPSSの理論 PythonでHPSSを実装 実行結果 HPSSで音楽を分離してみよう 私には、完璧ではない仕事のやり方がわからないんですよ。なんて、一度でいいから言ってみたいですね。天才モーツァルトだから許される一言です。 さて、飽き飽きしてるとは思いますが、今回もプログラミング関連です。最近だんだん音声処理の雰囲気が分かってきて少し面白くなってきました。でもさすがに今回でいったん最後にします(書くのが大変だし読む人も退屈だから)。 keep-learning.hatenablog.jp

    8.HPSSで音楽を分離してみよう - keep learning blog(キープラーニングブログ)
    otori334
    otori334 2021/07/04
    “STFTのWindow Widthを30msecではなく200msec程度まで長くすると、今度は歌声がPercussive側に分離されて、Harmonicはコード楽器音の旋律だけになる”
  • Python: LibROSA で調波打楽器音分離 (HPSS) - Wizard Notes

    調波打楽器音分離とは? 一般的な楽曲では、様々な楽器音が含まれています。 そのため、元の楽曲信号から直接、音楽的な情報(例:コード進行)を分析するのは 計算機ではなかなか難しいです*1。 そこで、分析の前処理として、 打楽器の音と非打楽器(調波楽器)の音を分離する調波打楽器音分離 (HPSS: Hermonic/Percussive Source Seperation) *2が良く使われています。 この記事では、HPSSの概要とPython (LibROSA) のコードの解説します。 調波打楽器音分離とは? 調波打楽器音分離のアイディア アルゴリズムの設計 非負値行列因子分解+基底クラスタリング 最適化問題(行列因子分解)として解く 深層学習を使った手法 メディアンフィルタベースの手法 LibROSAにおける調波打楽器分離(HPSS)の実装 使い方 実装の詳細 librosa.effect

    Python: LibROSA で調波打楽器音分離 (HPSS) - Wizard Notes
  • 肛門コンプレッサ流体力学

    この古い増田に関して解説を加えたいと思う。 ■肛門コンプレッサーまとめ https://anond.hatelabo.jp/20201105214157 なぜ肛門に圧搾空気を入れると人は死ぬのか?直腸が破れるからである。すると出血する。 しかし一番の問題はここからで、便が腹腔内に散らばるのである。こうなると便に含まれる様々な細菌が複合的な感染症を惹き起こし腹膜炎を発症する。 これをうんぺりという医者もいるらしい。腹膜炎はペリトナイティス、うんこによるペリトナイティスだからうんぺり。お医者さん…。 速攻で洗浄しないといけないから開腹手術が必要だ。腹膜はどんどん吸収して血管に流してしまうのであっという間に全身症状になり死んでしまう。 だからエアコンプレッサ浣腸なんてアフォな事をやった場合、死亡率は4割ぐらいになる。手術が成功してこの数字。 ウエットスーツ非着用での橋からのダイブでは高圧洗浄機カ

    肛門コンプレッサ流体力学
  • Pythonで音声処理をするならlibrosaを使いましょう

    上図のようなグラフをlibrosaを使えば、簡単に表示できます。 もちろん、それ以外にもlibrosaでできることはたくさんあります。 そこで、記事ではlibrosaに関する説明とそのインストール方法を解説していきます。 記事の内容 librosaとは?librosaのインストールlibrosaの動作検証 それでは、上記に沿って解説していきます。 librosaとは? 公式サイト https://librosa.org/ librosaは音楽・オーディオ分析のためのPythonパッケージです。 音楽情報検索システムを作成するために必要な構成要素を提供します。 librosaには、次のサブモジュールが用意されています。 librosa.beatlibrosa.corelibrosa.decomposelibrosa.displaylibrosa.effectslibrosa.featur

    Pythonで音声処理をするならlibrosaを使いましょう
  • https://conference.scipy.org/proceedings/scipy2015/pdfs/brian_mcfee.pdf

    otori334
    otori334 2021/07/04
    librosa: Audio and Music Signal Analysis in Python
  • 計測コラム emm180号用

    otori334
    otori334 2021/07/04
    ヒルベルト変換と解析信号 “ヒルベルト変換を使って実信号を複素時間信号に変換することにより、瞬時振幅と瞬時位相を同時に求めることができます”
  • 矛盾許容論理 - Wikipedia

    矛盾許容論理(むじゅんきょようろんり、Paraconsistent Logic)とは、矛盾を特別な方法で扱う論理体系。また、矛盾に対して耐性のある論理を研究・構築する論理学の一分野を指す。矛盾許容型論理とも。 矛盾許容論理は1910年ごろにはすでに存在していた(原始的な形ではアリストテレスまで遡る)。しかし、矛盾許容(Paraconsistent)という用語が使われるようになったのは 1976年であり、ペルー人哲学者 Francisco Miró Quesada が最初である[1]。 定義[編集] 古典論理や直観主義論理では、矛盾からはあらゆることが導かれる。この特徴を爆発律(英語版)[2]などと呼び、形式的には次のように表される: ここで は論理的帰結関係を意味する。言葉で表すならば、「AかつAでないならば、Bである」という意味である。このBは任意である、つまり全てが自明となる。 上記の

  • ADSR - Wikipedia

    この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "ADSR" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2023年4月) ADSR は、シンセサイザー等、電子楽器の制御信号を設定する機能のひとつ。エンベロープ・ジェネレーター (Envelope Generator) によってコントロールされるパラメータで、Attack、Decay、Sustain、Releaseの頭文字である。 概要[編集] シンセサイザー(アナログシンセサイザーの場合)の3つの音声信号の機能 (VCO/VCF/VCA) は、任意の電圧で制御する事により作動する。また、ノートオン・ノートオフ(鍵盤楽器にたとえると、鍵

    ADSR - Wikipedia
  • ヒルベルト変換のデモスクリプトをPythonで書いた話 - 備忘録

    表題の通りのまさに備忘録。 音声波形をヒルベルト変換して包絡および瞬時位相を計算し、そこから元の音声波形を再構成するスクリプトをPythonで書いた話。SPTKに付属のdata.shortをwavに変換して用いた。発話内容は「青い植木鉢」である。 処理の核となるのは以下の通りである。ヒルベルト変換を計算した結果は複素数値の「解析信号」であり、絶対値を取ることで音声波形の包絡線が得られる。位相は瞬時位相と呼ばれる。これら振幅と位相の情報から元の音声波形が再構成される。 scipyのsignalパッケージを使うと上記の処理が質的に3行で済んでしまうので、scipy最高〜〜、というわけである。 import numpy as np import matplotlib.pyplot as plt import scipy.signal as signal # wave_dataは音声データ en

    ヒルベルト変換のデモスクリプトをPythonで書いた話 - 備忘録
  • Pythonでヒルベルト変換!時間波形の包絡線を求める方法 | WATLAB import Python

    振幅変調がある時間波形の変調成分を抽出するには、波形の包絡線を求める必要があります。包絡線はヒルベルト変換という数学的処理で簡単に求めることが出来ますが、ここではPythonでヒルベルト変換を使い包絡線を求める簡単なコードを紹介します。

    Pythonでヒルベルト変換!時間波形の包絡線を求める方法 | WATLAB import Python
  • Built-in Constants

    Built-in Constants¶ A small number of constants live in the built-in namespace. They are: False¶ The false value of the bool type. Assignments to False are illegal and raise a SyntaxError. True¶ The true value of the bool type. Assignments to True are illegal and raise a SyntaxError. None¶ An object frequently used to represent the absence of a value, as when default arguments are not passed to a

    Built-in Constants
  • ヤコビ行列,ヤコビアンの定義と極座標の例 | 高校数学の美しい物語

    微分係数の多変数関数バージョンであるヤコビ行列,およびヤコビアンについて解説します。具体例として,二次元・三次元極座標変換のヤコビアンを求めてみます。 状況設定 xundefined=(x1,x2,⋯ ,xn)⊤\overrightarrow{x}=(x_1,x_2,\cdots,x_n)^{\top}x=(x1​,x2​,⋯,xn​)⊤ を決めると yundefined=(y1,y2,⋯ ,ym)⊤\overrightarrow{y}=(y_1,y_2,\cdots,y_m)^{\top}y​=(y1​,y2​,⋯,ym​)⊤ が定まる状況(nnn 変数関数が mmm 個あると考えてもよい,nnn 変数の mmm 次元ベクトル値関数と考えてもよい) 各 yiy_iyi​ は xjx_jxj​ で偏微分可能 ヤコビ行列の定義 ∂yi∂xj\dfrac{\partial y_i}{\part

    ヤコビ行列,ヤコビアンの定義と極座標の例 | 高校数学の美しい物語
  • レーザー距離計の使い方と選定ポイント 【通販モノタロウ】

    屋内向けのレーザー距離計は、価格が5,000円からと安価で手に入りやすく、DIYでよく使われています。高価なものでも2万円程度で、50~70mくらいの距離が計測可能です。長距離の計測は向いていませんが、その代わりポケットにも入るコンパクトサイズのものが多くなっています。ただし、太陽光の下での計測は向いていません。 屋内または屋外のレーザー距離計に特殊機能を付けています。面積や容積が測れたり、防塵防滴モデルや、Bluetoothでのデータ転送が機能付いていたりといったモデルがあるほか、バックライト付き、測定経過がわかる3ライン表示機能も選ぶことが可能です。 ちなみに、レーザー距離計はゴルフ用として使われることもあります。 レーザー距離計の使い方 レーザー距離計の起点は、通常レーザー距離計の後ろ端となっています。しかし、先端に設定することもできますので、使用用途に合わせて切り換えましょう。 レ

    レーザー距離計の使い方と選定ポイント 【通販モノタロウ】
  • インパルス応答 - Wikipedia

    この記事は検証可能な参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方) 出典検索?: "インパルス応答" – ニュース · 書籍 · スカラー · CiNii · J-STAGE · NDL · dlib.jp · ジャパンサーチ · TWL(2022年7月) 単純な音響システムのインパルス応答の例。上から、元のインパルス、高周波をブーストした場合、低周波をブーストした場合 インパルス応答(インパルスおうとう、英語: impulse response)とは、インパルスと呼ばれる非常に短い信号を入力したときのシステムの出力である。インパルス反応とも。インパルスとは、時間的幅が無限小で高さが無限大のパルスである。実際のシステムではこのような信号は生成できないが、理想化としては有益な概念である。 LTIシステム(線形時不

    インパルス応答 - Wikipedia
  • アインシュタインの縮約表記の解読練習 | おにノート(おーにしの物理・数学ノート)

    相対論で出て来るアインシュタインの縮約表記。 初学者には2つの障害があると思います。 1つは「縮約表記されていること自体に気づきにくいこと」。 新しい記号を導入するのであれば、その記号を見つけたら「あ、あの記号だ」となるんですが、アインシュタインの縮約表記は「\(\sum\)記号を省略する」という記法なので、縮約されていること自体、初学者には気づかないことがあると思います。 これについては、1つの項の中に同じ添え字の上下セットが現れて、その添え字について \(\sum\) がついてなければ縮約が発動していると考えてください。 もうひとつは「解読に慣れていないこと」。 せっかく「ん?どうやら縮約表記っぽいぞ」と気づいても「えーと、どう読むんだっけ?」となってしまう。こちらついては、シンプルな処方箋があります。それはズバリ 1つの項の中に同じ添え字の上下セットが現れたら、その添え字についての

  • アインシュタインの縮約表記 - 大人になってからの再学習

    2つの2次元ベクトル があるとき、この2つのベクトルの内積は次のように表される。 ベクトルが3次元で であるときは、この2つのベクトルの内積は次のように表される。 書くのがめんどくさいね。 こんなの、毎回毎回書いていられないね。 和を表すΣの記号を使えば、次のように表すことができる。 少しは短くなった。でも、やっぱりΣ記号はめんどうだ。 毎回毎回、こんなの書いていられないね。 もう、こういう頻出する表現は、次のような簡単な表記方法にしちゃおうよ。 これでいいじゃん。 と言い出したのが、あの相対性理論を考え出したアインシュタイン。 なるほど、少しでも表記を簡単にして、より簡潔に物事の質に迫ろうとしたわけだ。 これを「アインシュタインの縮約表記」と言う。 「添字が同じ場合は、その添字について和を取る」というルールになっている。 例えば nの値がいくつになるかは、そのときの文脈から判断する。

  • Python, NumPyで行列の演算(逆行列、行列式、固有値など) | note.nkmk.me

    Pythonで行列の演算を行うにはNumPyを使うと便利。 Python標準のリスト型でも2次元配列(リストのリスト)を実現できるが、NumPyを使うと行列の積や逆行列、行列式、固有値などを簡単に算出できる。 NumPyには汎用的な多次元配列のクラスnumpy.ndarrayと、行列(2次元配列)に特化したクラスnumpy.matrixがある。 numpy.ndarray — NumPy v1.13 Manual numpy.matrix — NumPy v1.13 Manual ndarrayでもmatrixでも行列(2次元配列)の演算(行列の積、逆行列など)が可能だが、matrixを使ったほうがコードを簡潔に書けるようになっている。 行列の積や逆行列を頻繁に計算する場合はmatrixのほうが記述が楽かもしれないが、そうでなければ特にmatrixを使う必要はない。 なお、最大値や最小値を

    Python, NumPyで行列の演算(逆行列、行列式、固有値など) | note.nkmk.me