福田 祐樹

Pythonをこれから始めたい? そんな君こそAnaconda!

「Pythonをこれから始めたい!」という人にとって,最初の難関は環境の導入であると考える.「Webサイトに記載のとおりにインストールしたら知らない間に64bitではなく32bit版のPythonがインストールされた」という経験もあるだろう.この発表では,「プログラミングスキルの高くない情報系の大学生」の視点から,PythonのコーディングにAnacondaを用いることによる利点を,「速度」「パッケージの多さ」「コーディング補助」の3つに焦点を当てて列挙する.それによって,Python初心者またはPython以外の言語の知識の少ないプログラマにとってストレスのないコーディング環境とPythonicなプログラムの記述を両立できる手段として,Anacondaの導入を検討材料の一つとして聴講者に提案するものである.

詳しい内容説明

 「Pythonをこれから始めたい!」という人にとって,最初の難関はPython環境の導入であると考える.例えば,64bitのWindowsにPythonをインストールする場合,「64bitのPythonを導入するはずが32bitのPythonがインストールされた」といった事例や,「自分がコーディングしたい内容のために必要なパッケージのインストールが多くて時間がかかる」「正しくインストールしたはずなのにpipが使えない」という事例を経験したことのある人も少なからずいるかと思う.本発表では,そういった「Pythonを始めようとしたけど,導入で躓いた」という人や,「本家のPython以外の環境の利点は何か」と疑問に思っている人のために,Anaconda社が提供するPython環境「Anaconda」を紹介する.

 「Anaconda」はPython以外にも使用頻度の高いパッケージやモジュール,ソフトウェアを一つにまとめたPythonディストリビューションの一つであり,Pythonから始めるプログラミング初心者に対して幅広い活用が可能なPython環境を即座に提供する.さらに,Python用の統合開発環境「Spyder」やデータ分析で多用される「Jupyter」も初期の環境で同時にインストールされるので,コマンドに不慣れな状態でも視覚的かつ直感的にプログラミングが可能である.特に「Spyder」では,プログラムを記述しながらもインタプリタを実行することができ,インタプリタ上で使用されている変数を即座に確認することができるため,標準のインタプリタ利用時に比べ遥かに効率的な計算が可能である.

 パッケージにおいては,本家のPythonよりも多い.というのも,Anaconda独自のパッケージ管理ツール「conda」と本家のパッケージ管理ツール「pip」が共存しており,pipで提供されているもののみに加え,condaのみで提供されているパッケージもインストール可能である.さらに,環境変数を通さずともcondaコマンドを容易に実行できる環境が整えられており,環境変数を通さなければ本家Pythonとの共存も容易である.

 最後に,Anacondaと本家Pythonの決定的な違いといて,「プログラム実行時の実行速度」が挙げられる.特にIntel社製CPUを搭載したコンピュータにおいては,Math Kernel Library (MKL)を用いた行列計算により大規模なデータの計算を高速に実行可能である.また,Intel社が開発するPythonディストリビューション「Intel Distribution for Python」をIntel社のリポジトリから導入可能である.Intel社製CPUを搭載していない場合でも,標準で付属するJITコンパイルライブラリを用いて初心者でも容易に高速化を試みることができる.

 本ライトニングトークでは,これらの利点を大まかに説明し,初心者や別環境構築を検討する中級者に対してAnacondaをその材料として提案する.

対象: 初心者, 中級者5分 (LT)