スクリーンリーダー利用者のためのデータサイエンス入門

Google Colaboratory入門

これまでの説明で、WindowsとNVDAの基本操作や、Webサイトの閲覧についてご理解いただけたと思います。 ここからは、本章の到達点でもある「Google Colaboratory」を使ってみることにします。

Google Colaboratoryとは

Google Colaboratory(Google Colab、Colabなどと略されることが多いようです)は、プログラミング言語「Python(パイソン)」を動かすための環境の1つです。

通常、pythonを使おうとすると、

  1. パソコンに「python」を組み込む
  2. 初期設定をする
  3. プログラムを作成する
  4. 「コマンドプロンプト」からプログラムを実行する

など、非常に複雑な手順が必要です。 とくに、初期設定をするときや、「コマンドプロンプト」を使うときには、知っておかなければいけないことが多くあり、それらを勉強するだけでも時間がかかります。

一方、Colabはブラウザで動作するため、どんなパソコンからも手軽に使用できます。 また、本コンテンツの後半で学習する、データ分析などに活用できるツールが、最初から準備されています。

しかし、NVDAでColabを使うためには、ある程度の慣れが必要です。 そこで、プログラミングの準備の最終段階として、NVDAとキーボードでColabを操作して、雰囲気をつかんでいただきます。

Colabで使われる主な用語

最初に、Colabで用いられる主な用語や概念について説明します。

ノートブック

Colabを使って作成するデータは、「ノートブック」と呼ばれます。 つまり、「ノートブックを保存する」、「既存のノートブックを開く」というような作業を行うことになります。

他のアプリで例えるならば、Microsoft Wordの「文書」、Microsoft Excelの「ワークブック」」のようなものです。 なお、これらの用語が理解できなくても、とくに問題はありません。 「Colabを使ってノートブックを作るのだ」ということがわかれば十分です。

ノートブックには、

の両方を含めることができます。 また、これらを複数個組み合わせることもできます。

つまり、

といった一連のデータを、1つのノートブックに格納することができるのです。

セル

先ほど、ノートブックにはいろいろなデータを格納できると説明しました。 その、個々のデータを「セル」という単位で管理しています。

セル(cell)とは、英語で「小部屋」や「細胞」という意味です。 点字を使っている皆さんは、点字1文字を「マス」と呼ぶことがあると思いますが、これも「セル」と言い換えることができます。

Colabのセルには、

があり、それぞれ使い道が決まっています。 自分が書きたい内容に応じて、どちらのセルを使うかが決まってきます。

pythonのプログラムを書くためのセルは、コードセルといい、書いたプログラムを「実行する」機能を持っています。 そして、もっともよく使用するのが「pythonのプログラムを書くためのセル」です。

一方、テキスト(人が読む普通の文書)を書くためのセルは、テキストセルといい、文書を編集したり、文書の中に画像を挿入したりといった機能を持っています。 使用する機会はそれほど多くありませんが、このようなセルがあるということと、最低限の操作(後述)は覚えておきましょう。

Colabの操作開始に当たって

これまでに、NVDAには「ブラウズモード」と「フォーカスモード」があることを学びました。 Colabを操作するときは、基本的に「フォーカスモード」を使います。 ページを開いた直後、NVDAは自動的にブラウズモードに切り替わってしまいます。 そのため、ページの読み込みが終わったら、すぐにCtrlキーで読み上げを止めて、NVDA+Spaceを押してフォーカスモードに切り替えましょう。 これからの説明では、フォーカスモードになっていることを前提に話を進めます。

Colabに触れてみよう

それでは早速、Colabを触ってみましょう。

Google Colaboratoryのページを開くと、自動的に「Colaboratory へようこそ」というノートブックが開きます。 これは、Colabの紹介ページのようなものです。

このページは、ブラウズモードである程度内容が読めるのですが、それではColabの練習にならないので、あえてフォーカスモードで少し使ってみることにしましょう。

セルの間を移動する

まずは、ノートブックの構成要素であるセルを順番に確認してみます。 ページを読み込んだ直後の状態で、下矢印キーを1度押してみてください。

以下、想定される読み上げないようを記載しています。 ただし、NVDA導入の箇所にも記載していた、本コンテンツ用に用意したNVDAアドオンを導入している場合、 だいぶ省略された内容が読み上げられるかと思いますので、留意してください。

