アルゴリズム

決定木 (離散データ用)

概要 エントロピーを最も下げる、データ集合の分割方法を (再帰的に) 得たい 特徴値が連続値の場合は大小比較 (気温が25℃以上とか) 、離散値の場合はそのままカウント が、連続値の場合は前処理によって離散値に変換し直すことができる (離散値) の場合、値…

graphvizを使ってツリー構造をpng画像化できる基本ノードクラス

概要 ツリーを構築でき、構造をpng画像として出力できるノードクラスが欲しい 存在するかもしれないが、作ってみる graphviz、pydotplusを使用した DOMへの敬意を込めてappend_child()というメソッド名をjsから拝借した 良かった点 print_labels()、print_ed…

行と列の入れ替え問題をRubyを使って考える

行列の行と列を入れ替えて任意の行列を作りたい(が可能か?) 要素数が16なのでコードがあったほうが助かる コードのアイデアとしては、列の入れ替えは行の入れ替えの前後で転置(transpose)するかどうかが異なるだけ 以下のような行列を、 a = [ [1, 2, 3, 4],…

懲りもせず兵士の輸送問題をRubyで解く(考える)

この手の問題は手続きというより制約条件から自然に解ける 川渡り問題と同種の問題で、 兵士25人と子供が2人こちら側にいる(とボートが存在する) 兵士を対岸に全員移動させたい 子供はボートに2人乗れるが、兵士は1人しか乗ることができない 何手かかる?とい…

手袋選択問題をRubyで[未完]

手袋選択問題 黒の手袋5組(10枚)、茶3組、灰2組の手袋 ランダムに選ぶ 同色の組が出来上がるまでの確実な枚数を求める 最悪な(意地悪な)パターンを想定する必要がある(発想の転換)→なるだけ組を揃わないように手袋を渡していく (!)19枚の手袋の順列を求めた…