ソフトウェア開発の現場へ機械学習をいかに取り込むか
シンポジウム基調講演ではソフトウェア開発の現場からアクセンチュアUSAの工藤卓哉氏、研究の現場から理化学研究所の杉山将氏が登壇した。
工藤氏はソフトウェア開発現場の実感として「機械学習は活用の時代に」と証言し、従来のソフトウェア開発と機械学習における違いについて次のように説明した。
従来のソフトウェア開発(プログラミング)では、ルールをコーディングすることでタスクを自動化する。一方で、機械学習だとルール生成を自動化し、教師データを与え、タスクを自動化する。ただし開発工程管理のKPIなど、これまでのノウハウが生かせるものもあると言う。また「期待値管理は同じアプローチとなる」と話す。
またソフトウェア開発でも起こりうる残念なことが機械学習でも起きると工藤氏は指摘する。後のパネルディスカッションで「PoC貧乏」とも揶揄された現象だ。それは緩い発注ゆえに、結果は出ても成果物が形にならないようなケースだ。例えば「機械学習で故障検知したい。データはある」と依頼され、機械学習の結果、ある程度原因となるデバイスの特定までできた。しかし得られた結果を生かす業務が見当たらず、工藤氏は「SOW(作業範囲記述書)が緩いと、力試しで終わってしまう」と言う。
それゆえに機械学習はきちんとした開発工程に組み込んでいく必要がある。工藤氏は機械学習モデルのビジネス適用フローとして7つのステップを提示した。それが分析基盤の構築、データの可視化、モデルの構築、モデルの現場適用、全体最適化、企業意思決定、ジョイントベンチャーという流れになる。
工藤氏は「機械学習はソフトウェア工学と異なり確率の余地が入る」と指摘する。それゆえにシステムで担保されるSIの請負契約とは異なるため、常に確率による間違いが含有されることを前提とする必要があると言う。