セルを上に移動 Ctrl+M K セルを下に移動 Ctrl+M J セルにリンク 編集 タブのミラーセル セルの削除 Ctrl+M D その他のセル操作 このセクション ヘッダーの下の子セル 4 件 を折りたたむ(<Shift> キーを押すと、兄弟セクションも折りたたまれます) はじめに ご覧になっているこのドキュメントは静的なウェブページではなく、Colab ノートブックという、コードを記述して実行できるインタラクティブな環境です。 たとえば次のコードセルには、値を計算して変数に保存し、結果を出力する短い Python スクリプトが記述されています。 セクション

では、この状態で上矢印キーを押してみましょう。

セルを上に移動 Ctrl+M K セルを下に移動 Ctrl+M J セルにリンク 編集 タブのミラーセル セルの削除 Ctrl+M D その他のセル操作 Colaboratory logo Colaboratory とは Colaboratory(略称: Colab)は、ブラウザから Python を記述、実行できるサービスです。次の特長を備えています。 環境構築が不要 GPU への無料アクセス 簡単に共有 Colab は、学生からデータ サイエンティスト、AI リサーチャーまで、皆さんの作業を効率化します。詳しくは、Colab の紹介動画をご覧ください。下のリンクからすぐに使ってみることもできます。 セクション

NVDAアドオンを導入していない場合、読み上げが長すぎて、途中で嫌になったかもしれません。 しかし、我慢してずっと聞いていると、「ご覧になっているこのドキュメントは静的なウェブページではなく」など、理解できそうな読み上げが聞こえてきます。

実は、今の時点で、上下矢印キーは「セルの間を移動する」ためのキーとして使われています。 そして、読み上げをずっと聞いていると、現在選択されているセルに書かれた内容を読み始めます。

先ほど読み上げさせた2つのセルは、テキスト(人が読む普通の文書)を書くための、テキストセルでした。 そのことを意識しながら、もう1度下矢印キー、上矢印キーと順番に押して、読み上げを聞いてみてください。

上にある「Colaboratory とは」と書かれたセルは、このノートブックの先頭、つまり上端にあります。 そして、「はじめに」と書かれたセルが続いています。

2番目のセルを読むと、「たとえば次のコードセルには、値を計算して変数に保存し、結果を出力する短い Python スクリプトが記述されています。」と書かれています。 ということは、その次、つまり3番目のセルは、pythonのプログラムを書くための、コードセルなのでしょう。

では、下矢印キーを押して、3番目のセルを見てみましょう。

セルを上に移動 Ctrl+M K セルを下に移動 Ctrl+M J セルにリンク エディタ設定を開く タブのミラーセル セルの削除 Ctrl+M D その他のセル操作 セルを実行 seconds_in_a_day = 24 * 60 * 60 seconds_in_a_day 出力を消去 実行日時: 不明な時刻 セクション

予想通り、プログラムが出てきました。 このプログラムがどういうものか、ということは、現時点では考えなくて問題ありません。

セルの中身を見てみる

以上の操作で、セルの間を移動しながら内容を読むことは可能になりました。 しかし、自分でプログラムを書こうとすると、セルの中身を編集することが当然必要です。

まず、上矢印キーを2回押して、最初のセルに移動しましょう。 続けて、Enterキーを押します。 すると、以下のように読み上げられます。 これまで同様、NVDAアドオンを導入している場合は、簡素化した内容が読み上げられます。

Editor content;Press Alt+F1 for Accessibility Options. <p><img alt="Colaboratory logo" height="45px" src="/img/colab_favicon.ico" align="left" hspace="10px" vspace="0px"></p>

「Editor content;Press Alt+F1 for Accessibility Options」以外の部分は、すべてこのセルに書かれている内容です。 この状態で上下左右のカーソルキーを押せば、文字単位や行単位で移動できます。

なお、このセルに書かれているのは、Webページを作るときに使う「HTML」と呼ばれる文書で、不等号(「ショーナリ」と「ダイナリ」)がたくさん出てきます。 このように不等号がたくさん出てくる文書形式があるということは知っておくと良いでしょう。

セルの編集(あるいは確認)が終わったら、Escapeキーを押します。 こうすることで、最初と同じように、上下矢印キーでセルの間を移動できるようになります。

