JuliaをGoogleColabで使う

設定方法
この記事は約7分で読めます。

はじめに

 今回は、GoogleColaboratory(以下、GoogleColab)上でJuliaを使う方法を紹介します。

 GoogleColabは、Googleが無料で提供しているクラウド上のサービスです。アクセスすると、すぐにPythonを使うことができます。基本的な操作はJupyterNotebookと同じで、ipynb形式のファイルに保存することができます。GoogleColabの詳細については、ここでは割愛します。

 GoogleColabは初期状態のままでは、Juliaを使うことができないので、いくつかの設定をする必要があります。JupyterNotebookと操作がほぼ同じとはいえ、Juliaを使えるようにする手順は異なります。

設定用のipynbファイルの準備

 手動では対応できない設定もあるので、設定用のipynbファイルを用意しました。

julialangjp / Julia-on-Google-Colab / jgc.ipynb (Github)

 ファイル中にはjsonで次のように記載されています。

{
   "nbformat": 4,
   "nbformat_minor": 0,
   "metadata": {
     "colab": {
       "name": "jgc.ipynb",
       "provenance": [],
       "collapsed_sections": []
     },
     "kernelspec": {
       "name": "julia-1.7",
       "display_name": "julia-1.7"
     },
     "accelerator": "GPU"
   },
   "cells": [
     {
       "cell_type": "markdown",
       "metadata": {
         "colab_type": "text"
       },
       "source": [
         "次のセルを実行します。(実行ボタンクリックか、次のセルにカーソルを置いてキーボードからShift+Enterを押下します。)\n\n",
         "『ランタイム 「julia-1.7」は認識されていません』のようなメッセージが出るかもしれませんが、無視してもらって問題ありません。"
       ]
     },
     {
       "cell_type": "code",
       "metadata": {
         "colab_type": "code",
         "colab": {}
       },
       "source": [
         "!curl -sSL \"https://julialang-s3.julialang.org/bin/linux/x64/1.7/julia-1.7.2-linux-x86_64.tar.gz\" -o julia.tar.gz\n",
         "!tar -xzf julia.tar.gz -C /usr --strip-components 1\n",
         "!rm -rf julia.tar.gz*\n",
         "!julia -e 'using Pkg; Pkg.add(\"IJulia\")'"
       ],
       "execution_count": 0,
       "outputs": []
     },
     {
       "cell_type": "markdown",
       "metadata": {
         "colab_type": "text"
       },
       "source": [
         "上記の実行成功で、Juliaの実行環境はインストールできました。\n\n",
         "しかし、GoogleColabはPythonを使用する設定のままなので、次の手順でJuliaを使用する設定に変更します。\n\n",
         "・メニューから「ランタイム」->「ランタイムのタイプを変更」をクリックします。\n\n",
         "・「ノートブックの設定」ダイアログが開くので「ランタイムのタイプ」が「julia-1.7」であることを確認して「保存」を押してください。\n\n",
         "・その後、次のセルを実行して情報が正しく表示されることを確認しましょう。(Pythonだとエラーになります。)"
       ]
     },
     {
       "cell_type": "code",
       "metadata": {
         "colab_type": "code",
         "colab": {}
       },
       "source": [
         "versioninfo()"
       ],
       "execution_count": 0,
       "outputs": []
     }
   ]
 }

この設定ファイルを使う方法は3つあります。

  • 上記のコードをコピーして自分でファイルを作成し、GoogleColabにアップロードする
  • Github上の設定ファイルを一旦自分のPCにダウンロードし、GoogleColabにアップロードする
  • Github上の設定ファイルを、直接GoogleColabにアップロードする

ipynbファイルの読み込み

 ここでは、自分のPCに設定ファイルを用意してあるものとして、そこからの読み込み方法を説明します。

GoogleColabのメニューから、[ファイル] → [ノートブックをアップロード]を選んでください

ファイル読み込みのダイアログが開くので、ファイルを指定してください。

 ファイルを指定してアップロードすると、設定ファイルが読み込まれます。

 ファイルのコメントに従って操作することで設定できます。詳しく見ていきましょう。

設定の実行

 設定ファイルには4つのセルが書かれていています。まず、先頭のセルのコメントに従って、2番目のセルを実行します。

 実行時に上記のように『ランタイム 「julia-1.7」は認識されていません。』といったメッセージが出るかもしれませんが、無視して問題ありません。

 上記の実行成功で、Juliaの実行環境はインストールできました。しかし、GoogleColabはPythonを使用する設定のままです。 次の手順でJuliaを使用する設定に変更します。

 メニューの[ランタイム] → [ランタイムのタイプを変更]を選択してください。

 [ノートブックの設定]イアログが開くので[ランタイムのタイプ]が「julia-1.7」であることを確認して「保存」を押してください。

 [ランタイムの切断]というメッセージは無視して問題ありません。

 以上で、設定は完了です。動作確認のために4番目のセルに書かれている「versioninfo()」を実行してみましょう。エラーが出なければ、Juliaが正常に動作しています。(ランタイムがPythonのままだとエラーになります。)
 下記のように出力されれば問題ないです。

Julia Version 1.7.2
Commit bf53498635 (2022-02-06 15:21 UTC)
Platform Info:
  OS: Linux (x86_64-pc-linux-gnu)
  CPU: Intel(R) Xeon(R) CPU @ 2.20GHz
  WORD_SIZE: 64
  LIBM: libopenlibm
  LLVM: libLLVM-12.0.1 (ORCJIT, broadwell)

 それでは、思う存分Juliaを使ってみましょう!

注意点

 GoogleColabはセッションが切れてしまうと環境がリセットされます。つまり、設定した情報やファイルも消えてしまいます。もちろん、ここで設定したJuliaの設定も消えてしまいます。
 すなわち、GoogleColabでJuliaを使う場合には、上記の設定をその都度実行する必要があります。

備考

 本記事は、リーディングエッジ社研究開発部ブログ中の記事「Juliaで深層学習 Vol.1」より抜粋し、加筆・修正のうえで転載しています。

コメント

タイトルとURLをコピーしました