CLOSE UP コラム | 人工知能の開発に適したプログラミング言語

人工知能の開発に適したプログラミング言語

CLOSE UP 事例

2017年02月20日
オープンソース活用研究所 所長 寺田雄一

人工知能の開発には、どのようなプログラミング言語が適しているのだろうか。

人工知能の処理では、統計学や数学を多用することになる。統計学や数学に精通しているのではない限り、開発途中で、ライブラリを活用する可能性がかなりの頻度で出てくるだろう。ライブラリが充実しているプログラミング言語としては、R言語 と Pythonがある。

人工知能開発のためのプログラミング言語-R言語

R言語は、オープンソースの、データ分析やデータ処理に特化したプログラミング言語である。システム開発を目的にした一般的なプログラムミング言語とは異なり、開発環境が付帯しており、統計解析処理やその結果もグラフィカルに表示できる。

R言語は、人工知能開発に限らず、教育機関や研究機関など本格的な統計分析を行う際によく用いられるメジャーなプログラミング言語であり、統計分析に特化しているため、統計分析用にロジックを書く必要がなく、その点で敷居が低い。

またオープンソースのため、誰でも無料で手に入れることができ、機能を追加するためのパッケージも充実しているのも大きな特長となる。CRAN(The Comprehensive R Archive Network)というレポジトリには、さまざまなパッケージが追加されており、人工知能開発を含めた最新の統計分析環境を容易に手に入れることができる。たとえば、Perl、Python、Rubyなど他のプログラミング言語で実装する前に、統計分析の基本モデルを作ったりする場合でよく使われる。

人工知能開発のためのプログラミング言語-Python(パイソン)

Python(パイソン)は、コードがシンプルで扱いやすく設計されており、C言語などに比べると少ないコード行数でプログラミングできるという特長がある。

また、汎用言語と呼ばれるさまざまなアプリケーションを作るのに適したプログラミング言語でもある。人工知能開発などで統計分析用に書いたプログラミングコードは、自作ライブラリとして製品に組み込むことも可能。またPythonは、ディープラーニングを含めた人工知能のライブラリが充実しているのも特長。

ふたつのプログラミング言語を比較すると、R言語 は本格的な統計分析を開発したい場合、もしくは統計分析をプログラミングで処理しなければならない場合、Python はWEBサービスなどのアプリに人工知能を利用したいという場合という使い分けが考えられる。

下記サイトからの要約。
http://www.amelt.net/imc/programming/mr/4455/
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q14148833434


著者プロフィール

オープンソース活用研究所 所長 寺田雄一

1993年、株式会社野村総合研究所(NRI)入社。 インフラ系エンジニア、ITアーキテクトとして、証券会社基幹系システム、証券オンライントレードシステム、損保代理店システム、大手流通業基幹系システムなど、大規模システムのアーキテクチャ設計、基盤構築に従事。 2003年、NRI社内に、オープンソースの専門組織の設立を企画、10月に日本初となるオープンソース・ソリューションセンター設立。 2006年、社内ベンチャー制度にて、オープンソース・ワンストップサービス 「OpenStandia(オープンスタンディア)」事業を開始。オープンソースを活用した、企業情報ポータル、情報分析、シングルサインオン、統合ID管理、ドキュメント管理、統合業務システム(ERP)などの事業を次々と展開。 オープンソースビジネス推進協議会(OBCI),OpenAMコンソーシアムなどの業界団体も設立。同会の理事、会長や、NPO法人日本ADempiereの理事などを歴任。 2013年、NRIを退社し、株式会社オープンソース活用研究所を設立。

最新TOPICS

最新情報はありません。

関連タグ

AIアナリスト(エーアイアナリスト)

  • AI

AIアナリスト(エーアイアナリスト)は、Google Analyticsを利用して、サイト自動アクセス解析により改善提案を行うサービス。

Pentaho(ペンタホ)

  • BI

Pentaho(ペンタホ)とは、データ統合分析基盤であり、BI/BAツール群の総称。多種多様なデータを統合し、さまざまな観点での分析を行える。

ディープラーニング(Deep Learning)

  • 用語集

「ディープラーニング(Deep Learning:深層学習)」とは、コンピュータによる機械学習の1種であり、人間の脳の階層構造をコンピュータで再現しようと言うアイデアに基づいた「ニューラルネットワーク」を改良し、画像や音声などの認識や、自動運転などの複雑な判断を可能にする。

CAIWA Service Viii(カイワサービスヴィー)

  • AI

「CAIWA Service Viii(カイワサービスヴィー)」は対話型自動応答AIサービスで、主にチャットボットとしてエンドユーザーからの問い合わせに対応する機能を提供する。

音声認識(Speech Recognition)

  • 用語集

「音声認識(Speech Recognition)」とは、人の音声(会話)をコンピュータに認識させることで、「話し言葉をテキストデータに変換」あるいは「音声の特徴を捉えて声を出している人を識別」などを行う機能を指す。音声認識技術は、生活の一部として一般的に普及してきている。

バックナンバー

関連記事

無料資料プレゼント

2021/03/04 セキュリティDAYS Keyspider資料

講演資料を見るには、 プライバシーポリシーに同意して、送付先メールアドレスをご入力しご請求ください。

またご入力いただきました情報は、当該資料の作成・提供企業とも共有させていただき、当社及び各社のサービス、製品、セミナー、イベントなどのご案内に使用させていただきます。

本資料を見るには次の画面でアンケートに回答していただく必要があります。



セミナー講演資料公開中

上からも下からもプレッシャー中間管理職の「悩み」をデータの視点で解決 〜タイムリーなデータ活用、円滑な状況共有を導く分かりやすいデータストーリーとは〜

データ分析の課題をAWS Analyticsサービスで解決する方法

データ活用におけるクレンジングの課題 〜「データ連携ツールを使っても非エンジニアには負担」の解決策〜

  • 書籍

Analytics News ACCESS RANKING

facebook

twitter