2017-04-07から1日間の記事一覧

clojureのアロー演算子

合成関数がつくれる 便利かも (->> (cons 1 nil) (cons 2) (cons 3) (cons 4) (cons 5)) (5 4 3 2 1) >は最初の引数に渡す (-> (- 2.1 1) println) 1.1 nil

ClojureのIncanterで滑らかにプロットする

interpolationをつかう https://github.com/incanter/incanter/wiki/Interpolation 対象とするソフトマックス関数の定義 (defn softmax [a] (let c' (apply max a) c (repeat (length a) c') exp_a (exp (minus a c)) sum_exp_a (sum exp_a) y (div exp_a su…

Clojureで引数の型にしたがって関数をオーバーロードする

defmultiをつかう http://killingout-n-bita.hateblo.jp/entry/2015/03/21/122739 (defmulti pre-process class) (defmethod pre-process java.lang.Long [a] (cons (double a) nil)) (defmethod pre-process java.lang.Double [a] (cons a nil)) (defmethod…

Clojureでソフトマックス関数を実装する

(defn softmax [a] (let c' (apply max a) c (repeat (length a) c') exp_a (exp (minus a c)) sum_exp_a (sum exp_a) y (div exp_a sum_exp_a)] y)) テスト (let [a (matrix (map #(- (* 1/10 %1) 5) (range 100)))] (view (time-series-plot a (softmax a)…