l8l技術メモ

機械学習・深層学習・組込みとかのメモ

Google Compute Engine で tensorboard

ホストPC:Windows10

 

1. gcloud SDK をインストール

https://cloud.google.com/sdk/install に従う

2. VMインスタンス内で $ tensorboard --logdir .

3. ホストPCでポートフォワーディング

gcloud compute ssh --zone asia-northeast1-a gce-example -- -N -L 6006:localhost:6006

・参考 https://blog.amedama.jp/entry/2019/03/23/151554

・「--」 より前までのコマンドはGCPのサイトからコピペできる

・6006はtebsorboardが用いるポート

4. ホストPCで http://localhost:6006/ にアクセス

 

便利~

 

はじめはjupyterlab_tensorboardを使ってjupyterlab内からtensorboardを使おうとしたが動かず。port-forwardもできるらしいので上記を試し、うまくいった。

以上。

メモ JupyterLab から pip パッケージインストール

Google Cloud Platform に最近追加された Jupyter Notebook で pip パッケージをインストールしたい。普通に terminal から pip intall しても反映されなかった。調べたところ、JupyerLabコンソール内で以下を打てばよいとわかった。実際にうまくいったのでメモ。

```python

# Install a pip package in the current Jupyter kernel
import sys
!{sys.executable} -m pip install numpy

```

情報源:

http://jakevdp.github.io/blog/2017/12/05/installing-python-packages-from-jupyter/

メモ:

高速化のためにはバッチサイズが大きい必要がある。

学習率を下げる~=バッチサイズをあげるではあるが、少なくとも高速化の文脈では、バッチサイズを大きくした方が良い

https://openreview.net/pdf?id=B1Yy1BxCZ

 

一般に、バッチサイズが小さい方が性能が良くなる?

http://marugari2.hatenablog.jp/entry/2017/12/04/174535

https://speakerdeck.com/miyakawataku/small-batch-learning

kaggleのXXコンペへ参加してみた(2日)

- pandas力

- pytorch力

- 普段からの論文読み・実装読み・実装追試(実装力)

がないと、まず競技が始まらないことを理解しました。

 

また、kaggle notebookだけだといくら何でもつらい場面がある。一回実験を回すのに6時間かかっていたら、さすがに改善も何もない。

十分にモノが分かっていて最適なものを選べるなら、平日5*1+休日2*2 くらい実験をまわせるかもしれないが、現状の私だと週のcommit数が2くらいになり、勝負にならない。

GCPへ年貢を納める時が来たのかもしれない。

 

# 努力目標

具体的な改善プランは2つあるので、そこを完遂する

『Kaggleで勝つデータ分析の技術』を読み中

Kaggle自体はあまり興味がない(パズルの類は当面飽きているため)けど、具体例の羅列は理解の確認に役立って面白い。

読み終わったら感想を書きます。

 

----------------------------

読み終わった。全体的に丁寧にかかれている。

imbalanced なデータへのよく行われる対応や、評価指標への最適化の話は、他では聞けそうになくて参考になった。

adversarial validatoin とかもう何が何だか... という感じだけど。

メモ 複雑さの分類と、説明する際の方針

複雑さ①:説明するのに・結論を導くのに理解しないといけない物事の量が多い

⇒結論を先に見せる。リスト化や構造化して、丁寧に説明する。

複雑さ②:説明対象が概念的に難しい。数式など。  
⇒比喩や図解を試みる(正確さが犠牲にされがち)。

kaggle titanic 入門した

モチベーション:

画像のニューラルネットワークばかり普段触れていて、テーブルデータの経験が皆無だったため、何でもよいので手を動かしたかった。

 

コード:

Kaggle Notebook (Public Score 0.77511)

https://www.kaggle.com/lisosia /catboost?scriptVersionId=21225766

 

雑感: 

最近名前を聞くCatboostを使ってみた(GBDTであること以外何も理解していない)。plot=Trueつきででfitするときれいなグラフ📉がNotebookに出力される。前処理ほぼなしで突っ込めてearly stop もしてくれて重要度も出してくれて、とてもお手軽。

数値・カテゴリデータを分類回帰したいときに脳死で出せて便利。

 

 

# 追記(09/30)

参考文献

OMOTO Tsukasa “有名ライブラリと比較した LightGBM の現在"

https://alphaimpact.jp/downloads/pydata20190927.pdf