2017年12月22日金曜日

バグ取りAIミスマープル


システムが上手く動かない、だが原因が分からない。細分化しても切り分けられない。デバッガを掛けると正常に動くのに。エラーの意味が分からない。ログを見ても見当もつかない。こんなときにはベテランSEの登場だ。

長年大規模プログラムを開発してきたような開発会社には、神のようなPMやSEがいるものだ。たちまちとは言わずとも、若手には見当もつかないようなところを調べ、不可能に思えたバグ取りをやってのける。だがその本人とても、自分の知識・勘を明文化したり、弟子に教えたりすることはできない。自分でも体系だって説明できないからだ。

AIの本質は「暗黙知」である、というのが自説なのだが、システムのバグ取りにおける「勘」こそは正に暗黙知と言えるだろう。系統だって論理的に切り分けるような「形式知」とは違って説明不可能だが、結果的には迅速に答えにたどり着くような知恵があれば、それは立派な武器になる。問題はこの暗黙知が人に依存していることで、その人が退職してしまえば、あるいは休みのときには、対処できない。

今後、こういった「ベテランの暗黙知」はAIに溜めること、とする方針が出てくるかもしれない。ある程度経験を積めばそのベテランは不要になり、更に経験を積むことで会社の財産となる。そのAIだけが珍重され、人間は文字通りAIの手足としての価値しかなくなるわけだ。

だが、この知識をAIにどうやって覚えこませるかは難しい問題だ。ベテランがどこに注目するか、どのような操作をするかを把握するためには、四六時中ベテランにカメラを向けて動画を撮るしかないように思える。つまり、学習のタネはその動画になるわけだ。だが動画を直接深層学習機にブチ込めば終わり、というわけには当然いかない。何らかの前処理が必要だ。

バグ取りには、少なくともバグ発生状態のシステムの全状態(ソース、機器構成、時刻、データ等)、仕様書、バグの把握に関する全状態(報告書、画面、操作記録など)、そしてベテランがチェックしていった全情報(ログ、操作、修正・チェックのコード導入、機材接続など)、その結果(どの時点で分かったか、バグの原因は何か、直った結果)などが必要だが、どう処理したら良いものか検討もつかない。

ここで、ベテランSEに登場頂いた上で、どうすればAIにベテランの知恵を移植できるかを考えてみると、一つのアイデアを思いついた。それは、「ミス・マープル」になってもらうことだ。

本当はミスマープルはそれほどでもなかったようだが、要は「安楽椅子探偵」である。自らは動かず、全てを伝聞で訊き、また確認も全て自分でせずに部下に指示するのだ。実際にベテランにこれをしてもらうのはまどろっこしいとは思うが、ここは我慢してもらう。その報告と指示は全て音声を伴うことにしてもらう。こうすることで入出力がはっきりとデジタル化できる。

まあ、そこから先はやっぱり難しいのだけれども、意外と案ずるは何とかで、上手くいくかもしれない。

0 件のコメント:

コメントを投稿

注目の投稿:

超音波モーターの原理によるVR用トレッドミル

  VRにおけるリアリティ問題の一つに、その場で動くのではなく移動する場合、つまり歩いたり走ったりすることが挙げられる。実際にはその場にいるので、歩いたかのように足場を調節してやる必要がある。 これを実現する方法として、すり鉢状の滑りやすい足場を作っておく方法と、トレッドミルを使...

人気の投稿: