この記事はQuadアドベントカレンダー25日目の記事です。
Accelerate Frameworkとは
iOSには意外と便利なライブラリが含まれていました。このフレームワークはswiftとobjective-c両方で利用できます。
Accelerate Frameworkは、数学的計算や画像計算を簡単に扱えるもののようです。 画像処理や信号処理などで利用されることが多いようです。今なら、機械学習でも利用されるのではないでしょうか。
試してみる
例えば、ベクトルとベクトル(単精度)の定数倍を計算する関数があります。
これを利用してみます。
簡単なベクトルを用意します。
var x:[Float] = [ 1, 2, 3 ]
var y:[Float] = [ 3, 4, 5 ]
/// 3はベクトルの次元
/// 10は定数倍の値
/// 1はxのstride
/// 最後の1はyのstride
/// 10x+yという式になります。
cblas_saxpy(3, 10, &x, 1, &y, 1)
dump(y)
このように、便利な関数が多数あります。追記予定...