この記事は日経Robotics 有料購読者向けの記事ですが
日経Robotics デジタル版(電子版)』のサービス開始を記念して、特別に誰でも閲覧できるようにしています。

前回の記事はこちら

本記事はロボットとAI技術の専門誌『日経Robotics』のデジタル版です

 次にPFNの丸山宏氏が提唱するアイデアを紹介しよう。PFNは機械学習分野で世界レベルの企業ということもあり、豊富な知見を持つと見られるが、同氏が本誌による取材で特に重要と強調した点は主に2つある(表2)。

 1つは、従来のコードベースのソフトと機械学習ベースのソフト、それら2つの組み合わせ方のアーキテクチャパターンである。前述したSoftware 2.0ならではの考え方だ。機械学習だけでもコードベースのソフトだけでもなく、両者を適材適所で組み合わせる。

 例えば、深層学習のモジュールが、システム上あってはならない値を出力しないよう、DNNの出力部にコードベースのモジュールをチェッカーとして付加する、といったパターンがある。チェッカーはルールベースのポリシーや空間を変換するモジュールなどである。また、データベース(DB)自体はコードベースのものでデータの整合性を確保するものの、DBの探索を高速化するインデックス部にはDNNを用い、有用な探索を可能にするといったパターンもある。

表2 機械学習を含むシステムの工学化・品質確保に向けた主な手法
[画像のクリックで拡大表示]

 もう1つは、Computational Thinking(計算論的思考)とDeep Learning Thinking(深層学習的思考)の間での発想の切り替え、である。Deep Learning Thinkingとは、ディープラーニングを用いる際の規範のようなものだ。従来のソフト工学やコンピュータサイエンスでは「変数間はできるだけ独立にする」など、直交させたり独立にしたりする設計規範、Computational Thinkingが推奨されてきた。