せっかくなので、pythonのプログラムものぞいてみましょう。 3番目のセルに、プログラムが書かれているのでした。 セルを選択してEnterキーを押し、プログラムを読んでみてください。

セル編集時の注意点

セルを選んでEnterキーを押し、編集モードに入ったとき、注意しなければならないことが1つあります。 それは、上下矢印キーの動作です。

セルの下端で下矢印キーを押すと、1つ下のセルの、最後にカーソルがあった行に移動します。 同様に、セルの上端で上矢印キーを押すと、1つ上のセルの、最後にカーソルがあった行に移動します。 ポイントは、「最後にカーソルがあった行に移動する」ということです。

たとえば、話を簡単にするため、「上のセル」と「下のセル」という2個のセルからなるノートブックがあるとします。 このノートブック上で、以下の操作を行いました。

  1. 「上のセル」を選んでEnterキーを押す
  2. 上矢印キーを何度か押して、最初の行に移動する
  3. Escapeキーを押して、セルの編集を終了する
  4. 「下のセル」を選んでEnterキーを押す
  5. 上矢印キーを何度か押して、最初の行に移動する
  6. もう1度、上矢印キーを押す

以上の操作をすると、カーソルは「上のセル」の最初の行に移動します。 なぜなら、「下のセル」の上には「上のセル」があり、「上のセル」で最後にカーソルがあったのは最初の行だからです。

Colabを使ったプログラミングを体験しよう

それでは、実際にColabを使ってプログラミングをやってみましょう。

プログラミングの準備

プログラミングをする前に、いくつか準備をしなければなりません。 具体的には、

  1. 新しいノートブックを作る
  2. セルを追加する

という操作です。

ノートブックの作成

まずは、新しいプログラムを作って保存するためのノートブックを作る必要があります。 以下のように操作してください。

  1. セルの編集状態になっていないことを確認します。
  2. Shift+Tabを何度か押して、「メニューバー」と読み上げられる所を探します。
  3. 右矢印キーを押して「ファイル メニューボタン 折りたたみ サブメニュー」と読み上げられる場所に移動します。
  4. 下矢印キーを押して、「ノートブックを新規作成」を選択します。
  5. NVDA+Enterを押します。

なお、このメニュー項目を実行するときは、必ずNVDA+Enterを押す必要があります。

これで、「Untitled0」(末尾の数字は、状況によって異なります)という新しいノートブックができました。

セルの作成

新しいノートブックを作った直後、すでにコードセルが1つ作られており、そのセルが編集状態になっています。 しかし、新しいセルを挿入するという操作は今後も行うことがあるため、方法を理解しておきましょう。

  1. Escapeキーを押して、セルの編集を終了します。
  2. Shift+Tabを何度か押して、「コード」ボタンを探します。
  3. Spaceキーを使って、このボタンを押します。

以上の手順により、ノートブックの下端にコードセルが1つ追加され、そのセルが編集できる状態になっています。 Escapeを押してから上下矢印キーを押し、確認してみましょう。

このとき、「コード」ボタンではなく「テキスト」ボタンを押すと、テキストセルを追加できます。

なお、セルの追加には、以下のような方法もあります。

  1. いずれかのセルで、Ctrl+Mを押します。
  2. 続いて、そのセルの上に追加したい時はA、下に追加したい時はBを押します。

このとき追加されるのはコードセルです。 テキストセルを追加したかった場合は、Escapeキーを押してから、Ctrl+Mを押し、続いてMを押します。 すると、テキストセルに変換されます。 上下矢印キーを押して確認してみましょう。

プログラムの入力

コードセルを編集状態にして、以下のプログラムを入力してみましょう。

print("pythonプログラミングの世界へようこそ!")

プログラミングでは、文字の種類を意識することが重要です。 アルファベット、数字、記号などを入力することがよくありますが、必ず日本語変換をオフにして入力してください。 また、今の段階ではプログラムそのものを理解する必要はないため、上記のプログラムをコピー・アンド・ペーストしてもとくに問題はありません。

プログラムの実行と結果の確認

