問題タブ [decision-tree]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
algorithm - 相互検証と決定木を理解するのに役立ちます
デシジョン ツリーとクロス検証について読んでいて、両方の概念を理解しています。ただし、クロス検証はデシジョン ツリーに関連しているため、理解に苦慮しています。基本的にクロス検証を使用すると、データセットが比較的小さい場合にトレーニングとテストを交互に実行して、エラーの推定を最大化できます。非常に単純なアルゴリズムは次のようになります。
- 必要な折り数を決定します (k)
- データセットを k 個のフォールドに分割します
- トレーニング セットに k-1 フォールドを使用してツリーを構築します。
- テスト セットを使用して、ツリーのエラーに関する統計を推定します。
- 結果を後で保存する
- 手順 3 ~ 6 を k 回繰り返し、テスト セットの別の折り畳みを除外します。
- 反復全体でエラーを平均して、全体的なエラーを予測します
私が理解できない問題は、最後に k 個の決定木があることです。それらは同じように分割されない可能性があるため、すべてわずかに異なる可能性があります。どの木を選びますか? 私が持っていた1つのアイデアは、エラーが最小限のものを選択することでした(ただし、与えられたフォールドで最高のパフォーマンスを発揮したというだけでは最適にはなりません-階層化を使用すると役立つかもしれませんが、私が読んだことはすべて、それは少ししか役に立たないと言っています)。
相互検証を理解しているので、ポイントは、後でプルーニングに使用できるノード統計で計算することです。したがって、実際には、ツリー内の各ノードには、与えられたテスト セットに基づいて計算された統計があります。重要なのはノード統計のこれらですが、エラーを平均化する場合です。各ツリーで分割する対象が異なる可能性がある場合、k 個のツリーにまたがる各ノード内でこれらの統計をどのようにマージしますか。
各反復で全体的なエラーを計算するポイントは何ですか? それは剪定の際に使えるものではありません。
この小さなしわの助けをいただければ幸いです。
oop - DDDを行うときに「デフォルト」にどのように対処しますか
DDDを実行するときに、人々が決定木をどのように処理するかを知りたいと思います。たとえば、特定のタイプの新しいインスタンスを永続化する場合、いくつかの「デフォルト」の関連付けを構築する必要があるという要件があります(かなりの数)。ただし、ユーザーは後で自由に変更できます。では、デシジョンテーブルを作成する場合、ドメインでこれをどのように表現しますか?これは保険ドメインにあるため、たとえば、1つのオプションを選択すると、関連するすべての「デフォルト」の特典、オプションなどがポリシーに追加されますが、ユーザーは後で自由に変更できます。
algorithm - このビジネス ロジックの意思決定ツリーを表すには、どのような種類のグラフを使用しますか?
通常、このビジネス ロジックをグラフで表すにはどうすればよいでしょうか。
有向非巡回グラフですか?グラフの「and」/「or」ロジックをグラフ用語で表すにはどうすればよいですか?
(私は正しいグラフ用語を探しているので、読むことに集中できます。)
machine-learning - 多変量決定木の学習者
多くの単変量決定木学習器の実装 (C4.5 など) は存在しますが、実際に誰かが多変量決定木学習器アルゴリズムを知っていますか?
c# - 決定木ロジックによるプログラムの実現
このシステムは、ゲーム「Think animal」を実現します。
主なユースケースは次のとおりです。
MS SQL Server と C# でデシジョン ツリー ロジックを実装する場合、情報と例をどこで入手できますか? どんな情報も役に立ちます。ありがとう
python - Python を使用して CSV ファイルを解析する (後で決定木を作成するため)
まず、完全な開示:これは大学の課題に向かっているので、コードを受け取りたくありません。:)。私はアプローチをもっと探しています。私は本を読んだことがありますが、まだコードを書いていません。
全体のタスクは、CSV ファイルの内容をインポートし、CSV ファイルの内容から ( ID3 アルゴリズムを使用して) 決定木を作成し、2 つ目の CSV ファイルを解析してその木に対して実行することです。さまざまな CSV ファイルを処理できるようにすることには大きな (理解できる) 好みがあります (列名をハードコーディングすることを許可するかどうかを尋ねましたが、主にそれを排除する可能性があるため、答えはノーでした)。
CSV ファイルはかなり標準的な形式です。ヘッダー行は # でマークされ、列名が表示され、その後のすべての行は単純な一連の値です。例:
現時点では、CSV の解析という最初の部分を解決しようとしています。ディシジョン ツリーの決定を下すには、辞書構造が最も論理的であるように思われます。だから私はこれらの線に沿って何かをすることを考えていました:
ただし、そのようにすると、キーと値の間のマッピングを行う方法がわかりません。リスト内のすべてのディクショナリに対してアクションを実行する方法があるかどうかも疑問に思っています。誰が何を持っている!」・仕組みはあると思いますが、やり方がわからない。
辞書はそれを行うための最良の方法ですか?他のデータ構造を使用して物事を行うほうがよいでしょうか? もしそうなら、何?
.net - SharePointにデシジョンツリーを実装する
SharePointでデシジョンツリーを実装するための最良の方法は何ですか?利用可能なWebパーツはありますか?SharepointのFab40テンプレートのいずれかにデシジョンツリーWebパーツが含まれていますか?検索しましたが、どこにも役立つ答えが見つかりませんでした。提案してください。
code-generation - 文字列からの機械学習とコードジェネレーター
問題: 手動で分類された文字列のセット (または文字列の順序付けられたベクトルのセット) が与えられると、より多くの入力を分類するための categorize 関数が生成されます。私の場合、そのデータ (またはそのほとんど) は自然言語ではありません。
質問: それを行うツールはありますか? ライブラリや脆弱なアカデミック プログラムとは対照的に、合理的に洗練された、ダウンロード、インストール、実行できるようなものを考えています。
(実際の詳細は、あまり一般的ではない回答への回答を制限し、NDA の下にあるため、詳細にこだわらないでください。)
私が見ているものの例として; フィルタリングしたい入力は、ログから取得したコンピューター生成のステータス文字列です。エラー メッセージ (例) は、誰に通知する必要があるか、またはどのようなアクションを実行する必要があるかに基づいてフィルター処理されます。
python - Pythonを使用してバイナリ決定ツリーをトラバースしますか?
Python言語を使用して二分決定木をトラバースする方法。ツリーが与えられた場合、ルートから必要なリーフに移動する方法を知りたい必要なリーフの機能が辞書形式で指定されていると仮定し、機能リストに記載されている詳細を使用して各ノードの質問に答えてルートからリーフに移動する必要があります..デシジョンツリーノードの形式は((質問)(左ツリー)(右ツリー))です。トラバースするときは、各ノードで質問に答え、左または右を選択してリーフまでトラバースする必要がありますか?
programming-languages - 決定木を実装するための言語
デシジョン ツリーを実装するには、どのプログラミング言語を選択すればよいでしょうか? 実装結果は個人利用のみとなりますので、公開可否等は考慮しません。
Octave が良い選択肢だと聞いたことがありますが、決定木の実装に行列ベースの言語が推奨される理由を説明できる人はいますか?