Slide 1

Slide 1 text

Nov 21th, 2020 AI/MLエンジニアに伝えたい 令和時代のVS Code使いこなし術! - VS Code Conference Japan 2020 - 1

Slide 2

Slide 2 text

自己紹介 2 名前:         もっちゃんと呼んでください。        (本名がちょっと呼びにくいみたいなので...)   ● とある機械学習エンジニア ● 3大クラウド(Azure, AWS, GCP)の機械学習系の資格コンプリート ● 好きなサービスはAzure Machine Learning! ● 趣味は子育てです...(趣味にでもしないとやってられまry ● 旅行とか温泉が好きです Azure GCP AWS

Slide 3

Slide 3 text

● 初心者向け ● AI/MLエンジニア ● Pythonエンジニア 3 主な聴講者

Slide 4

Slide 4 text

● Jupyter Notebookについて ● Python拡張機能でJupyter Notebook! ● Azure Machine LearningのVS Code 拡張機能 ● お・ま・け 4 アジェンダ

Slide 5

Slide 5 text

本題に入る前に 5

Slide 6

Slide 6 text

● 機械学習エンジニア、データサイエンティストがよく使うWebブラウザ上で動作する ツール 6 Jupyter Notebookについて

Slide 7

Slide 7 text

● インタラクティブにPythonコードを実行でき、結果も表示できるだけではなく Markdownで文章を記述することもできる ● なので分析時の考察を交えながら作業を進められる ● 個人的には通常のPythonを用いた開発でも、素振りをJupyter Notebookで実施し たりする VS Code上で使えると便利だと思いませんか? 7 Jupyter Notebookについて

Slide 8

Slide 8 text

それVS Codeでも出来ますよ! 8

Slide 9

Slide 9 text

● Python拡張機能でVSCode 内でのJupyter Notebooksのネイティブ編集機能がリ リース なんですけど実は最近、新しい拡張機能の発表がありまして... 9 Python拡張機能でJupyter Notebook!

Slide 10

Slide 10 text

MicrosoftよりJupyter拡張機能がリリース ● さっそく使ってみました! ○ https://dev.classmethod.jp/articles/mrmo-vscode-jupyter-20201112/

Slide 11

Slide 11 text

● IntelliSenseのコード補完、メンバーリスト、メソッドのクイック情報、パラメーターヒ ントの支援が受けられる 11 Python拡張機能でJupyter Notebook!

Slide 12

Slide 12 text

● 変数エクスプローラーとデータビューアー 12 Python拡張機能でJupyter Notebook!

Slide 13

Slide 13 text

● Jupyter Notebookで出来ることはだいたい出来る ● Pythonコードのエクスポート機能 ● プロットビューア、プロットの操作およびエクスポート機能(PDF、SVG、PNG) ● コマンドモード時にショートカット使用可能 ● (Gather拡張機能との組み合わせも) 13 Python拡張機能でJupyter Notebook!

Slide 14

Slide 14 text

● さらにステップ実行機能!...(まだ実験的な導入のよう https://devblogs.microsoft.com/python/python-in-visual-studio-code-june-2020-release/ 14 Python拡張機能でJupyter Notebook!

Slide 15

Slide 15 text

続きはWebで!... ● [VS Code Python拡張] データサイエンスチュートリアルをやりながらVS Codeで のJupyter Notebookの使い方をマスターする ○ https://dev.classmethod.jp/articles/mrmo-vscode-jupyter-20200413/ 詳細はブログにまとめてます♪

Slide 16

Slide 16 text

でもちょっと待ってください! 16

Slide 17

Slide 17 text

● 実はPython拡張を入れたらすぐ使えるのかというとそうでもない ● 実行に必要なモジュールがインストールされている前提 17 Python拡張機能でJupyter Notebook!

Slide 18

Slide 18 text

Anaconda Navigater ● GUIでPythonの仮想環境の管理ができる ● クロスプラットフォーム(Mac, Windows, Linux)で同じ手順で扱える ● 様々な開発ツール(Jupyter Notebook, PyCharm, VS Codeも)と連携できる 18 Python拡張機能でJupyter Notebook!

Slide 19

Slide 19 text

続きはWebで!... ● VS Code Python拡張機能 × Anaconda Navigator でお手軽にJupyter Notebook が使える環境を手に入れる!(クロスプラットフォーム対応) ○ https://dev.classmethod.jp/articles/mrmo-vscode-jupyter-anacondanavigator-20201120/ 詳細はブログにまとめておきました!

Slide 20

Slide 20 text

もうちょっと踏み込んでいきます 20

Slide 21

Slide 21 text

● ローカル環境だけではコンピュータリソースに限界がある ● 機械学習のモデルをトレーニングするにはかなりのマシンパワーが必要 ● そこでクラウドですよ! ● Microsoft Azure では優れた機械学習のサービスが提供されている 21 Azure Machine LearningのVS Code 拡張機能

Slide 22

Slide 22 text

Azure Machine Learning! 22

Slide 23

Slide 23 text

● Azure Machine Learningとは ○ 機械学習モデルの構築、トレーニング、デプロイといったエンド ツー エンドの機械学習ライフサイク ルをサポート 23 Azure Machine LearningのVS Code 拡張機能

Slide 24

Slide 24 text

● Azure Machine Learning(以下、AML)のVS Code拡張機能が提供されている ● VS Codeの画面からAMLのリソースを管理できる 24 Azure Machine LearningのVS Code 拡張機能

Slide 25

Slide 25 text

続きはWebで!... ● Azure Machine LearningのリソースをVS Codeから手軽に管理できる拡張機能を 使ってみる ○ https://dev.classmethod.jp/articles/mrmo-vscode-azureml-20200713/ 詳細ブログあります!!

Slide 26

Slide 26 text

● ご注意 ○ クラウドなので使った分だけ課金が発生します ○ 使ってないリソースは削除をお忘れなく 26 Azure Machine LearningのVS Code 拡張機能

Slide 27

Slide 27 text

27 令和時代のAI/MLエンジニア最強環境が整いました!

Slide 28

Slide 28 text

お・ま・け 28

Slide 29

Slide 29 text

● ローカル環境にインストールしたく無いので嬉しい機能 ● よく考えると自分でリモート環境にJupyter Serverを構築するのは面倒 29 1. Python拡張はRemote Jupyter Serverに接続可能

Slide 30

Slide 30 text

30 1. Python拡張はRemote Jupyter Serverに接続可能 ● クラウドのJupyter Notebook系のサービスは使えないものか ● よく考えるとコンソール画面にログインしないと使えない... ● SageMakerは署名付きURLでログインせずにアクセスが可能 これはいけそう!?...

Slide 31

Slide 31 text

31 1. Python拡張はRemote Jupyter Serverに接続可能 ● クラウドの方はできませんでした orz… (2020.03時点 ● 他にも試した人がIssueをあげていましたが... コレそういう使い 方のやつじゃな いですから^^;

Slide 32

Slide 32 text

朗報です 32

Slide 33

Slide 33 text

33 1. Python拡張はRemote Jupyter Serverに接続可能 ● 実現できる方法が提供されてました! ● Azure Machine Learningの拡張機能と連携で!

Slide 34

Slide 34 text

余裕があったら動画を流す 34

Slide 35

Slide 35 text

● TabNineがVS Codeで使える拡張機能 ● TabNineとは ○ Deep Learningを使用したオートコンプリート機能 ○ GPT-2が使われている 35 2. TabNine For Visual Studio Code

Slide 36

Slide 36 text

● GPT-3 ○ GPT-2を上回る巨大なモデル ○ コードを書かずに自然言語で記述し、そ れに基づいてコードを出力した ○ こういったものが今後 VS Codeに搭載 されると益々便利になる予感 36 2. TabNine For Visual Studio Code

Slide 37

Slide 37 text

37 令和時代の優れた環境が整いましたね!

Slide 38

Slide 38 text

ご静聴ありがとうございました! 38