セルにプログラムを入力したら、このプログラムを以下のような手順で実行してみましょう。

  1. プログラムを入力したセル上で、Cntl+Enterを押して、セルを実行します。
  2. NVDA+Spaceキーを押して、ブラウズモードに切り替えます。
  3. 下矢印キーを何度か押して、「クリック可能 出力を消去 実行ユーザー: (名前) (実行した時刻) (0 分前) 実行時間: ○○ 秒」などと読み上げられる場所まで移動します。
  4. その直後に再度下矢印キーを押して、実行結果である「pythonプログラミングの世界へようこそ!」が読み上げられることを確認します。
  5. Shift+Eを押して、先程プログラムを入力していたコードセルに戻ります。
  6. NVDA+Spaceキーを押して、フォーカスモードに切り替えます。

以上が、プログラムの実行から結果の確認までの一通りの手順です。 プログラムの内容を書き換えたりして、何度か試してなれてみましょう。

エラーが起きるプログラム

これからプログラミングを行っていくと、「正しく動作しないプログラム」を作ってしまうことがあります。 「正しく動作しない」という状態には、思った通りの結果にならないものと、そもそもプログラムを実行できないものがあります。 プログラムを実行できない場合、「こういう理由でプログラムを実行できません」というメッセージが標示されます。 その標示がどのようになるのか、見てみましょう。

先ほどのプログラムを消して、以下のプログラムを入力してみましょう。

print("pythonプログラミングの世界へようこそ!"))

先ほどのプログラムに似ていますが、末尾に「括弧閉じ」が追加されています。 通常、プログラムでは、開かれていない括弧を閉じることはできませんし、開いた括弧は必ず閉じなければ鳴りません。 よって、このプログラムは、文法的に誤っていると言うことになります。

先ほどと同じ手順で実行結果を確認すると、次のように標示されます。

  File "<ipython-input-2-db5401d92260>", line 1
    print("pythonプログラミングの世界へようこそ!"))
                                   ^
SyntaxError: invalid syntax

細かな標示は状況によって変化しますが、「SyntaxError: invalid syntax」という標示を確認できれば十分です。 syntax(構文)がinvalid(正しくない)という意味です。

このように、プログラムのエラーは、英語で表示されます。 英語が苦手な方もいらっしゃると思いますが、それほど難しい単語は出てこないため、心配する必要はありません。 また、「python SyntaxError: invalid syntax」のように、エラーメッセージと「python」をキーワードにインターネット検索をすると、解説ページが表示されることもあります。

音声通知ライブラリの導入

これまでの操作で分かるように、Colabで各種実行をした際の結果というのは、実際にスクリーンリーダを操作して、読み上げてみるまでわかりません。 そこで、コードセルと結果の間を行ったり来たりしないように、実行結果の成否を音声で通知するようなライブラリがあります。 また、データサイエンスでは時間のかかる処理なども頻出しますが、処理が進んでいることを音のピッチで知らせる機能などもあります。

以下、実際に試してみましょう。 次のセルを実行してみましょう。実行が完了すると、以降、セルの実行時にはビープ音、エラー発生時にはブザー音が鳴るようになります。

!pip install -q colab-a11y-utils # ライブラリのインストール
import colab_a11y_utils # ライブラリのインポート
colab_a11y_utils.set_sound_notifications() # ライブラリの実行

試しに以下のコードを実行してみましょう。5秒後にビープ音が鳴り、実行終了が確認出来るかと思います。

import time  # 時間に関するライブラリのインポート
print("開始")
time.sleep(5)  # 5秒停止
print("終了")

実行結果は次のようになると思います。

開始
終了

次はわざとエラーを起こしてみましょう。ブザー音が聞こえますでしょうか?

plint("タイポの例")  # タイポ(誤字)によるエラーが発生する例

本章のまとめ

Google Colabは、Pythonをブラウザ上で手軽に実行できる環境で、初期設定や複雑な手順が不要であることが特徴です。 また、データ分析などに活用できるツールが最初から準備されています。 プログラミングやデータサイエンスを新たに学ぶ際は、本質的ではないような環境構築などでつまづいたりしないよう、 こういった環境を有効活用すると良いでしょう。 本章では、新しいノートブックの作成、セルの追加、プログラムの入力と実行、結果の確認など、基本的な操作方法を学ぶとともに、 音声通知ライブラリというスクリーンリーダーユーザ向けのツールについても紹介しました。 残念ながらColabのアクセシビリティは十分ではないですが、こういったツールを活用したり、操作方法を工夫することで、うまく活用していけるでしょう。


次へ

トップページへ