かつてないほどPythonが人気だ。最近のプログラミング言語をあまり知らないという“おじさん”のために、人気の理由や基本的な特徴を分かりやすく解説しよう。

 プログラミング言語「Python(パイソン)」が注目を集めている。情報処理推進機構(IPA)は2020年春から、基本情報技術者試験の選択可能なプログラミング言語にPythonを新たに加える。IPAは「2018年にプログラミング言語の使用状況や学習状況を調査したところ、Pythonの活用が広がっていると確認できた」と背景を説明する。

基本情報処理技術者試験の出題見直しの発表
(出所:IPA)
[画像のクリックで拡大表示]

 日経 xTECHが2018年10月に実施した「プログラミング言語実態調査」でも、Pythonの人気は圧倒的だ。「今後スキルを磨きたいプログラミング言語」を聞いたところ、回答者1000人中670人がPythonを選んだ。順位はもちろん第1位。Pythonの技術者コミュニティーに長年携わってきたビープラウドの清原弘貴PyQ Founderは「ここ2~3年でPythonへの注目度が急激に高まった」と話す。

プログラミング言語実態調査 2018の「今後スキルを磨きたいと思う言語」
[画像のクリックで拡大表示]

 清原PyQ Founderは沸騰するPythonの人気を「AI(人工知能)ブームにけん引されている」と分析する。AIの中で特にホットな深層学習(ディープラーニング)の分野で、Pythonの存在感が大きいからだ。デンソーグループでAI研究を担うデンソーアイティーラボラトリの吉田悠一研究開発グループシニアリサーチャは「深層学習を使ったソフトを開発するなら、プログラミング言語の選択肢は事実上Pythonしかない」と指摘する。

AIを使ったソフトの開発はPythonほぼ一択

 AIを使ったソフトを効率よく開発するには、ライブラリー(ソフトの部品群)の利用が欠かせない。「ゼロから作ると1カ月かかるものを、ライブラリーを使うと数行書く時間だけで実装できる」(吉田シニアリサーチャ)。試行錯誤を繰り返すAIを使ったソフトの開発では、手軽に試せるか否かが大きな違いとなる。

 具体的には、米グーグル(Google)が開発・公開する深層学習ライブラリー「TensorFlow(テンソルフロー)」、米フェイスブック(Facebook)が開発・公開する深層学習ライブラリー「PyTorch(パイトーチ)」、機械学習のアルゴリズムを幅広くカバーするライブラリー「scikit-learn(サイキットラーン)」などがよく使われている。どれもオープンソースであり、無料で利用できる。

 これらのライブラリーへの命令はプログラムとして記述する。ライブラリーによって対応するプログラミング言語に違いがあるが、ほとんどのライブラリーで共通して使えるのがPythonだ。

 目的に応じてライブラリーを使い分けたり、ライブラリー同士を比較したりするにはPythonを使うしかない。「得意なプログラミング言語が他にあっても、深層学習を使ったソフトを開発するときはPythonでプログラムを書く人が多い」(吉田シニアリサーチャ)。

 AIを使ったソフトの開発でエンジニアや研究者の誰もがPythonを使うため、情報の蓄積もPython一色となっている。TISの美澄暢彦サービス事業統括本部AIサービス事業部AIサービス企画開発部主任は「インターネット上でAIに関して検索して出てくるプログラムはほとんどPythonだ。参考になるプログラムが多いし、AIを扱うならPythonの利用が近道となる」と言う。

この先は会員の登録が必要です。今なら有料会員(月額プラン)が4月末まで無料!

日経 xTECHには有料記事(有料会員向けまたは定期購読者向け)、無料記事(登録会員向け)、フリー記事(誰でも閲覧可能)があります。有料記事でも、登録会員向け配信期間は登録会員への登録が必要な場合があります。有料会員と登録会員に関するFAQはこちら