複雑化するIT運用管理の効率化にも機械学習
ITオペレーション分析というのは、まだ聞き慣れない。これは、ITシステムを運用する際に発生する各種ログデータなどを収集し、そのビッグデータを分析してシステム運用に関わる意思決定を支援するものだ。このITオペレーション分析のところで、機械学習の技術を世界で始めて用いたのがSIOS iQというわけだ。
複雑化するITシステムを人手で効率よく、かつ安定して管理するのはいまやかなり難しい。それでも扱うものが物理環境だけであれば、目の前に対象のシステムがあり対処もしやすいかもしれない。しかしいまは仮想化が当たり前。そのせいで複雑さは大幅に増しており、同じ目の前のハードウェアでも昨日と今日では動いているアプリケーションが異なるなんてことも日常だろう。つまり仮想化技術によりITシステム環境の柔軟性が増したことが、むしろ運用管理の複雑化を招いているという皮肉な状況でもある。
そんな中、ここ最近のITシステム管理ツールの多くでは、自動化機能搭載を謳うものも多い。何らかのルールを設定しておけば、人手を介さずとも閾値を超えないよう自動制御してくれる。単純な構成ならばこれで運用管理の自動化が可能になるかもしれない。しかし、仮想化などで複雑化している場合には最適な閾値を決めるルール作りに頭を悩ますことになる。
今回のSIOS iQは、そんな難しいルール設定をする必要はないのが特長だ。ルールを作るのではなく、ビッグデータを機械学習することにより、その環境下において安定的で効率的な運用状態とは何かをSIOS iQが自動的に理解する。その理解した結果を用いて、システム環境を適切に運用しようとするのだ。
今回提供されるのはVMware環境の管理機能だ。SIOS iQをVMware環境へ接続する設定を行えば、すぐに各種ログデータの収集を始める。そして、アプリケーション、CPUリソース、ストレージ、ネットワーク間の稼働パターンをトラッキングし、正常な稼働時のパラメーターを学習する。学習に要する期間は管理する環境によっても異なるが、通常の環境であれば数日から1週間程度あればいいようだ。
学習段階では特に人手を介する必要がないので、ベンダーであるサイオスであらかじめ運用管理のベストプラクティスな運用管理モデルを定義しているのだろう。この機械学習により稼働状況の問題点を検出し、仮想環境でのパフォーマンスや効率性、信頼性などを向上するための情報を管理者に提供してくれる。現時点では、これでVMware環境の運用すべてを自動管理できるものではなく、IT管理者の作業を強力に支援をすることになる。
いよいよ日本語を理解するWatsonへの取り組みが本格化
機械学習については、中身のところで高度で複雑なロジックを使うのかよりも、実際にどのようなデータを集めてどのような学習を行うかが1つのポイントとなる。IBMのコグニティブ・コンピューティングの最初の事例として登場する、クイズ王に勝利したWatsonもWikipediaのような学習に使える良質な情報があったからこそ勝つことができたと言う話を聞いたことがある。
Watsonについては機械学習を行い自然言語処理をするための基本ロジックそのものは、言語に特に依存するものではないようだ。しかし、日本語の情報で学習をすること、さらには日本語の情報の裏にある文化的な背景のようなものも知識として蓄積することが難しい。そのためもあってか、なかなか日本語に対応したWatsonが登場しなかったようだ。
ところが2月10日、日本IBMとソフトバンクテレコムがWatsonの開発と市場への導入において戦略的に提携すると発表した。この提携により、Watsonが日本語を理解できるようにトレーニングがいよいよ本格的に行われる。これで、日本におけるIBMのコグニティブ・コンピューティングのソリューションが大きく1歩前進することになりそうだ。
IBMとソフトバンクテレコムは、この新しいコグニティブ・コンピューティングの能力を、継続的にクラウドで提供する計画を持っている。クラウドで提供することで、学習を継続しその結果をフィードバックできる。そうすることでコグニティブ・コンピューティングのエンジン部分についても、さらに継続的に進化させられるだろう。この継続した学習こそがコグニティブ・コンピューティングの肝であり、機械学習という技術を最大限に利用するためには重要なポイントとなるはずだ。
継続して学習を行えば、コグニティブ・コンピューティングは継続して成長することになる。そうなると映画『ターミネーター』の「スカイネット」のように、人間と対立する意志を持った自律型のコンピュータが出来上がってしまうのだろうか。そういう可能性も否定できないかもしれない。しかし、個人的にそんなことにはそうそう起こらないのではと楽観している。
もちろん、悪意を持って学習し、人間の意志とは裏腹なことを正解とする学習をすれば、意図的に人間と対立するコグニティブ・コンピューティングも実現できるかもしれない。その場合もコンピュータサイドでは、決して間違った答えを出しているわけではないけれど。つまり、結局は使う側の人間の問題であり、多くの人の「知」が関わるようなエコシステムでやっていければ、こういった悪意を持ったコグニティブ・コンピューティングが生まれる可能性は抑制できるのではと思うのだ。
ちょっと話がそれてしまったが、機械学習というキーワードを含むソリューションにおいては、それがどのような学習をするのかを気にしておくのが、今後の理解する上では役立つだろう。機械学習した結果の分析モデルを組み込んで賢く判断するようなアプリケーションも、今後は多数登場するだろう。さらには、IBMやソフトバンクテレコムの取り組みのように、裏側で機械学習技術を最大限に活用したクラウドサービスも増えてくるに違いない。