Class: Ai4r::Clusterers::WardLinkageHierarchical
- Inherits:
-
WardLinkage
- Object
- Clusterer
- SingleLinkage
- WardLinkage
- Ai4r::Clusterers::WardLinkageHierarchical
- Includes:
- ClusterTree
- Defined in:
- lib/ai4r/clusterers/ward_linkage_hierarchical.rb
Overview
Hierarchical version to store classes as merges occur.
Instance Attribute Summary
Attributes included from ClusterTree
Attributes inherited from SingleLinkage
#clusters, #data_set, #number_of_clusters
Instance Method Summary collapse
- #build(data_set, number_of_clusters = 1, **options) ⇒ Object
- #initialize(depth = nil) ⇒ Object constructor
- #supports_eval? ⇒ Object
Methods inherited from WardLinkage
Methods inherited from SingleLinkage
Methods inherited from Clusterer
Methods included from Data::Parameterizable
#get_parameters, included, #set_parameters
Constructor Details
#initialize(depth = nil) ⇒ Object
19 20 21 22 23 24 |
# File 'lib/ai4r/clusterers/ward_linkage_hierarchical.rb', line 19 def initialize(depth = nil) @cluster_tree = [] @depth = depth @merges_so_far = 0 super(depth) end |
Instance Method Details
#build(data_set, number_of_clusters = 1, **options) ⇒ Object
30 31 32 33 34 35 36 37 |
# File 'lib/ai4r/clusterers/ward_linkage_hierarchical.rb', line 30 def build(data_set, number_of_clusters = 1, **) data_len = data_set.data_items.length @total_merges = data_len - number_of_clusters super @cluster_tree << clusters @cluster_tree.reverse! self end |
#supports_eval? ⇒ Object
40 41 42 |
# File 'lib/ai4r/clusterers/ward_linkage_hierarchical.rb', line 40 def supports_eval? false end |