整理がてら自分のPython開発環境のメモ
用途
- Deep learning / 画像処理の開発
- リモートセンシング
方針
- なるべく楽に導入
- 管理は最低限出来れば良い
- コードを楽に書ける
- 補完やフォーマットなど
OS: Ubuntu 18.04
- ライブラリなどの導入がWindowsに比べて楽
- 最近はそうでもないけど、Ubuntuじゃないと動かないものもあったので
環境管理: Anaconda
- 機械学習で必要なのが一通りインストールされる + 最低限の環境管理が出来るため
- 主なライブラリは以下
- numpyとかAnacondaについてくるのは省く
- geopandasはないとやってられない
# Deep learning用
pytorch
torchvision
tensorboard
# 画像処理用
opencv
# リモートセンシング用
gdal
qgis
geopandas
エディタ: VSCode
- Extensionの充実
- Remote Development
- リモートサーバ上(GPUサーバ)で開発しているため
- Extensionがリモート先でも使えるのがよい
- ms-python
- Microsoft公式Extension
- イライラしない程度に補完してくれる
- Bracket Pair Colorizer
- 対応する括弧の色付け
- Remote Development
- LinterやFormatterの設定が楽
- notebookファイル編集が出来る
Linter: Flake8
- 厳しすぎず緩すぎずといった感じ
-
max-line-length = 120, max-complexity = 10
で使用
Formatter: yapf
- Format後の感じが一番しっくり来たので
- Flake8と同じく
column_limit = 120
で使用
おわりに
- albumentationsとか便利系も今後は入れていきたい
- 他に良さげなものがあれば教えていただけるとありがたいです