|
人工知能(AI)は現在、最もホットな研究分野の一つです。IBM、Google、Microsoft、Facebook、Amazonといった大企業は、自社の研究開発部門への投資を増やすだけでなく、機械学習、ニューラルネットワーク、自然言語処理、画像処理といった分野で進歩を遂げているスタートアップ企業の買収も開始しています。こうしたAI研究のブームを受けて、スタンフォード大学の教授陣は最近、「AIソフトウェアはますます強力になっており、2030年までに人類社会と経済に大きな影響を与えるAIソフトウェアが登場するだろう」という報告書を発表しました。 Datamation の Web サイトでは、現在人気のある 15 個のオープンソース人工知能ソフトウェア プログラムのリストをまとめており、以下に説明します。 1. カフェ Caffeは、カリフォルニア大学バークレー校の博士課程学生によって開発された、表現アーキテクチャとスケーラブルなコーディングに基づくディープラーニングフレームワークです。その卓越した処理速度から、研究者や企業から広く支持されています。ホームページによると、NVIDIA K40 GPUを1基搭載するだけで、1日あたり6,000万枚以上の画像を処理できます。CaffeプロジェクトはBVLCによって運営されており、その開発はNVIDIAやAmazonなどの企業から資金提供を受けています。 2.CNTK CNTKは、Microsoftのオープンソース人工知能ソフトウェアパッケージの一つであるComputational Network Toolkitの略です。その強みは、単一CPU、単一GPU、複数GPU、あるいは複数GPUを搭載した複数マシン上で動作する場合であっても、優れたパフォーマンスを発揮することです。Microsoftは主に音声認識の研究にCNTKを使用していますが、機械翻訳、画像認識、画像キャプチャ、テキスト処理、音声認識、言語モデリングにも活用できます。 3. ディープラーニング4j Deeplearning4jは、JVM用のオープンソースのディープラーニングライブラリです。分散環境で実行でき、HadoopやApache Sparkと統合されています。これにより、ディープニューラルネットワークを構築し、JavaやScalaなどの他のJVM言語を実行することができます。 Deeplearning4j ソフトウェア プロジェクトは Skymind Commercial によって運営されており、Skymind が資金提供、人材育成、製品プロモーションを担当しています。 4. DMTK CNTKと同様に、DMTKはDistributed Machine Learning Toolkitの略で、Microsoftが提供するオープンソースの人工知能ソフトウェアです。ビッグデータ研究向けに設計されており、人工知能システムのトレーニング時間を短縮することを目的としています。DMTKは、DMTKフレームワーク、LightLDAモデルアルゴリズム、分散型(多感覚)単語埋め込みアルゴリズムという3つの主要部分で構成されています。DMTKの処理速度を示す例として、Microsoftは、8ノードのコンピュータクラスターを使用して、1,000億を超えるラベル付きドキュメントを処理し、100万トピックと1,000万語(合計10兆個のパラメータ)を含むトピックモデルを作成できると主張しています。これは、類似のソフトウェアでは比類のない性能です。 5.水 科学研究よりもエンタープライズユーザーエクスペリエンスに重点を置いているH2Oは、Capital One、Cisco、Nielsen Catalina、PayPal、Transamericaといった大企業から受注を獲得しています。Oxdataは、H2Oの機械学習と予測分析機能を誰もがビジネス上の課題解決に活用できると主張しています。H2Oは、予測モデリング、不正行為およびリスク分析、保険分析、広告テクノロジー、ヘルスケア、顧客インテリジェンスにも活用できます。 H2Oには、標準バージョンとSparkling Waterバージョンの2つのオープンソースバージョンがあります。どちらのバージョンもApache Sparkに統合されており、Oxdataは有料企業向けに技術サポートを提供します。 6. マハウト Mahoutは、Apache Software Foundation(ASF)傘下のオープンソースプロジェクトであり、オープンソースの機械学習フレームワークを提供しています。公式ホームページによると、Mahoutには3つの主な特徴があります。スケーラブルなアルゴリズムプログラミング環境、SparkやH2Oなどのツールで事前に記述されたアルゴリズム、そして「Samsara」と呼ばれる組み込みのベクトルコンピューティング環境です。Mahoutのユーザーには、Adobe、Accenture、Foursquare、Intel、LinkedIn、Twitter、Yahooなどの企業が含まれています。 7.MLライブラリ 処理速度の高さで知られるApache Sparkは、ビッグデータ処理において最も広く利用されているソフトウェアプログラムの1つとなっています。MLlibは、Spark向けのスケーラブルな機械学習ライブラリです。Hadoopと統合され、NumPyおよびNumPy.Rとクロスプラットフォームで動作します。MLlibは、分類、回帰、決定木、提案、クラスタリング、トピックモデリング、特徴量変換、モデル評価、MLパイプライン構築、MLパーシスタンス、生存分析、頻出集合、シーケンスパターンマイニング、離散線形代数、統計分析など、多数の機械学習アルゴリズムを網羅しています。 8. ニューピック Numentaが運営するNuPICは、HTM(階層的時間記憶)理論に基づくオープンソースの人工知能プロジェクトです。HTM理論は、人間の脳の大脳新皮質の構造に基づいてコンピュータシステムを設計し、「認知タスクの処理能力において人間の能力に近づく、あるいはそれを超える」コンピュータの開発を目指しています。 Numenta は NuPic のオープンソース ライセンスだけでなく、商用ライセンスと特許証明書も所有しています。 9. オープンNN OpenNNは、研究者や開発者向けに開発された高度な人工知能ソフトウェアで、ニューラルネットワークを実行するためのC++プログラミングライブラリを提供しています。主な特徴は、ディープラーニングフレームワークと高いパフォーマンスです。OpenNNのウェブサイトでは、ニューラルネットワークの仕組みについて詳しく説明しています。OpenNNのお客様へのテクニカルサポートは、予測分析研究を専門とするスペインの企業であるArtelnicsが提供しています。 10. オープンサイク
Cycorp社が開発したOpenCycソフトウェアは、Cycナレッジベースと常識推論エンジンを搭載しており、239,000語の用語、約2,093,000のトリプル、約69,000のウェブオントロジー用語を収録しています。これは、いわば外部セマンティックデータベースです。リッチドメインモデリング、セマンティックデータフュージョン、テキスト理解、ドメイン特化型エキスパートシステム、ゲームAIにおいて非常に高い効果を発揮します。OpenCycには、研究者向けの無料(クローズドソース)版と、企業向けの有料版の2つのバージョンがあります。 11. オリックス2 Apache SparkとKafkaをベースに構築されたOryx 2は、大規模機械学習向けに特別に設計されたフレームワークソフトウェアです。独自の3層ラムダアーキテクチャを採用しています。開発者はOryx 2を使用して、協調フィルタリング、分類、正規化、クラスタリングといった一般的な大規模データタスク用の組み込みプログラムを含む新しいソフトウェアを開発できます。ビッグデータツールプロバイダーであるClouderaは、現在も開発が進められているオリジナルのOryx 1プロジェクトを開発しました。 12. 予測IO Salesforceは2月にPredictionIOソフトウェアプロジェクトを買収しました。PredictionIOはインキュベーションプロジェクトとして、ASFに新たなプラットフォームと商標を提供しています。SalesforceはPredictionIOを機械学習技術の開発に活用していますが、オープンソースのままです。機械学習を活用して関連Webサービスを展開することで、動的なページリクエストにリアルタイムで応答することで、ユーザーが予測エンジンを構築できるよう支援します。 13. システムML SystemMLは元々IBMによって開発され、後にASFに買収された後、同社のビッグデータプロジェクトとなりました。SystemMLは、高度な数学演算やR言語またはPythonのような言語文の実行が可能な、非常にスケーラブルなプラットフォームです。SparkまたはHadoop上で動作し、ディーラーでの車両メンテナンス中の顧客フォローアップ、空港の空域管制、銀行顧客のソーシャルメディアデータの収集などに活用できます。 14. テンソルフロー TensorFlowは、Googleのオープンソース人工知能ソフトウェアライブラリの一つで、データフローグラフを用いた数値計算ライブラリを提供しています。シングルCPU/マルチCPU、GPUシステム、さらにはモバイルデバイスでも実行可能です。Googleは、TensorFlowは非常に柔軟で、真の移植性を備え、自動識別機能を備え、PythonおよびC++プラットフォームをサポートしていると主張しています。 15. トーチ Torchは、「GPU利用を優先する機械学習アルゴリズムをサポートする科学計算フレームワーク」であると自称しています。Torchは、機械学習、コンピュータビジョン、信号処理、並列処理、画像処理、ビデオ処理、音声処理、コンピュータネットワークといった幅広い分野において、卓越した柔軟性と卓越した処理速度を特徴としています。Torchは、Luaベースのスクリプト言語であるLuaJITで記述されています。 |