インストール
Nimで行列演算とかできるNeoをインストールする手順です。
普通にnimble install neo
でインストール出来るかと思いきゃ、依存パッケージのnimblas@0.2.2
がnimのバージョンを0.19.9以上に指定しており、入るはずがありません(現在のNimのバージョンは0.19.4)。
一つ前のバージョンのnimblasを入れてあげれば解決します。
**最新のneo 0.2.5ではnimble install neo
だけでインストールできました。**もし問題があるようなら以下の手順を試してみてください。
# nimblas 0.2.1をインストール
nimble install nimblas@0.2.1
# neoをインストール
nimble install neo
これでneo自体のインストールは完了です。
しかし多くの環境では、依存ライブラリのblas等が入っていないので、こちらの記事を参考にインストールしてください。
テスト
試しに、ランダムなMatrix(行列)a, bを作り、転置行列を求めたり掛け算をしてみましょう。
test.nim
import neo
let a = neo.randomMatrix(2, 3)
echo "a:"
echo a
# a.Tで転置行列を求める
echo "a.T: "
echo a.T
# 行列の掛け算(Numpyのdotに相当)
let b = neo.randomMatrix(a.N, a.M)
echo "b:"
echo b
echo "a * b:"
echo a * b
結果が以下のようになっていれば成功です🎉
(a, bの値はランダムです)
a:
[ [ 0.2326961497609559 0.3333379470197706 0.4437264946689483 ]
[ 0.8228467011541094 0.9894961846897405 0.07581602342631522 ] ]
a.T:
[ [ 0.2326961497609559 0.8228467011541094 ]
[ 0.3333379470197706 0.9894961846897405 ]
[ 0.4437264946689483 0.07581602342631522 ] ]
b:
[ [ 0.5936563635008223 0.8244128746481869 ]
[ 0.195534693152861 0.6844019291752474 ]
[ 0.5258890850057507 0.4899364645980169 ] ]
a * b:
[ [ 0.4366716035287096 0.6373726257982174 ]
[ 0.721839832363471 1.392723546483812 ] ]