python

機械学習やAI、データ分析に使用されることが多いプログラミング言語pythonに関係するカテゴリです。

numpy

numpyで高速にSoft-NMSを計算する(16倍高速?)

pythonのnumpyで高速化したSoft-NMSの実装例を紹介します。過去に紹介した実装より16倍高速化できました。Soft-NMSは物体検出AIの後処理で使用されるNMSの改良型ですが、NMSより演算量が大きい手法で高速化が重要です。
numpy

PythonのnumpyでNMSを高速に演算する(20倍高速?)

重複した矩形を統合するアルゴリズムNMS (Non-Maximum Suppression)を、numpyで高速に計算する方法を紹介します。numpyを使わずpythonリスト(list)を使用する実装と比べて約20倍に高速化できました。
python

numpyの3次元配列に2次元配列の要素を追加する4つの方法

pythonで、3次元のnumpy配列に、2次元のnumpy配列を要素として追加する方法を紹介します。リスト(list)と同じようにappendしてもうまくいきません。この記事の方法は2次元、3次元だけではなく、4次元以上の多次元の配列にも適用できます。
IoU

numpyを使って複数の矩形のIoUを一度に高速に計算する

pythonのnumpyライブラリを使って、1つの矩形と複数の矩形とのIoUを一度に高速に計算する方法を紹介します。計算時間の計測結果も記載し、1つずつIoUを計算した場合に比べてどのくらい高速化できるのか比較も行います。
python

pythonのsleepでミリ秒単位で正確にプログラムを停止する

pythonのsleep関数を使ったとき、指定した時間よりも長い間停止してしまうことはないでしょうか?sleep関数はミリ秒単位の時間で停止してくれないことがあります。この記事では、より正確に精度よくミリ秒単位で停止する方法を紹介します。
IoU

pythonでSoft-NMSを実装する(2)Soft-NMS適用例

Soft-NMS(Soft Non-Maximum Suppression)は、SSDやYOLOといった物体検出AIの後処理として使用されるNMSの改良型アルゴリズムです。以前紹介したSoft-NMSサンプルコードの適用例をこの記事で紹介します。
IoU

pythonでSoft-NMSを実装する(1)アルゴリズム実装例

pythonでSoft-NMS(Soft Non-Maximum Suppression)を実装する方法を紹介します。Soft-NMSは、SSDやYOLOといった物体検出AIの後処理で使用されるNMSの改良型アルゴリズムです。
python

pythonで乱数シード(seed)を設定する3種の方法

pythonで乱数を生成するとき、pythonのrandomや、numpyのnp.random、scipyのscipy.statsを使用することがあると思います。乱数生成の再現性で重要となる乱数シード(seed, 種)の設定方法を紹介します。
IoU

pythonで2つの矩形(長方形)のGIoUを計算する

pythonでGIoU (Generalized Intersection over Union)の計算方法を実装する方法を紹介します。GIoUは従来のIoUを一般化した概念で、IoUは物体検出AIで出力される複数の矩形の重なり具合を表した指標です。
python

pythonのmatplotlibを使ってヒストグラムを作成する

pythonのmatplotlibライブラリを使った簡単なヒストグラム生成方法を紹介します。matplotlibのヒストグラム生成メソッド"plt.hist()"の代表的な機能(オプション、引数)を扱っています。