アックスの分散機械学習プラットフォーム

axLinux/雷神L
2016/DEC/15

たけおか(株)アックス

アックス入ってる

(独)産業技術総合研究所
知能システム研究部門
ヒューマノイド研究グループとの実時間Linux共同開発

 オリンパス デジカメ

 シャープ ザウルス

実時間Linux
航空自衛隊で計測に使用

 パナソニックプロジェクタ国産CPUメーカとの協業

国産CPUへのLinuxポーティング実績 No.1

東芝 MeP

富士通 FR/V

ルネサスエレクトロニクス(旧NECエレ)ルネサスエレクトロニクス(旧日立製作所)
SH-Mobile/SH-2A V850

セイコーエプソン C33

シャープLH795xx

東芝CELLサンヨーLC690132

アックス的な懐かしの並列マシン

超並列計算機 SM-1 (1992)
豊橋技術科学大学 湯淺研+住友金属工業
ハードウェア,ソフトウェアの開発環境はKyoto Common Lisp
Connection Machine などで、Map&Reduce が実行されていたころ

富士通 バイオサーバ(2003)
axLinuxで駆動

自動運転ソフトウェア「Autoware」サポート提供■

名古屋大学 加藤真平先生のAutoware– 日本で一番、自動運転の研究が進んでいる– 名古屋 守山市で、公道を自動運転走行– トヨタ自動車などもスポンサー

http://www.pdsl.jp/%E6%97%A5%E6%9C%AC%E8%AA%9E%E3%83%88%E3%83%83%E3%83%97/
http://news.mynavi.jp/series/coolchips18_auto_car/003/
AXEは、Autoware開発を手伝っている– 自動運転には、KnowHowが多くある• 研究発表されているのは、KnowHowではない■

Autowareは、オープンソース・ソフトウェアとして無償配布されている■

AXEは、Autowareサポートを、有償で提供– Autowareを入手しても、即座に自動車を走らせることができるわけではないTier IV
名古屋大学 発 ベンチャー

加藤真平先生のAutowareをサポートする会社
AXEは、TierIVと協調して、Autowareサポートを、有償で提供



Autowareを入手しても、即座に自動車を走らせることができるわけではない自動運転技術の開発&提供



3次元地図/地図技術の提供



3次元地図への広告配信

6

AXEたけおかラボの並列計算機
ATOM 16CPU機の試作
 東京エレクトロンデバイス社と
 Intel ATOM 16CPUでクラスタ計算
 Linuxをディスクレスでクラスタリング管理
 簡単なノード管理– 数億CPUまでスケール
 Hadoop MPI

アックスのGPU計算クラスタLinux
マルチGPGPUカード・サポート
マルチ Intel Phi サポート可能– 一つのx86マザーボードでNVIDIA GPUカードの、多数同時動作をサポート• ※PCI-e スイッチ必須

オープンソースGPUドライバをサポート– Gdev, nouviea により、 CUDAバイナリで GPU を駆動• Gdev: 加藤先生@東大(名古屋大)が開発中のOSS

CentOS6, ScientificLinux6 ベース– Ubuntu Linuxも可 (しかし、頻繁なアップデートはお薦めしません)– Intel CC, Intel Fortran, g95, gcc, CUDA, OpenMP サポート– ノード管理コストがほぼ0– MPI, OpenMP などフツーのSMP,分散計算環境をサポート

アックスの計算用クラスタLinux Linuxカーネルを変更
 OOM killer対策
 スパコン向けスケジューリング
 不公平スケジューリングを可能にした
 指定した特定のプロセスがCPUを長期間得られる
 計算を行うプロセスを圧倒的に有利にできる キャッシュのヒットミス
 ページ・フォールト発生
 TLBミスの軽減※組込みLinuxで開発したQoSなどと同じ技術をスパコンに適用

アックスの分散計算用クラスタLinuxHadoopサポート & Java言語サポート– データセントリックな計算• Map&Reduce– Big data時代のプラットフォーム– Hadoopによる分散数値計算をGPUで超加速機械学習
and/or
記号処理
AI製品
ロボット11

機械学習 & AI 大人気
機械学習 大人気
ついでにAI (人工知能)も大人気– 余談:私は、古典AI派• ルール・ベースのAI• 機械学習?なにソレ? (笑)
• とはいえ、ルール・ベースのAIに、機械学習を組み合わせているがAXEの機械学習 顔認識 ロボットRaspi(ARM11@700MHz)+ WebCamera (30M pixel)+ DC Motor Driver顔と阪急電車、普通の電車を認識

13

阪急電車 判定器



OpenCV (SVM)

Recognizes on Raspberry Pi 1(ARM11@700MHz), Raspi3

学習フェーズ (X86 マシン)

Positive Photo: 174
Total 218 (about 2.58MBytes)

80% = 174
Negatinve Photo: 5416枚
About 261MBytes
Study time: 11 hours 5 minutes 54 seconds
Hardware
CPU:Intel Core i7-4790K CPU@4.00GHzMemory: 32GB

機械学習
サポート・ベクター・マシン (SVM)– ※ベクトル計算機ではない– 特徴ベクトルを扱う– 標本の空間の縁を学習で作り、対象が空間の内側にあるか否かを判定
ディープ・ラーニング– ニューロ・ネットワーク– 層が多い• ある大きな層の単位で、異なった処理(学習)を行っている

