人工知能のオープンソースやAPIについて、
独断と偏見で、ざっくり感をシェアシェア。のつづき
(1)知覚、認識
(2)知識化
(3)判断支援
(4)学習と先端研究
のうち、今日は最後の(4)学習と先端研究
■学習
機械学習の分野については、統計的なアプローチ、ニューラルネット、そのほかの学習によるアプローチに分けて論じる。統計的なアプローチは、収集データに基づいた予測等を学習し、統計的処理を行って分析結果を出力する。分析結果は、ある予測値を出力するもの(重回帰分析等)や、どのカテゴリに属するか(k-means等の、決定木)、YESかNOか(SVM)、類似性表示(k-nn,自己組織化マップ)等がある。類似性の表示は機械学習を使わないコレスポンデンス分析や数量化Ⅲ類でも可能。学習する際に、正解が必要(教師あり)なものと、必要ないもの(教師なし)がある。これらはすべてR[1]を利用すればできる(Weka[2]でもできるものがある)。自分でプログラムを組む場合、Pythonでも実装できる。
ニューラルネットは機械学習の一部で、分類、判別等を行うことができる。従来のニューラルネットでは、多層化が難しかったが、この多層化を実現したものが深層学習(ディープラーニング)である。従来の画像認識が特徴点を必要としたのに対し、ディープラーニングは特徴点を必要としない(自ら学習)ため、正解率が上昇したが、その分類基準が人間が判断できるものとは限らない。例えばディープラーニングを使って囲碁で負けた場合、なぜそのような負ける手を打ったのか、理由が推測できない場合がある。ニューラルネット・ディープラーニングはR[1]やOpenCV[3]を利用すればできるが、ディープラーニング専用のオープンソースとしてCaffe[4],Chainer[5],DeepBeliefSDK[6]があり、GoogleはTensorFlow[7]を出している(これらの使い方は[8])
そのほかの学習として、強化学習にはQ-learning, ε-greedy行動選択などがあり、R[1]やExcelで実装可能である[9]。また、潜在的なパラメータをもとに判断・機械学習する手法は、EMアルゴリズムやマルコフ連鎖モンテカルロ法(MCMC)、変分ベイズ等がある。モザイク部分の可視化やマーケティング等に用いられ、R[1]で実装可能である。
■先端研究
脳科学や社会受容性は、富士通のzinraiにはあるが、ソフトウェアではないので、ここでは割愛する。富士通はこのような研究を行っているのでに、載っているものと思われる。
シミュレーションに関しては、有償のMatlab[10]に対してscilab[11]などあるが、ここでいうシミュレーションはそのような数値シミュレーションのことではなく、人工知能で行われるマルチエージェントシステムの意味であると思われる。マルチエージェントシステムとしては、artisoc[12]が有償版としてある(機能制限版は無償でも使える)。無償のものとして、NetLogo[13]がある。
■参考・引用文献
[1]https://www.r-project.org/
[2]http://www.cs.waikato.ac.nz/ml/weka/
[3]http://opencv.jp/
[4]http://caffe.berkeleyvision.org/
[5]http://chainer.org/
[6]https://github.com/jetpacapp/DeepBeliefSDK
[7]https://www.tensorflow.org/
[8]http://d.hatena.ne.jp/shu223/20160105/1451952796
[9]http://d.hatena.ne.jp/teramonagi/20140824/1408831046
[10]http://jp.mathworks.com/products/matlab/?requestedDomain=jp.mathworks.com
[11]http://www.scilab.org/
[12]http://mas.kke.co.jp/modules/tinyd0/index.php?id=13
[13]https://ccl.northwestern.edu/netlogo/
独断と偏見で、ざっくり感をシェアシェア。のつづき
(1)知覚、認識
(2)知識化
(3)判断支援
(4)学習と先端研究
のうち、今日は最後の(4)学習と先端研究
■学習
機械学習の分野については、統計的なアプローチ、ニューラルネット、そのほかの学習によるアプローチに分けて論じる。統計的なアプローチは、収集データに基づいた予測等を学習し、統計的処理を行って分析結果を出力する。分析結果は、ある予測値を出力するもの(重回帰分析等)や、どのカテゴリに属するか(k-means等の、決定木)、YESかNOか(SVM)、類似性表示(k-nn,自己組織化マップ)等がある。類似性の表示は機械学習を使わないコレスポンデンス分析や数量化Ⅲ類でも可能。学習する際に、正解が必要(教師あり)なものと、必要ないもの(教師なし)がある。これらはすべてR[1]を利用すればできる(Weka[2]でもできるものがある)。自分でプログラムを組む場合、Pythonでも実装できる。
ニューラルネットは機械学習の一部で、分類、判別等を行うことができる。従来のニューラルネットでは、多層化が難しかったが、この多層化を実現したものが深層学習(ディープラーニング)である。従来の画像認識が特徴点を必要としたのに対し、ディープラーニングは特徴点を必要としない(自ら学習)ため、正解率が上昇したが、その分類基準が人間が判断できるものとは限らない。例えばディープラーニングを使って囲碁で負けた場合、なぜそのような負ける手を打ったのか、理由が推測できない場合がある。ニューラルネット・ディープラーニングはR[1]やOpenCV[3]を利用すればできるが、ディープラーニング専用のオープンソースとしてCaffe[4],Chainer[5],DeepBeliefSDK[6]があり、GoogleはTensorFlow[7]を出している(これらの使い方は[8])
そのほかの学習として、強化学習にはQ-learning, ε-greedy行動選択などがあり、R[1]やExcelで実装可能である[9]。また、潜在的なパラメータをもとに判断・機械学習する手法は、EMアルゴリズムやマルコフ連鎖モンテカルロ法(MCMC)、変分ベイズ等がある。モザイク部分の可視化やマーケティング等に用いられ、R[1]で実装可能である。
■先端研究
脳科学や社会受容性は、富士通のzinraiにはあるが、ソフトウェアではないので、ここでは割愛する。富士通はこのような研究を行っているのでに、載っているものと思われる。
シミュレーションに関しては、有償のMatlab[10]に対してscilab[11]などあるが、ここでいうシミュレーションはそのような数値シミュレーションのことではなく、人工知能で行われるマルチエージェントシステムの意味であると思われる。マルチエージェントシステムとしては、artisoc[12]が有償版としてある(機能制限版は無償でも使える)。無償のものとして、NetLogo[13]がある。
■参考・引用文献
[1]https://www.r-project.org/
[2]http://www.cs.waikato.ac.nz/ml/weka/
[3]http://opencv.jp/
[4]http://caffe.berkeleyvision.org/
[5]http://chainer.org/
[6]https://github.com/jetpacapp/DeepBeliefSDK
[7]https://www.tensorflow.org/
[8]http://d.hatena.ne.jp/shu223/20160105/1451952796
[9]http://d.hatena.ne.jp/teramonagi/20140824/1408831046
[10]http://jp.mathworks.com/products/matlab/?requestedDomain=jp.mathworks.com
[11]http://www.scilab.org/
[12]http://mas.kke.co.jp/modules/tinyd0/index.php?id=13
[13]https://ccl.northwestern.edu/netlogo/