問題タブ [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.
image-processing - デシジョンツリーの操作
私はtl;drを知っています。
大量のくだらないコードに煩わされることなく、私の問題を説明しようと思います。私は学校の課題に取り組んでいます。スマーフの写真があり、前景の背景分析でそれらを見つける必要があります。すべてのデータ(HSVヒストグラム)1つの単一ノードを持つJavaのディシジョンツリーがあります。次に、ツリーを分割するのに最適な属性(ヒストグラムデータから)を見つけようとします。次に、分割を実行し、両方のノードツリーに分割されたデータを使用して左右のサブツリーを作成します。ジニ係数を計算できるように、すべてのデータは引き続きメインツリーに保持されます。
したがって、スマーフを26分間分析した後、私のPCには分割やその他のデータを含む巨大なツリーがあります。今私の質問は、新しい画像を分析し、どのピクセルが「スマーフピクセル」である可能性があるかを判断する方法について、誰かが私にグローバルなアイデアを与えることができるかということです。新しいスマーフのHSVヒストグラムを使用してデータポイントの新しい配列を生成する必要があることはわかっています。次に、生成されたツリーを使用して、どのピクセルがスマーフに属するかを判断する必要があります。
誰かが私にこれを行う方法についての指針を与えることができますか?
いくつかの追加情報。
すべてのディシジョンツリーオブジェクトには、分割するのに最適な属性、分割する値、およびジニ係数を持つSplitオブジェクトがあります。
追加情報を提供する必要がある場合は、聞きたいです。
java - Eclipseプラグイン-ノードと接続+コード生成
デシジョンツリー/ダイアグラムをモデル化するEclipse拡張機能を作成したいと思います。実際のモデリングは、グラフィカルインターフェイス(ノード、接続など)を使用して行われます。このプラグインで、ノードとその相互接続に基づいてコードを生成したいと思います。基本的なモデルクラスの準備ができています。ただし、私の図は非常に大きく、コードだけですべての接続を管理することは困難です。GUIを使用して図全体を作成すると思います。接続をダブルクリックすると、そのメソッドの一部をオーバーライドして、匿名のサブクラスを作成できるようにしたいと思います。
同様のプラグインでGEFが使用されていることがわかりました。私の目標プラグインはGEFで「実行可能」ですか?何かアドバイスはありますか?
java - ダイアグラムモデルからJavaコードを生成する
私のアプリケーションでは、決定図(ノード+接続)をモデル化します。モデルクラスを用意しました(2つの基本クラス:Node
およびConnection
特別な場合の+サブクラス)。この図は非常に大きくなり、コードを介してのみすべての接続とノードを追跡することは容易ではありません(そして将来のメンテナンスを考慮に入れます)。モデルクラス(つまり、ノードのタイプ、接続のタイプ)でフィードし、それを使用してダイアグラムをグラフィカルに「描画」し(ノードと接続を作成)、生成できるツール(Eclipseプラグインまたはその他)があるかどうか疑問に思いました。ダイアグラムのコード?
モデルクラス::このノードからのすべての接続
Node
が含まれます:、List<Connection>
Connection
Node from
Node to
編集:Node
必要なすべてのノードと接続(およびConnection
オブジェクト)
を初期化し、ヘッド/開始ノードを返すメソッドを生成したいと思います。このメモリ内構造は、アプリケーションが決定を行うときにアプリケーションによってトラバースされます。
r - party パッケージの ctree 関数 - 分割変数のリストを簡単な方法で取得する方法
を使用しているときに、ツリーの分割変数のリストを取得しようとしていますctree
。
psplit を使用して、特定のノードの特定の分割変数を取得する方法を見つけました。しかし、ツリー全体の分割変数のリスト全体を取得したいと思います。
取得する簡単な方法はありますか?
algorithm - シミュレーションでの決定を最適化するための最良のアルゴリズム
同時に行われる決定を最適化して、妥当な時間で迅速な結果を見つけるための最良のアルゴリズムを探しています。同時実行は多くの「ティック」を実行し、場合によっては決定を下す必要があります。最終的には目標状態に到達します。(非常に悪い決定をした場合、目標状態に到達することは決してありません)
多くの目標状態があります。ティック数が最も少ない目標状態を見つけたい(ティックは実際の生活ではおよそ1秒に相当する)。基本的には、できるだけ数秒で目標に到達するためにどの決定を下すかを決定したい。
問題のあるドメインに関するいくつかのポイント:
- すぐに、解決策につながる一連の選択肢を生成できます。最適ではありません。
- 何が適切な決定であるかを判断するための合理的なヒューリスティック関数があります
- ノードからゴールまでの最小の時間コストを決定するための合理的な機能があります。
アルゴリズム:
- この問題を約10秒間処理してから、可能な限り最善の答えを出す必要があります。
- 私はA*が私に最適な解決策を見つけるだろうと信じています。問題は、決定木が非常に大きくなり、十分な速さで計算できないことです。
- IDA *は、10秒で最初のいくつかの良い選択肢を与えてくれますが、ゴールまでの道が必要です。
現時点では、目標への既知の最適ではないパスから始めて、おそらくシミュレートされたアニーリングを使用して、10秒以上かけて改善を試みることを考えています。
この種の問題を解決するために研究するのに良いアルゴリズムは何でしょうか?
artificial-intelligence - 分類アルゴリズムのパラメータ最適化
異なるアルゴリズムには異なるパラメーターがあると言われています。ツリー決定アルゴリズムと単純なベイジアンアルゴリズムの場合、それぞれのパラメーターは何ですか? 誰かが私に例を与えることができます..
この場合、デシジョン ツリー アルゴリズムを使用して実行されるデータに対して 5 倍の交差検証を行うことは、ベイジアンとは異なりますか?
また、パラメーターの最適化のために、5 分割の交差検証を行います。wekaを使用してパラメータの設定値キーを決定するためにこれを自動的に行う方法はありますか?
r - rpart を使用して回帰木で対応するノードを検索する
私はRにかなり慣れていないので、かなりばかげた問題に悩まされています。
分類と予測を行うために、 rpartパッケージを使用して回帰ツリーを調整しています。
R のおかげで、キャリブレーション部分は簡単に実行でき、制御も簡単です。
大きなデシジョン ツリーを調整した後、特定のデータ サンプルに対して、対応する新しいデータのクラスター (したがって予測値) を見つけたいと考えています。機能はニーズにぴったりのようです
。predict
ただし、この方法では、新しい要素の予測比率を取得するだけで、新しい要素が属する決定木の葉predict
を取得する方法が見つかりません。
比率を返すには、予測メソッドがその葉を見つけたに違いないので、取得するのはかなり簡単だと思います。
引数を介して predict メソッドに与えることができるいくつかのパラメーターがありますがclass=
、回帰ツリーの場合、すべて同じもの (決定ツリーのターゲット属性の値) を返すようです。
決定木で対応するノードを取得する方法を知っている人はいますか?
メソッドを使用してノードを分析することでpath.rpart
、結果を理解するのに役立ちます。
java - リストのすべての要素をチェックする (Drools Expert)
Drools Expert でルールを記述しようとしています。when
ルールの部分では、Application
オブジェクトのいくつかのプロパティをチェックします。このオブジェクトにはリストが含まれており、このリスト内の SomeOtherType のすべてのオブジェクトに一連のルールが適用されるかどうかを確認したいと思います。ルールは、そのリスト内のすべてのオブジェクトに対して制約が有効な場合にのみ実行する必要があります。
machine-learning - 自動法律質問および応答システム
ユーザーがルールを定義し、質問をして、一連のルールに従ってステートメントが合法か違法かを確認できる Web アプリケーションを実装しようとしています。私が考えているドメインは、小さなコミュニティやクラブのルールです。
たとえば、考えられるルール セットに次のルールが含まれているとします。
そして、誰かが尋ねます"Can I park my Honda here?"
システムは、最初に次のような質問と回答ツリーに従って回答を試みます。
ユーザーが各ノードで回答を選択すると、システムは「最終」回答を表すリーフ ノードに到達するまで、回答に従って次の質問をします。
各ノードで、ユーザーはシステムに、質問で使用される用語の説明または定義を求めることができます。説明は、用語を含む一連のステートメントであり、それ自体でさらに説明または定義できます。
十分な経験が得られると、システムは最初の「ホンダは車ですか?」などの特定のノードを自動的にスキップできます。「駐車場」の文脈で「ホンダ」は常に「車」を意味することを学習したとき。
このツリーには示されていませんが、一部のツリーには「未定義」のリーフ ノードが含まれる場合があります。これは、ルールがツリーを完全に作成するのに十分な範囲を提供しなかった場合を表し、明確化または修正のために質問を人間の専門家にリダイレクトする必要があります。ルール。
目標は、データベースでルールを定義し、必要に応じてこれらの Q&A ツリーを動的に生成することです。
ここに示されているルールと質問は自然言語として表されていますが、初期システムは代わりに記号論理を使用します。この論理解析に加えて NLP を実行すると、初期システムが非常に複雑になるためです。ルールは最初は自然言語として起草されますが、システムに入力される前に手動で個別のルールに変換されます。質問は単純な自然言語のステートメントとして表示され、回答は多肢選択式になります。
これは実用的なプロジェクトのように見えますか? 先行技術はありますか?これまでのところ、このようなものについて読んだことはありませんが、どの検索キーワードがこのシステムを適切に説明しているかわかりません.
どのツールを使用すればよいですか? 質問をルールに一致させ、質問の範囲を絞り込むために、意思決定ツリーまたはある種のエキスパート システムを使用する必要があるかどうかはわかりません。