Evalml: データチェックAPI

作成日 2019年09月09日  ·  11コメント  ·  ソース: alteryx/evalml

全てのコメント11件

外れ値を検出します(そして、オプションで削除しますか?)

ガードレールを適用するブランケットとモデルまたは問題固有のガードレール?

この叙事詩を、Data Check APIプロジェクト(以前は「GuardRailsAPI」と呼ばれていました)を参照するように転用しています。

@ angela97lin@ kmax12と私は、このプロジェクトをどうするかについて話し合うために会いました。 我々は決めました:

  • プロジェクトスコープの変更

    • エラー/警告が発生するデータチェックを指定するためのAPIを設計する

    • これらのエラー/警告に基づいて行動を起こすことは今のところ範囲外であり、将来のプロジェクトになる可能性があります

  • 名前を「ガードレール」から「データチェック」に変更します。これは、よりわかりやすいと思われるためです。
  • @ angela97lin、古いガードレールの設計ドキュメントをアーカイブし、新しいスコープで新しい

@ angela97lin新しいデザインドキュメント読み終えたところです。 良いもの! それは素晴らしく見えます。

コメントや提案をいくつか残しましたが、私の観点からは、これは実装の準備ができています! エキサイティングな👏

私のコメントを確認する機会があったら、次のステップは、実装計画の各タスクの問題を作成し、それらをこの叙事詩に添付することです。 また、この叙事詩に現在ある既存の問題をクリーンアップしましょう。 一見すると、アイスボックスに移動するか、閉じることができると思います。

@ angela97linと私は、新しい設計ドキュメントをもう一度確認し、いくつかの設計の詳細を明らかにしました。 前と同じ:次のステップは、問題を作成し、この叙事詩に添付することです。 とてもかっこいい!

#509から:

文字列型のimpute_strategyとして「mean」/「median」を使用する人は望ましくありません。 これを説明するために、ある種のデータチェックを追加するのは良いことでしょうか?

#504から:_check_multiclassをデータチェックに移動します:)

@ angela97linと私はデザインをもう一度見直し、最終的な調整を行いました。 実装計画を更新し(現在、合計4週間の範囲)、この叙事詩に添付された問題を提出しました。

このプロジェクトは実装の準備ができています!

@ angela97linは月曜日にこのプロジェクトを開始する予定です。 2020年5月のリリースに間に合うように、完成予定日は5月25日月曜日です。

また、この叙事詩の古い問題をクリーンアップしました。 将来の機能としてアイスボックスに起動されたものもあれば、このエピックでブロックされたものとしてマークされたもの(データチェックによって修正されるバグ)もあります。

@ angela97linと私はちょうど議論しました:automl検索を直接(Pythonで)使用するユーザーにデータチェック結果を取得する方法を設計に含めませんでした。

そのための2つのオプションについて説明しました。
1) AutoSearchBase.search {'status': 'complete'}ようなものを返してもらい、データチェックが失敗した場合は、 {'status': 'error', 'data_checks': [..]}含めることができます。
2) AutoSearchBase.search結果を内部的に保存させ、 latest_data_check_resultsゲッター(最終的な名前として意図されていない)を公開してそれらを取得します。 次に、例外を発生させて、問題があったことを明確に示します。

2番目のオプションの方が好きなので、それを使用します。 これは、a)エラーコードの例外、b) AutoSearchBaseオブジェクトを、1回限りのオブジェクトではなく、状態のコンテナにするという既存のデザインパターンとより一致しているように感じます。

実際の検索を実行するメインのwhileループの直前にAutoSearchBase.searchに入ることを目的として、通話中にモックアップしたコードを次に示します。

        data_check_results = checks.validate(X, y)
        # option 1
        if len(data_check_results) > 0:
            logger.error('Data checks found problems')
            return {'status': 'error', 'data_check_results': data_check_results}
        # option 2
        if len(data_check_results) > 0:
            logger.error('Data checks found problems')
            self._latest_data_check_results = data_check_results
            raise SearchException('One or more data checks failed. Look at latest_data_check_results')

        <strong i="20">@property</strong>
        def latest_data_check_results(self):
            return self._latest_data_check_results

@ angela97lin :現在の計画は、今日から1週間後に5月のリリースを行うことです。 それに間に合うように#709と#370をマージできると思いますか? そうでない場合、どのくらいの時間が必要だと思いますか? #710を次のリリースに簡単にパントできます。

@ angela97linは、5月のリリースでこのほとんどを

このページは役に立ちましたか?
0 / 5 - 0 評価