人工知能のオープンソースやAPIについて、
独断と偏見で、ざっくり感をシェアシェア。
■とはいえ、そもそも人工知能といっても
人工知能、Wikipedia[1]によると
人工的にコンピュータ上などで人間と同様の知能を実現させようという試み、或いはそのための一連の基礎技術
ってことらしい。ひろい、ひろすぎる・・・
人工知能学会なんかだと[2]
遺伝アルゴリズム、エキスパートシステム、音声認識、画像認識、感性処理、機械学習、ゲーム、自然言語処理、情報検索、推論、探索、知識表現、データマイニング、ニューラルネット、ヒューマンインターフェース、プランニング、マルチエージェント、ロボット
を研究分野としてあげているけど、これだけじゃあない。
そもそも、これらは人間の支援をする「弱いAI」として挙げられた例であり、
シンギュラリティーで話題の、人間と同じ知能を持つ「強いAI」は入っていない。
・・って言ってるときりがないので、今回は、富士通の人工知能Zinrai[3]の体系
にしたがって話を進める。
大きく分けると
(1)知覚、認識
(2)知識化
(3)判断支援
これをささえる
(4)学習と先端研究
とある。このシリーズは上記分類にしたがい、(1)~(4)の4回にわけて書く予定。
今回は、(1)知覚、認識
■知覚、認識
その富士通のZinrai[3]によると、知覚・認識は、画像処理、音声処理、感情・状況認識に分かれる。
●画像認識
画像処理のオープンソースとしてはOpenCV[4]が著名。OpenCVを使うことで、前処理、特徴点抽出、物体検出、輪郭検出、サポートベクタマシン(SVM)、顔識別、ディープラーニング等が出来てしまう(ライブラリが入っているから。機械学習が必要なものは、学習済みのものがあったり・・)。というか人工知能に限らず、コンピュータービジョンがこのライブラリだけで実現可能。
オープンソースでなく、APIが提供されていて、利用できるものがある。Googleの画像認識/分類APIであるcloud vision API[5]、IBM BluemixのWatson Visual Recognition(画像認識)API[6],Docomo 画像認識API[7],Microsoft AzureのCognitive Services(旧Project Oxford)[8]のBing Speech APIなどがある。
●音声処理
音声認識については、APIではGoogle Cloud Speech API[9]やIBM Watson Speech to Textサービス[10]、Docomo音声認識API[11]、Microsoft AzureのCognitive Services(旧Project Oxford)[8]などがある。
オープンソースとして海外ではSirius[12],annyang[13]等があり、国内ではJuliusJS[14](Julius[15]だけでは利用できない)やWebRTC(SkyWay)による電話テキスト化サービス[16]がある。また、テキスト読み上げではspeak.js[17]があり、音声エージェントシステムとしてMMDAgent[18](エンジンにJulius、Open JTalk)がある。音声を利用したパーソナルアシスタントにはWindows10のCortana、iPhoneのSiri、Google Nowがある。
ただし、この市場は、音声認識ではami voice[19],テキスト読み上げ市場は、AITalk[20]といった有償ソフトが強い。
●感情・状況認識
感情認識はPepperでは実現しているとされる。したがってPepperのOS「NAOQi OS」から本来操作できる「はず」である。またMicrosoft AzureのCognitive Services[8]のEmotion APIは画像から感情を検出する。意図の理解としては、Microsoft AzureのCognitive ServicesにLanguage Understanding Intelligence Serviceがある。OpenCVでも、笑顔検出であれば、smile検出用により可能という記事がある[21]。
有償ソフトとしては、セグウェイから音声による感情認識技術ソフトウェア開発キット(ST Emotion SDK)[22]、顔による感情識別SDKがaffectiva[23]から出ている。
(第二話 知識化につづく)
■参考・引用文献(URLのみ)
[1]https://ja.wikipedia.org/wiki/%E4%BA%BA%E5%B7%A5%E7%9F%A5%E8%83%BD
[2]http://www.ai-gakkai.or.jp/whatsai/AIresearch.html
[3]http://journal.jp.fujitsu.com/2016/02/09/01/
[4]http://opencv.jp/
[5]https://cloud.google.com/vision/
[6]http://www.ibm.com/watson/developercloud/visual-recognition.html
[7]https://www.nttdocomo.co.jp/service/developer/smart_phone/analysis/image_recognition/
[8]https://azure.microsoft.com/ja-jp/services/cognitive-services/
[9]https://cloud.google.com/speech/
[10]http://www.ibm.com/smarterplanet/jp/ja/ibmwatson/developercloud/speech-to-text.html
[11]https://dev.smt.docomo.ne.jp/?p=docs.api.page&api_name=speech_recognition&p_name=sdk
[12]http://thebridge.jp/2015/03/researchers-just-built-a-free-open-source-version-of-siri
[13]https://www.talater.com/annyang/
[14]https://github.com/zzmp/juliusjs
[15]http://julius.osdn.jp/
[16]https://github.com/nttcom/peerjs/tree/master/skyway_examples/caption-phone
[17]https://github.com/kripken/speak.js
[18]http://www.mmdagent.jp/
[19]http://sp.advanced-media.co.jp/
[20]http://www.ai-j.jp/about/
[21]http://iwaki2009.blogspot.jp/2013/03/opencv-244_6.html
[22]http://www.segway-japan.co.jp/robot-soft/emotional.html
[23]http://www.affectiva.com/
独断と偏見で、ざっくり感をシェアシェア。
■とはいえ、そもそも人工知能といっても
人工知能、Wikipedia[1]によると
人工的にコンピュータ上などで人間と同様の知能を実現させようという試み、或いはそのための一連の基礎技術
ってことらしい。ひろい、ひろすぎる・・・
人工知能学会なんかだと[2]
遺伝アルゴリズム、エキスパートシステム、音声認識、画像認識、感性処理、機械学習、ゲーム、自然言語処理、情報検索、推論、探索、知識表現、データマイニング、ニューラルネット、ヒューマンインターフェース、プランニング、マルチエージェント、ロボット
を研究分野としてあげているけど、これだけじゃあない。
そもそも、これらは人間の支援をする「弱いAI」として挙げられた例であり、
シンギュラリティーで話題の、人間と同じ知能を持つ「強いAI」は入っていない。
・・って言ってるときりがないので、今回は、富士通の人工知能Zinrai[3]の体系
にしたがって話を進める。
大きく分けると
(1)知覚、認識
(2)知識化
(3)判断支援
これをささえる
(4)学習と先端研究
とある。このシリーズは上記分類にしたがい、(1)~(4)の4回にわけて書く予定。
今回は、(1)知覚、認識
■知覚、認識
その富士通のZinrai[3]によると、知覚・認識は、画像処理、音声処理、感情・状況認識に分かれる。
●画像認識
画像処理のオープンソースとしてはOpenCV[4]が著名。OpenCVを使うことで、前処理、特徴点抽出、物体検出、輪郭検出、サポートベクタマシン(SVM)、顔識別、ディープラーニング等が出来てしまう(ライブラリが入っているから。機械学習が必要なものは、学習済みのものがあったり・・)。というか人工知能に限らず、コンピュータービジョンがこのライブラリだけで実現可能。
オープンソースでなく、APIが提供されていて、利用できるものがある。Googleの画像認識/分類APIであるcloud vision API[5]、IBM BluemixのWatson Visual Recognition(画像認識)API[6],Docomo 画像認識API[7],Microsoft AzureのCognitive Services(旧Project Oxford)[8]のBing Speech APIなどがある。
●音声処理
音声認識については、APIではGoogle Cloud Speech API[9]やIBM Watson Speech to Textサービス[10]、Docomo音声認識API[11]、Microsoft AzureのCognitive Services(旧Project Oxford)[8]などがある。
オープンソースとして海外ではSirius[12],annyang[13]等があり、国内ではJuliusJS[14](Julius[15]だけでは利用できない)やWebRTC(SkyWay)による電話テキスト化サービス[16]がある。また、テキスト読み上げではspeak.js[17]があり、音声エージェントシステムとしてMMDAgent[18](エンジンにJulius、Open JTalk)がある。音声を利用したパーソナルアシスタントにはWindows10のCortana、iPhoneのSiri、Google Nowがある。
ただし、この市場は、音声認識ではami voice[19],テキスト読み上げ市場は、AITalk[20]といった有償ソフトが強い。
●感情・状況認識
感情認識はPepperでは実現しているとされる。したがってPepperのOS「NAOQi OS」から本来操作できる「はず」である。またMicrosoft AzureのCognitive Services[8]のEmotion APIは画像から感情を検出する。意図の理解としては、Microsoft AzureのCognitive ServicesにLanguage Understanding Intelligence Serviceがある。OpenCVでも、笑顔検出であれば、smile検出用により可能という記事がある[21]。
有償ソフトとしては、セグウェイから音声による感情認識技術ソフトウェア開発キット(ST Emotion SDK)[22]、顔による感情識別SDKがaffectiva[23]から出ている。
(第二話 知識化につづく)
■参考・引用文献(URLのみ)
[1]https://ja.wikipedia.org/wiki/%E4%BA%BA%E5%B7%A5%E7%9F%A5%E8%83%BD
[2]http://www.ai-gakkai.or.jp/whatsai/AIresearch.html
[3]http://journal.jp.fujitsu.com/2016/02/09/01/
[4]http://opencv.jp/
[5]https://cloud.google.com/vision/
[6]http://www.ibm.com/watson/developercloud/visual-recognition.html
[7]https://www.nttdocomo.co.jp/service/developer/smart_phone/analysis/image_recognition/
[8]https://azure.microsoft.com/ja-jp/services/cognitive-services/
[9]https://cloud.google.com/speech/
[10]http://www.ibm.com/smarterplanet/jp/ja/ibmwatson/developercloud/speech-to-text.html
[11]https://dev.smt.docomo.ne.jp/?p=docs.api.page&api_name=speech_recognition&p_name=sdk
[12]http://thebridge.jp/2015/03/researchers-just-built-a-free-open-source-version-of-siri
[13]https://www.talater.com/annyang/
[14]https://github.com/zzmp/juliusjs
[15]http://julius.osdn.jp/
[16]https://github.com/nttcom/peerjs/tree/master/skyway_examples/caption-phone
[17]https://github.com/kripken/speak.js
[18]http://www.mmdagent.jp/
[19]http://sp.advanced-media.co.jp/
[20]http://www.ai-j.jp/about/
[21]http://iwaki2009.blogspot.jp/2013/03/opencv-244_6.html
[22]http://www.segway-japan.co.jp/robot-soft/emotional.html
[23]http://www.affectiva.com/