最終更新日:
データサイエンティストが「21世紀における最もセクシーな仕事」と呼ばれるようになって久しい現在では、この職種から得られる報酬や肩書を求めるデータサイエンティスト志望者があふれています。こうした志望者の少なからずは、オンライン講座で機械学習モデルを実装するコーディングスキルを学んだ後にデータサイエンティストを名乗るようになります。
こうしたコーディングスキルを習得しただけの自称データサイエンティストは自信過剰に陥っている、同氏は指摘します。というのも、実際のデータサイエンス業務は問題の定義、データの収集、性能検証といったコーディング以外のタスクとスキルも要求されるからです。さらに、コーディングしかできないデータサイエンティストは「コード駆動者(Code-Runner)」と揶揄されます。
同氏によると、コード駆動者でしかない新米データサイエンティストは、自らの無知を自覚して、データサイエンティストには生涯にわたる学習が不可欠と悟った時、本物のデータサイエンティストになる道を歩むことになります。
現在のデータサイエンス業界は、もしかしたら一種のバブル期を迎えているのか知れません。しかし、そうしたバブル期はいずれ終焉することでしょう。バブル期を過ぎた後に生き残るのは、コーディングの背景にある理論や数学を理解している本物のデータサイエンティストだけではないでしょうか。
なお、以下の記事本文はRahul Agarwal氏に直接コンタクトをとり、翻訳許可を頂いたうえで翻訳したものです。
目次
オンラインコースやツールの過多は、データサイエンスを民主化することを約束する。しかし、いくつかの基本的なスキルを学ぶだけでは、真のデータサイエンティストにはなれない。
数年に一度、ある学術的かつ専門的な分野が、世間の想像力をかきたてる大きな話題になることがある。ちょうど今、その分野はデータサイエンスだ。その結果、多くの人がデータサイエンス業界に進出しようとしている。加えてデータサイエンスをセクシーと呼ぶニュースチャンネルや、数ヶ月でデータサイエンティストになることを約束する様々な学術機関があるが、これらは災いのもと以外の何ものでもない。
もちろん、データサイエンティストであるわたし自身から見て、人々がデータサイエンスを職業として選ぶことに問題があるとは思っていない。データを扱うことに興味があり、ビジネス上の問題を理解し、数学に取り組み、コーディングが好き人ならば、おそらくデータサイエンスで成功するだろう。そんな人がデータサイエンティストになれば、問題の革新的な解決法を開発するために数学とコーディングを使用する多くの機会を恵まれ、きっとやりがいのある仕事を見つけたと思うことだろう。私がこの記事で主に問題にしたいのは、この業界に進もうとする人々が抱いている動機にしばしば欠陥がある、ということだ。
データサイエンティストになることで得られるお金が魅力に感じる人もいれば、データサイエンティストという肩書がもつ響きが好きな人もいる。さらに悪いことに、社会が植え付ける群衆のメンタリティに反応しているだけの人もいる。例えば、少し前までは、大学の卒業生は皆MBAを目指したものだ。かく言う私も、同じ罪を犯している。GMAT(※訳註1)のテストを受け、数回の不合格を経て、私はその学位を本当に欲していないことに気づいたのだ。最終的には、一連の不合格は私にとって最高の出来事となった。というのも、その後、最終的にデータサイエンスを選択肢の一つとして見つけたのだから。データサイエンスを始めてみると、私は難しい数学が大好きで、データサイエンスを使ってビジネスの問題解決に役立つ様々な方法があることにも気づいたのだった。
今日、私が思うにデータサイエンスは、かつてMBAが持っていたのと同じくらいの地位を持っている。
多くの人がデータサイエンスをやりたいと思っているが、そんな人々はこの職種に実際に要求されることを知らない。その結果、多くの人がデータサイエンティストと名乗り、多くの間違った意思決定を下している。実のところ、この職業に就こうと考えている人の多くは、データサイエンスが何であるかさえ知らないのだ。
今日では、非常に多くの資料が入手できるようになったことで、データサイエンス全体が民主化された。最高の講師陣が提供する多すぎるほどのオンライン講座は、基本的なものから上級者向けのものまで幅広くあり、コードを数行書くだけでモデルを作成できるパッケージも簡単に見つけることができる。
データサイエンスを学び、実践するためのリソースが非常に多くあるという事実を、私は純粋に気に入っている。しかし、こうしたデータサイエンスの民主化は、それ自体に関する問題を生み出している。この記事では、これらの問題のいくつかと、それらがデータサイエンス業界に与える悪影響について簡単に見ていきたいと思う。
GMATの試験内容は分析的論述、言語能力、数学的能力から構成された問題を約3.5時間以内に回答する。同試験は、常設試験会場で実施される。
・・・
自動化されたデータサイエンス?
多くの自動化機械学習パッケージはデータサイエンスの民主化を目指している。こうしたパッケージはモデルのリポジトリを提供し、ハイパーパラメータのチューニングプロセスを自動化し、時にはモデルを本番環境に投入する方法も提供している。このようなパッケージが利用できるようになったことで、多くの人がデータサイエンスは完全に自動化され、データサイエンティストの必要性を完全に排除できるとも考えるようになった。あるいは、プロセスが自動化できない場合でも、これらのツールを使えば誰でもデータサイエンティストになれるのではないか、と思うにいたった。
以上のような一連のデータサイエンス不要論に対して、私は心から同意しかねる。自動化機械学習パッケージが生成するコードベースが役に立つと感じたこともあるが、そうしたコードベースは純粋にコーディングの観点からしかデータサイエンスをとらえていない。
私の考えでは、データサイエンスにはモデリング以外にも多くの作業が含まれているのだ。
データサイエンスの仕事には、目の前の問題を理解して特定し、適切な評価指標を設定することが含まれている。また、プロジェクトの収益性を分析する必要もある。多くのビジネス案件では、ボトムラインにポジティブな影響を及ぼさないプロジェクトにはお金を使いたがらない。既存のデータを利用することもできるが、時には問題を解決するためにデータを収集するための新しいデータパイプラインを設定する方法を考え出す必要があるかもしれない。データパイプラインを設定するような時には利害関係者と話し、問題の全体的な理解を得る必要がある。また、データサイエンティストは、既存のモデルからより多くのパフォーマンスを引き出すために、データマンジングや特徴量の作成を行うことができる必要がある。モデルのテストとフィードバックループを設定する段になると、顧客との終わりの見えない話し合いが求められ、プロジェクトごとにかなり特殊な作業になる。ただコードを実行しているだけの人は、自動化機械学習で使用されたモデルの背後にあるものを理解していないため、このような議論に付加価値を与えることができないかも知れない(※訳註2)。
さらにドメイン知識の問題が生じる。小売業の領域では通用するプロセスが、わずかな変更が顧客に大きな金銭的損失をもたらすこともある金融業の領域では通用しないことがある。ドメイン知識と取り組んでいるビジネス案件に関する理解が必要となるため、自動化できないものもある。
さらに重要なことは、自動化されたパイプラインは、プロジェクトがうまくいかなかったり、モデルが本番環境で失敗したりしても、責任を負うことができないことだ。
優れたデータサイエンティストは、製品に問題が発生したら、その問題の解決策を見つけ出そうとしたり、問題を鎮静化するために取り組んでいるプロジェクトに特化した機械学習パイプラインを作ろうとしたりするだろう。
- 問題の定義:機械学習によって解決すべき問題を定義する。
- 訓練方針の策定:時間が経過すると性能が劣化する恐れのあるモデルに対しては、リアルタイムの訓練を検討する。
- 評価:データセットを訓練用とテスト用に分割する。「良い結果」とは何かも定義する。
- 特徴量の調整:機械学習モデルの精度を最大化するために特徴量をチューニングする。
- モデリング:モデルのアーキテクチャを設計し、ハイパーパラメータをチューニングする。
- 実験:できるだけ早くプロトタイプを試作して製品環境に実装して、フィードバックを得る。
以上の業務のうちでコーディングに直接的に関係するものは、「モデリング」であろう。それゆえ、Agarwal氏が考える機械学習システムを構築するプロセスにおいては、コーディング以外の業務のほうが多いと言える。
・・・
コード駆動者のメンタリティ
私は「新米データサイエンティスト」とでも呼べる人々に懐疑的になっている。ほぼ毎日のように、データサイエンティストと名乗る人に出会うのだが、彼らはただの自信過剰なコード駆動者に過ぎない。「コード駆動者」とはコードの背後で何が起こっているのかを理解せずにそれを実行しているだけの人のことを指している。今は多くの学術機関や研究所がブートキャンプベースのコースを提供しているので、コード駆動者に溢れかえっている。
私はXYZ instituteなる認定コースとABC academyなるブートキャンプのどちらを受講すべきか、という質問をよく受ける。私の答えはどちらでもない。私が見た限りでは、データサイエンティストを大量に輩出することを約束しているこれらの機関は、主に金儲けのためのビジネスをしているだけなのだ。結局のところ、数台のノートPCを使って誰かのコードを実行するだけでは、本当のデータサイエンティストにはなれない。
以上のように主張したからといって、コード主体の学習を否定している、と誤解しないでほしい。もし誰かが、最初にコードを実行してから、その背後にある原理について深く理解するというトップダウンのアプローチで最もうまく学ぶのであれば、それは全く問題ない。しかし、データサイエンスはコードを実行する以上のものなのだ。すべてのコードの背後にある数学と理論を本当に理解するまでは、データサイエンスをマスターしたことにはならない。
・・・
ダニング・クルーガー効果
何らかのスキルを学習する時、無知の状態から何かを初めて達成できた時、初学者は自信過剰な「愚かの極みの頂点(Peak of “Mount Stupid”)」に陥る。その後、実はほとんど知らないことを理解すると、初学者は自信を失って「失望の谷(Valley of Despair)」に落ちる。失望の谷から抜け出して学習を続けると、学習に応じてスキルと自信が向上する「啓蒙の傾斜(Slope of Enlightenment)」を登っていく。そして、初学者を指導できるほどにスキルが向上すると、スキルに裏打ちされた確固たる自信を抱く「持続可能の台地(sustainability of Plateau)」に至る。
ダニング・クルーガー効果とは認知バイアスの一種(※訳註4)で、あるテーマについて多少の知識を持っている人が、いかにわずかしか知らないことに気づいていないが故に自分の能力を過大評価してしまうことである。私は、データサイエンスの現場で常にこの現象を目の当たりにしている。実際、この分野では他のどの分野よりも顕著かも知れない。
私はダニング・クルーガー効果を初心者効果と考えるようにしている。この効果は、新しいスキルを習得する初期の段階で人々を悩ませる問題なのだ。私の見解では、データサイエンティストのキャリアをめぐる旅には以下のような3つのステージがある。
- ダニング・クルーガー効果の段階 – 最初のモデルを作成し、データサイエンスについて知るべきすべてのことを知っていると思っている。
- 「私は何も知らない」段階 – 会議に行ったり、同僚と話したりしていると、突然学ぶべきことがたくさんあることに気づく。
- 「生涯学習」の段階 – 導入されたばかりの知らないことが常にあるという事実に屈服し、データサイエンスを追求するには生涯学習が必要だと悟る。
さて、ダニング・クルーガー効果は、ほとんどの初心者が直面するものだ。最初のプログラムを完璧に実行すると、初学者は喜びで有頂天になるものだ。そして、この段階で有頂天になっても全く問題ない。問題は、初学者がこの段階を離れて次の段階へとタイムリーに進むことができないときにやってくる。私は、データサイエンスの奥深さを理解せずに、セクシーでエキサイティングなものだと思って、間違った期待を持ってデータサイエンスの世界に入ってしまったために、この段階で行き詰ってしまう人を何人か見てきた。このようなタイプの人たちは、既存のモデルを使って問題を解決できると考え、数学を理解しなくてもなんとかなると考えがちだ。
例えば、私は最近、この分野で2年の経験を持つ男性を面接した。彼は自信に満ちているように見えた。彼は仕事でデータサイエンスを使っていたし、いくつかのKaggleプロジェクトにも携わっていた。面接の最初の数分は本当にうまくいった。彼は十分に高いレベルの概念を説明してくれたので、私は彼がプロジェクトで使った技術に関する数学的理解をもう少し深く掘り下げてみることにした。そこで状況が変わった。私は彼に対数損失関数について教えてくれと頼んだ。彼が「その質問については、対数損失関数を使うためのパッケージがあります」と言ったとき、私はこの人が第一段階から決して抜け出せないことを実感したのだった。
・・・
おわりに
既製のパッケージやコースが利用できるようになったことで、データサイエンスの分野は民主化されつつある。しかし、データサイエンスの仕事とは実地の経験を積み、人々と交流し、様々な観点から話を聞けるようになることにとどまらない。
データサイエンスは純粋なコーディングの仕事だと思っている人もいるかも知れないが、データサイエンスを極めるとはコーディングのスーパースターになることではない。
データサイエンスとはビジネスに役立つ適切な問題を見つけ出し、それを解決するための最善の方法を考え出すことだ。そのためには、ドメイン知識、謙虚さ、少しの数学、そして何よりも重要なことは、生涯学習する意欲が必要なのだ。
・・・
もし読者諸氏がデータサイエンスについて学びたいのであれば、Andrew Ng氏によるこの素晴らしい講座をお勧めします。この講座から私のデータサイエンスのキャリアは始まった。
読んでくれてありがとう。今後はもっと初心者向けの記事を書いていこうと思っています。Mediumで私をフォローしたり、記事の公開が通知されるように私のブログに登録したりしてください。いつものように、私はフィードバックや建設的な批判を歓迎しており、私のTwitterアカウント@mlwhizで交流することもできます。
最後に小さな免責事項 – 知識の共有自体は決して悪い考えではありませんが、私が書いた記事のなかには関連するリソースへのいくつかのアフィリエイトリンクがあるかも知れません。
この記事は、最初にここで公開されました。
原文
『Don’t Democratize Data Science』
著者
Rahul Agarwal
翻訳
吉本幸記(フリーライター、JDLA Deep Learning for GENERAL 2019 #1取得)
編集