データサイエンティストが業務をしていて、ハマる落とし穴を3つご紹介します。これからの落とし穴はプログラマー・システムエンジニアにも共通する内容ですのでご参考にして頂けますと幸いです。
分析者が人工知能の専門家だと勘違いされてしまう
近年、人工知能に関しての関心が非常に高まっています。囲碁や絵画の世界でも人工知能が人間を上回るアウトプットを出すということが事例として出てきています。
ビジネスの領域においても、機械学習やDeepLearningに関する活用事例は増えていますし、データ分析者界隈のブログでは、日々人工知能に関する記事が上げられています。
分析者は人工知能という領域に対して、畑違いに感じている人も多いと思います。よくあるケースとして、「〇〇」という人工知能の製品を導入してみたが、使い方がわからないからアドバイスが欲しいといった内容になります。目的がはっきりしない中で導入されたものを止めましょうともなかなか言いづらいものです。
対策としては、人工知能の導入自体が目的化を防止するということになります。人工知能を名乗るサービスはマーケティングの理由からその効果をうたっているものがほとんどになります。
導入を検討する企業は自分たちの抱えている課題と製品やサービスの機能が合致しているかよく調査を行う必要があります。有効に活用出来ないと費用と工数がかさむばかりで痛い目を見ることになります。データ分析に明るいものとして、これらの導入に意見を求められる場合は、そのタイミングで適切なアドバイスを行えるように業界の動向や最新技術にも積極的に吸収して行きましょう。
分析の計算処理に想定よりも時間が掛かってしまう
分析スケジュールに影響するが、見積もりが甘いトピックとして計算処理時間があります。
単純な計算であれば1〜2分あるいは数秒で終わる処理も多いので、処理時間に気を配る必要はありません。しかしデータ量の大きさやモデル、アルゴリズムの複雑さによっては、数時間、数日、数週間といった単位で処理を行う必要が出てきます。
例を上げますと、ある分析プロジェクトで階層ベイズモデルの構築を行いました。このモデルのパラメータ推定には、マルコフ連鎖モンテカルロ法(MCMC)
という手法が使われるのですが、非常に時間がかかるものになります。
変数が多いと想定以上に時間がかかることもありえます。
このような課題に対しては、まず処理時間がかかる複雑なモデルを構築する前にシンプルなモデルに変更出来ないかという点です。
複雑で品質の高いモデルを構築する必要があるときに、力技で行わなければいけない場面が生じます。そのような場面に対しては、自分が構築しようとしているモデルのおおよその処理時間を事前に把握しておきましょう。
どの処理時間も加味して、余裕を持ったスケジュール案にしましょう。
分析のスコープや品質、スケジュール、予算といった要素はトレードオフになることが多いです。現実可能なプランにするのも分析者の役割になります。
いくら分析しても報告出来る結論に辿り着かない
分析作業の流れは以下の通りです。
1データを用意する
2分析処理をする
3結果を解釈
4次にやることを決める
目的がしっかりと定まっていても、上記の2から4は繰り返す必要があります。この流れを一人で行っていると細かい点が気になって必要でない分析に時間を費やしてしまうということが起こります。
予定していた締め切りに間に合いそうにない事態から周りの方に迷惑をかけるという事も起こってしまうでしょう。
このような事態を防ぐには、役割を分担する事です。目の前で分析に集中していると全体を見渡すのが難しくなってしまいます。それを回避するには管理する人と分析する人を分ける事で解決が可能です。
まとめ
以上がデータサイエンティスト・分析担当が落ち入りがちな落とし穴になります。このような状況に陥っている人は上記対策を実施して見てください。