機械学習の並列度
サポート・ベクター・マシン, OpenCVなど–

分散で学習し、最終的に学習結果をリダクション• 実績あり–スケーラブル• 学習サンプルを分割し、各ノードにばらまく• サンプル数が十分に多ければ、台数効果あり
ディープ・ラーニング–ニューロ・ネットワーク–

学習が一次結合式のようなものなら、分散→リダクション可能• ニューロ・ネットワークは、結構ほのぼのしている–層ごとに、独立に学習可能• 前段の出力例があれば、後段の学習は独立に可能• 現在、一般的なディープ・ラーニングは、大きなバックプロパゲー
ションはなさそう いずれもPCクラスタ向き

axLinux/雷神L
機械学習の並列プラットフォーム
下記の機械学習をサポート– サポート・ベクター・マシン–

ディープ・ラーニング–ニューロ・ネットワーク

 axLinux/雷神Lの特徴–

MPI (ssh)で• 起動• 結果を MPI通信でリダクション–

MPI対応しなくとも、リダクション方法を少し工夫すればOK• Perl, PHPなどでも最終処理可能–

サンプルは容易に分割可能• サンプルは、個別のファイルであることが多い• 数値データのファイルでも、容易に分割可能

ルールベースAI(推論システム)製品

18

AXE AIAXE AIは、ハイブリッド
記号推論システム + 機械学習

探索空間が小さい 帰納推論を採用
 Raspi 3 (ARM cortex A9 × 4cores)で高速に動作。マルチコア、クラスタで、より高速に
Raspi 1(ARM11@700MHz 1core)でも小規模な仕事なら実用的AXE AIは、推論により、少ないデータでも実用動作
Toyota Research Institute社
 個人を対象とした分野で実用CEOのGill Pratt氏:
個人一人のデータは、機械学習には少なすぎるのではないか? 「恐らくAIとルールベースを組み合わせることになるだろう」
AXE AI は、日本語処理もできる(http://techon.nikkeibp.co.jp/atcl/ma
日本語の処理は難しい (欧米の言語に比べて)g/15/320404/060100025/?P=3)
 語順が不定
お買い物提案メール
SNSログ

推論システム:・行動戦略を作る
・競合する条件があっても、答えを出す

日本語

スケジュール提案

推論システム入力 処理
リアルタイム・チャット
閲覧WebPage内容

出力
箱の間を通る方法

推論規則

どのように、避ける?

カメラ 入力
実世界

機械学習

出力

箱が2個ある
人間が居る

19

機械学習:
反射神経/画像認識

推論システム vs 機械学習
推論システム○人間が意味を取れる、論理的な処理を行う
○人間が調整することが極めて容易
○少ない時間、少ないデータで、高効率なAIを実現可能
学習用に、くだらないデータを用意する必要が無い
×形式化されていない知識を扱うのが苦手
機械学習
○形式化されていない知識も利用可能
○高度な抽象化能力を備えつつある
○経験を活かすことができる
論理的な操作ではない記号も画像も同様に、ただのビット列として扱う
×学習用に、多量のデータを用意しなければ、精度が上がらない
文書を多量に人間が処理し、学習用データを用意しなければならない。
※人間が分析したものを、用意しなければならない
20


大規模データ時代の推論AI

AXE AI

スケーラブル

推論ルールの自己学習,自己拡張の実用化(開発中)

機械学習とのハイブリッドで、実用的にRDBを使用し、大容量データを扱う

AI自体のために、RDB内の大容量データを使用



周期性の学習などが可能になっている

大量のデータから、ユーザのために、AIがデータを選択

ex.ユーザが欲しがりそうな写真を掴みだし、ユーザに提示

AXE AIは、帰納推論を採用

Prologと同様のセマンティックの実行Lisp で推論エンジンを記述



適宜、Lispで記述した推論エンジンを呼び出す



推論エンジンから Lisp関数を呼び出すことも可能

21

ロボット,自動運転ミドルウェアOSSサポート
OpenRTM-aist•
産総研が開発したロボット用ミドルウェア•RTMは国際規格
http://openrtm.org/openrtm/ja•
OpenEL•
産総研,JASAで開発中のロボット用低位ミドルウェア•
RTM, ROSの低位層で、移植性を高める•
ROS (Robot OS)•
Googleの自動運転などに使用されている•ロボット・ミドルウェア•
名古屋大学の自動運転プロジェクトでも使用•
Autoware(自動運転)•
名古屋大が開発中の自動運転ソフトウェア•

(唐突に)
データ駆動マシン23

日本はデータフローマシン大国•

日本の代表的データフローマシン•

Sigma-1 (1987年)
•

•

EM-4
•

•

電総研(現 産総研)

DFM
•

•

電総研(現 産総研)

電電公社(現 NTT) 通研

NEDIPS/ImPP(μPD7281)•NECピュアな汎用データフローマシン•

基本はサーキュラ(環状)・パイプライン
インターコネクト(スイッチネットワーク/バスなど であることが通常)

演算 要素ユニット
実行ユニット

マッチング
メモリ(オペランドの待ち合わせを行う)

命令ユニット(データが処理されるべき演算を出す)

行き先ユニット(新しいアーク情報を付ける)

演算 要素ユニット

サーキュラ・パイプラインを持つ、典型的な汎用データフローマシンのブロック図

URL
 www.axe-inc.co.jp
 www.axlinux.com
 www.takeoka.org/~take/