 (def X (map (partial cons 1) (take 235469 mys-features)))
 (def beta (repeat 23 0))
 
-(defn one-minus
-  [coll]
-  (map #(- 1 %) coll))
+(defn feature-vec
+  [n]
+  (map (partial cons 1)
+       (for [x (range n)]
+         (take 22 (repeatedly rand)))))
+
+(defn label-vec
+  [n]
+  (for [x (range n)] (if (> (rand) 0.5) 1 0)))
 
 (defn scaled-vector
   [scalar coll]

       feature-seqs))

(defn score-seq
  "returns the scores for each parameter in the analysis"
  [beta-seq labels features]
  (let [prob-seq (probability-calc beta-seq features)]
    (i/mmult (i/trans features) (map - labels prob-seq))))

      (if (zero? iter)
        beta
        (recur (let [inc-beta (beta-update beta labels features rdg-cons)]
                 (map + beta inc-beta))
               (dec iter))))))

;; Ultimately, this is what we'd like to run:
;; (logistic-beta-vector (label-vec 100000) (feature-vec 100000) 0.00000001)

;; In the meantime, this is a problem ...
;; (def X-rand (feature-vec 100000))
;; (def y-rand (label-vec 100000))
;; (time (total-log-likelihood beta y-rand X-rand))
;; =>"Elapsed time: 3320.955 msecs"

;; (def X-rand (feature-vec 100000))
;; (def y-rand (label-vec 100000))
;; (time (total-log-likelihood beta y-rand X-rand))
;; ... takes way, way longer than 33200 msecs (10 x 3320 msecs)
