NeoVimで利用しているプラグインはたくさんあるのですが、個人的に激推なプラグインを紹介します。
下記の設定例の記載が特にないプラグインはLazyでプラグインを読み込んでいるだけのものになります。
おすすめの(Neo)Vimプラグイン
NeoVimで利用しているプラグインはたくさんあるのですが、個人的に激推なプラグインを紹介します。
下記の設定例の記載が特にないプラグインはLazyでプラグインを読み込んでいるだけのものになります。
いまだにちょくちょくGPU周りの設定がおかしくなることがあるのでメモ。たまに問題が起きる毎にメモが追加されます。
cudaを入れ直して再起動したら直りました。原因はよくわかりません。
aptでcudaを入れている場合は次のような感じです。
vimで開発しているとブラウザからJupyterを触るのが嫌になってきます。
前々からvimで完結するようにしたいなぁと思っていたのですが、ようやくそれがある程度実現されてきたので紹介していきます。
簡単にAPIサーバーを用意する方法としてGCPではCloud Run、AWSではApp Runnerが挙げられると思います。
今回は最近使ってみたApp Runnerについていくつかメモがてら書いていきます。
docker composeを使ってAWSのECSにアプリをデプロイ可能ですが、もしかすると役立つものがあるかもしれないのでメモを残しておきます。 作業したのが半年前なので少し情報が古いかもしれないのです。
OpenCVのVideoCaptureを使っていると、あれって思うことがありました。
動画によって、読み込まれたフレームの向きが正しかったり、90度回転していたりするんですよね。特にスマートフォンで撮影した動画で問題が起きていました。
もちろん、一般的な動画プレーヤーで再生すると正しく表示されるような動画です。
スピアマンの順位相関係数の導出のメモになります。
$n$個のデータに対する2種類の値をそれぞれ$x_1,\cdots,x_n$と$y_1,\cdots,y_n$とします。
そして、それらを何らかの方法で並べたときの順位をあらわす関数を$x_i$に対しては$R: \mathbb{R} \rightarrow \mathbb{N}$、$y_i$に対しては$S: \mathbb{R} \rightarrow \mathbb{N}$と定義します。なお、もしも同じ数が与えられたときは、適当に異なる順位をつけるとしておきます。$R$と$S$は順位をあらわす自然数に写す関数であるため全射です。
また$R(x_1),\cdots,R(x_n)$の平均を$\bar{R}$、標準偏差を$\sigma_R$、$S(y_1),\cdots,S(y_n)$の平均を$\bar{S}$、標準偏差を$\sigma_S$とします。
Deep Learning(DL)を用いたテーブルデータ向けの手法は色々提案されており、度々、精度面で勾配ブースティング法を超えたとか超えないと話題になる気がします。
テーブルデータ周りのDL手法に詳しくない身からすると実際のところどうなのかというのは謎だったので、サーベイ論文を読んでみました。
読んだ論文:Deep Neural Networks and Tabular Data: A Survey
YOLOv5は便利なライブラリですが、ONNXへモデルを変換したときにちょっと困ったことがあります。
というのも、変換後のONNXモデルにはNMSなどの後処理が含まれていないため、後処理は別途用意する必要があります。
公式ではPyTorchの関数を使ったNMSになっているため、そのまま後処理のコードをコピーしようとすれば実行環境上にONNX RuntimeとPyTorchの両方を用意しないといけません。でもせっかくONNXを使うなら、環境にPyTorchを入れたくないですよね。