2019.07.11
Alex Woodie著

Rがiにやって来る

先週、IBMは、IBM i オペレーティング システムでのR言語の正式サポートを発表しました。長年、データ サイエンティストや統計学者や、他の科学計算に関わる研究者たちに愛用されてきたこのオープンソース言語により、IBM i のデータ マイニングや機械学習の分野には、強力な後押しが得られることとなります。

R言語は、25年前に、ニュージーランドのオークランド大学の2人のコンピューター サイエンス教授、Ross Ihaka氏とRobert Gentleman氏によって開発されました。このソフトウェアの開発は主にCおよびFortranで行われ、1970年代にベル研究所のJohn Chambers氏によって開発された高速プログラム プロトタイピングのためのプログラミング言語である、S言語がベースとされています。

今日では、R言語は、機械学習および人工知能で最も広く使用されている言語の1つとなっています。今日、Rを使用しているほとんどのデータ サイエンティストは、線形および非線形モデリング、古典的な統計的検定、時系列分析、クラス分類、クラスタリングなど、数々のプレビルト プログラムが含まれるオープンソースのGNUパッケージを通じてRを利用しています。

R言語は大学で広く教えられており、科学および統計学を学ぶ学生の間で人気の言語の1つになっています。物理学や生物学のような「ハード サイエンス」出身のデータ サイエンティストは大学でRを学んでいるのが一般的であり、科学的背景の有る無しに関わらず、大きなデータ セットの処理や機械学習モデルの構築に、当たり前にRを使用しています。

R

Rの利用は年々広まり、今日では何千ものRのパッケージが提供されており、それらを利用することで、様々な専門的なユース ケースで、大きなデータ セットの解釈、対話処理、視覚化を行えるようになっています。現在、TIOBE Indexで16位にランクしているこのインタープリタ型言語は、大企業によって日々、様々な用途に使用されています。たとえば、ソーシャル メディア データの分析によるマーケティング トレンド予測、リスク評価のための財務モデルの構築、気候変動の予測のための気象モデルの開発など、用途は多岐にわたります。

データ サイエンスの分野では、Rは、Pythonと対比させて、あるいは並べて位置付けられることがよくあります。Pythonは、大学レベルのコンピューター サイエンス コースで教えられている、より一般的なスクリプト言語です(高校で教えられることもますます多くなっています)。RおよびPythonは、特に、SASMATLAB、およびIBMのSPSSツールなどのプロプライエタリなアナリティクス言語および環境と比較して、今日の機械学習モデリングの分野でともにかなり大きな役割を担うようになっていています(もっとも、MATLABは最近復活し、TIOBE IndexでRを抜いて12位にランクしていますが)。

Microsoftも、企業が競争優位に立つためにRを使用して巨大なデータセットのデータマイニングを行うのを支援してきた大企業の1つです。時価総額1兆ドルの世界最大の企業であり、先日、時価総額でAppleを抜いたこのソフトウェア企業は、R Consortiumの創設メンバーでもあります。Microsoftは、数年前に、通常はシングルスレッド ランタイムであるRの並列化バージョンを提供するRevolution Analyticsという企業を買収し、それにより、エンタープライズレベルのデータ マイニング ワークロードでのRの稼働において優位性を確保しています。また、同社のAzureクラウドでは、大規模なRベースのデータ分析もサポートしています。

IBMのRランタイムが並列化されるかどうかは、現時点でははっきりしていません(IBMのRランタイムはオープンソースのGNUパッケージをベースにしており、PASEでの稼働となるため、IBM i では並列化されていない可能性が高そうです)。しかし、現時点でもっと大事なことは、何よりもまずRがこのプラットフォームでサポートされるということであり、このことから分かるのは、IBM i 顧客がビジネス優位性のためにビッグ データの分析を行うのに、より広いIT業界で使用されているのと同じツールを利用できるようにすることにIBMが本腰を入れているということです。IBMでは、機械学習とAIは同社のIBM i 事業にとって重要なワークロードであると述べていますが、Rのようなツールのサポートの追加は、そのことについての同社の確信を示していると言えそうです。

IBM i のショップへのRの配布は、IBMが昨年の夏に公開した新たなオープンソースの配布方式である、RPM(Red Hat Package Manager)を通じて行われます。IBMでは、このRPM方式を通じてすでに300以上のパッケージを配布しており、その数は絶えず増え続けています。IBMの発表レターによると、IBM i 7.4およびIBM i 7.3 TR6のRのサポートは、いずれもRPMを介してとなります(なお、IBMは触れていませんが、以前のバージョンのOSでRをサポートできない理由は特にあるわけではなさそうです)。

IBM i のショップは、RODBC(R専用に作成された特別バージョンのODBCドライバー)を使用することにより、Db2 for iに置かれたデータにRを使用してアクセスできるようになります。また、IBMは、新たに提供されるODBCドライバーを使用できるとも述べています。

Rの他にも、新たなオペレーティング システムでは、以下のオープンソースのツールが追加されます(RPM経由で配布)。

  • Apache ActiveMQ(メッセージ ブローカー)
  • Apache AntおよびMaven(ビルド自動化ツール)
  • vim(ターミナルベースのエディター)
  • yum-utils(上級のユーザー向けの、yumリポジトリーおよびインストール済みソフトウェアの管理のためのツールおよびプログラムのコレクション)
  • Midnight Commander(ファイルシステムを参照し、様々なタスクを実行するためのターミナルベースのユーティリティ。以前の記事を参照)

終わりに、Rの追加により、iの愛用者が9月19日を祝う理由がもうひとつ増えることに触れておかないわけにはいきません。9月19日は言うまでもなく、「世界海賊口調日(International Talk Like a Pirate Day)」です。Rとiを「argh!(アアーッ)」とか「aye!(アイ)」というように、海賊っぽく喋ることができるでしょうか。

ページトップ

ボタン