これはなに?
Databricks上でTensorBoardが実行できることを知ったので、Word2VecのモデルをDatabricks上で可視化するサンプルコードを残しています。
サンプルコード
コードを見て気が付いた方もいるかもしれませんが、JupyterNotebookのマジックコマンドと同様のコマンドでTensorBoardが実行できます! ロードしているモデルは以下のブログで作成してものです。 www.cloudnotes.tech
#----- # ① モデルのロード #----- # モデルの格納Path model_path = "./polka.model" model = gensim.models.Word2Vec.load(model_path) #----- # ② 可視化コンテンツの作成 #----- writer = SummaryWriter(log_dir="./logs") weights = model.wv.vectors labels = model.wv.index_to_key writer.add_embedding(torch.FloatTensor(weights), metadata=labels) #----- # ③ 可視化コンテンツの作成 #----- %load_ext tensorboard %tensorboard --port 6006 --logdir=logs --bind_all
実行結果
実行結果は、以下のような形です。コマンドの実行結果の部分にTensorBoardが埋め込まれます。ハイパーリンクがあるので、別タブとしてTensorBoardを開くことも可能です。
権限的な部分を少し確認してみましたが、Databricks ワークスペースにログインできるユーザーであれば、TensorBoardを閲覧することが可能なようです。(ノートブックの参照権限が必要かどうかは未検証。
最後に
Databricks上でTensorBoardを実行できるのは環境準備する手間が省けるのでとても便利ですね。Jupyter Labで利用できるマジックコマンドはDatabricks上で動かせるようなので、その他のツールについても調べてみようと思います。