Jupyter Notebook

Coding Platform

・Google Colab

・Kaggle Kernels

・Azure Notebooks

・Amazon Sagemaker

Jupyter Notebook

pip install numpy

pip install scipy

pip install scikit-learn

pip install matplotlib

pip install jupyter

jupyter notebook # 起動

Shift + Tab Doc確認

import pandas as pd

?pd.*delta* # API検索

マジックコマンド

%quickref # 一覧表示

%matplotlib inline

%precision 3 # 小数第3位まで表示

Google Colab

# CPUのスペック確認

!cat /proc/cpuinfo

# GPUのスペック確認

!nvidia-smi

※パフォーマンス:Tesla P100(16GB) > Tesla T4(15GB) > Tesla K80(12GB) [2020/09]

# GCSと接続

from google.colab import auth

auth.authenticate_user()

!rm /content/adc.json # reset credentials

# ColabからGCSへ

!gsutil cp sample.zip gs://bucket-sample/

# Driveと接続

from google.colab import drive

drive.mount('/content/drive')

!rm ~/.config/Google/DriveFS/ -rf # reset credentials

# DriveからColabへ

!cp /content/drive/My\ Drive/sample.zip .

!unzip sample.zip

# ColabからDriveへ

!zip -r sample.zip sample

!cp logs/sample.zip /content/drive/My\ Drive/sample.zip

# PCからColabへ

from google.colab import files

uploaded = files.upload()

# ColabからPCへ

from google.colab import files

files.download('sample.csv')

# ディレクトリを移動

import os

os.chdir('/content/drive/My Drive/sample/')

# TensorBoardの表示

%load_ext tensorboard

%tensorboard --logdir '/content/training/train'

# 実行時にimportしたファイルの再読み込み

%reload_ext autoreload

%autoreload 2

★90分セッション切れ対策

import time

import datetime

import webbrowser

# 1時間毎に任意のノートブックを開く

for i in range(12):

browse = webbrowser.get('chrome')

browse.open('<任意のノートブックのURL>')

print(i, datetime.datetime.today())

time.sleep(60*60)

★GCSのバケットにCORS設定をする方法

# cors_setting.json

[

{

"origin": ["http://example.appspot.com"],

"responseHeader": ["Content-Type"],

"method": ["GET", "HEAD", "DELETE"],

"maxAgeSeconds": 3600

}

]

# CORSを設定

gsutil cors set cors_setting.json gs://[バケット名]

# CORSを確認

gsutil cors get gs://[バケット名]

%load test.py 外部ファイルを読み込む

%load http://example.org/test.py

%run test.py 外部ファイルを実行

%who # 変数名の一覧を表示

%who int

%who DataFrame

時間計測をしたい処理

%time l = [x ** 2 for x in range(1000)] 1行の実行時間を計測

%timeit l = [x ** 2 for x in range(1000)] 自動的に何度か実行して時間を計測

セルの実行時間

%%time

...

1千回、ベスト5の平均計算時間

%timeit -n 1000 -r 5 ...