LoginSignup
2
4

More than 5 years have passed since last update.

データサイエンスの面接において知っておくべき21のQ&A(日本語訳その5「アルゴリズムがよくなったことをどう証明しますか?」)

Posted at

Originally published in KDnuggets: 21 Must-Know Data Science Interview Questions and Answers
KDnuggetsより正式に和訳を書くことの許可を得ました。
Gregory-san thank you for the approval

これまでと同じように全記事へのリンク張っていくことに限界を感じ、まとめページを作りました。他の質問はこちらから。

5.How can you prove that one improvement you've brought to an algorithm is really an improvement over not doing anything?

和訳すると「アルゴリズムに対して行った一つの改善が、何もしなかったことに比べて改善されているか、どのように証明しますか?」となります。

原文

Data scientists do not let their human emotions overrun their logical reasoning. While the exact approach to prove that one improvement you've brought to an algorithm is really an improvement over not doing anything would depend on the actual case at hand, there are a few common guidelines:

データサイエンティストは自分たちの持っている論理的な理由を他の人々の感情に流されてはいけません。いくつかの一般的なガイドラインによって、アルゴリズムに対して行った一つの改善が、何もしなかったことに比べて改善されているか正しく証明します。

原文

  • Ensure that there is no selection bias in test data used for performance comparison
  • Ensure that the test data has sufficient variety in order to be symbolic of real-life data (helps avoid overfitting)
  • Ensure that "controlled experiment" principles are followed i.e. while comparing performance, the test environment (hardware, etc.) must be exactly the same while running original algorithm and new algorithm
  • Ensure that the results are repeatable with near similar results
  • Examine whether the results reflect local maxima/minima or global maxima/minima
  • 性能比較のために使用されるテストデータには選択バイアスが存在しないことを確認します
  • テストデータは、現実のデータの象徴であるために十分な多様性を持っていることを確認します(オーバーフィッティングを回避するのに役立ちます)
  • 「コントロール実験」の原則が守られていることを確認し、すなわち元のアルゴリズムと新しいアルゴリズムのパフォーマンス比較を実行する場合、テスト環境(ハードウェアなど)が元のアルゴリズムを実行しているときとまったく同じであることを確認します
  • 同様の結果で再現可能であることを確認します
  • 結果が極大値/極小値または最大値/最小値を反映するかどうかを調べます

原文

One common way to achieve the above guidelines is through A/B testing, where both the versions of algorithm are kept running on similar environment for a considerably long time and real-life input data is randomly split between the two. This approach is particularly common in Web Analytics.

上記のガイドラインを満たす1つの一般的な方法はA/Bテストです。A/Bテストでは、実データを無作為に2つに分割して、新しいアルゴリズムと旧来のアルゴリズムでそれぞれに対して実行される状態を、同様の環境で長時間にわたりテストします。A/Bテストはウェブ解析では特に一般的です。

まとめ

今回のパートで紹介されているガイドラインはとても当たり前の内容ですが、その手前の何よりも感情に論理的な理由を流されてはいけないというのが一番ポイントだと思います。まだまだ日本においては、データをビジネスに活用するという文化は根付いておらず、データサイエンティストの地位もとても低いため、皆さん苦労されているかと思います。

2
4
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
4