          betas (c/to-vect (c/mmult (pseudo-inverse-matrix H) T))]
      (Model. ass bs betas))))
 
-(defn predict  
+(defn predict
   ([model xs]
    {:pre [(instance? Model model) (coll? xs)]}
    (predict (:ass model) (:bs model) (:betas model) xs))

    (and (= pred -1) (= fact -1)) (assoc exp :TN (inc (:TN exp)))
    (and (= pred -1) (= fact 1)) (assoc exp :FN (inc (:FN exp)))))

(defn evaluation
  ([results expdata facts]
   {:pre [(coll? results) (coll? facts) (map? expdata)]}
   (let [numd (count results)]
     (->> (pmap #(= %1 %2) results facts)
          (filter true?)
          (count)
          (#(/ % numd))))))

(defn select-count
  ([cond coll]

                   :Accuracy 0.0 :Recall 0.0 :Precision 0.0 :TP 0 :FP 0 :TN 0 :FN 0 }]
     (-> (train-model sample L)
         (#(pmap (fn [feature] (predict % feature)) (:features test)))
         (#(evaluation (:classes test) % exp-data))))))

(defn cross-validate
  ([dataset L k]
