                   (fn [k]
                     [k
                       (sort-by :id
-                        (time2 (str "group-clusters-k=" k)
                         (kmeans base-clusters-proj k
                           :last-clusters
                             ; A little pedantic here in case no clustering yet for this k

                                                       (dimension-count old-val 0)) 0))]
                  (+ (* forget-rate old-val) (* learning-rate new-val))))]
    (fn [pca']
      "Actual updater lambda"
      {:center (learn (:center pca') (:center part-pca))
       :comps  (mapv #(learn %1 %2) (:comps pca') (:comps part-pca))})))


      
      :bucket-dists
            (plmb/fnk [base-clusters-proj]
              (named-dist-matrix base-clusters-proj))

      ; Compute group-clusters for multiple k values
      :group-clusterings
