コッコ

LeetCode

947. Most Stones Removed with Same Row or Column

二次元座標平面上において、x座標またはy座標が共通の点を次々に削除していき、削除した個数を求める問題。 深さ優先探索 全ての座標から出発し、DFSを行う。 たどり着けた点を削除し、もう削除できなくなったら次のスタート地点から再度探索を行う。...
Prometheus

Grafanaのグラフで右側にY軸を表示する

Raspberry pi に温度と湿度を測れるセンサーを繋いでPrometheusに送り、Grafanaで可視化していた。 しかし、温度と湿度を同じグラフに載せると、それぞれの値が取りうる範囲が違うので、意図したスケールにならない。 そこで...
LeetCode

再帰、DP、法則性の3通りで343. Integer Break

Solution が無かったので自分の解法。 再帰 まずは具体例で考える。 n=10の場合、1と9に分けられる。9はさらに2と7、7はさらに3と4・・・というように樹形図のように分岐していく。 ある値numは、iとnum-iに分割でき、この...
Deep Learning

HuggingfaceのTokenizerのvocabを取得する

Huggingfaceを使って自然言語処理を行っていた時、モデルごとのvocabularyの違いが気になった。 vocab.txt を見れば分かるのだが、Pythonで取得したかったので調べてみた。 まずはTokenizerのリファレンスを...
Deep Learning

PytorchでエラーRuntimeError: CUDA error: Device-side assert triggered

huggingfaceでDeBERTaを使っい、Masked Language Modeling(MLM)をした時に表題のエラー。 File "/usr/local/lib/python3.8/dist-packages/transform...
Deep Learning

KerasでBERTの最終4層のhidden stateをconcatする

BERTのfine tuningをする際、最終4層のembeddingを使うと精度が向上する可能性がある。 サンプルコードはPytorchのばかりだったので、Tensorflow/Kerasでも再現してみた。 軽量モデルで実験したいのでAL...
Deep Learning

Tensorflowでコサイン類似度のレイヤーを作る

Sentence Transformerの勉強をしている時、テキストの類似度を図る指標としてコサイン類似度が出てきた。 Tensorflowにはコサイン類似度を計算するlossやmetricsはあるが、Layerは存在しない。 なので、Bi...
Python

plt.gca()を使ってpandasのplotを複数並べて楽にsubplotする

pandasでdf.plot()をすると、matplotlibを使わなくても簡単にグラフを作ることが出来る。 しかし、複数のグラフを作りたくてsubplotsしようとすると途端に面倒になり、df.plot()の引数やmatplotlibのf...
Deep Learning

Kerasのmodel.fit()で出力されるlossやmetricをloggingする

kerasでmodel.fit()すると、ターミナルに出力されるエポック毎のlossやmetricをPythonでloggingしたい。 Epoch 00001: LearningRateScheduler setting learning...
Deep Learning

Kerasのmodel.summary()をloggingする

Pythonのloggingを使ってきた時、kerasのmode.summary()をログに保存したくなった。 しかし、そのままloggerの引数に与えてもNoneが帰ってきてログに記録されなかった。 import logging logg...