数式
OriginalQuad incDay 24

Accelerate Frameworkを試す

この記事はQuadアドベントカレンダー25日目の記事です。

Accelerate Frameworkとは

iOSには意外と便利なライブラリが含まれていました。このフレームワークはswiftとobjective-c両方で利用できます。
Accelerate Frameworkは、数学的計算や画像計算を簡単に扱えるもののようです。 画像処理や信号処理などで利用されることが多いようです。今なら、機械学習でも利用されるのではないでしょうか。

試してみる

例えば、ベクトルとベクトル(単精度)の定数倍を計算する関数があります。

cblas_saxpy

これを利用してみます。
簡単なベクトルを用意します。

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)

このように、便利な関数が多数あります。追記予定...