naru.jpn.com/wordpress

Programming, Computing etc.

Metal Performance Shaders のクラス・関数のコードドキュメント内に出てくる論文の一覧

Metal Performance Shaders にはニューラルネットワークに関する実装が含まれています. ある関数のコードドキュメントを眺めていたところ, ドキュメント内に論文への参照があることに気づきました.

コードドキュメントが書かれたファイル内には, 全部で8つの論文への参照があります.
すべてが機械学習に関するもので, 有名な論文もあるようです. RNN についての論文はネット上にも比較的情報が少ないようです.これから一つ一つ眺めて, できるところまで数式も追っていこうと思っています.

論文の一覧

以下に論文のタイトル, リンク, 簡単な内容, 関連するクラスをそれぞれ記載します.

1. Batch Normalization: Accelerating Deep Network Training by Reducing Internal Covariate Shift

https://arxiv.org/pdf/1502.03167v3.pdf

Batch Normalization という手法を用いた, ニューラルネットワークの学習の高速化.

class MPSCNNBatchNormalizationStatistics  // @available(iOS 11.3, *)

2. Fast Guided Filter

https://arxiv.org/pdf/1505.00996.pdf

エッジの情報を保ったまま画像の平滑化を行う Guided Filter という手法がある. この計算を10倍くらい高速にして結果も目視では劣化が分からないような方法があるが, 意外にやられてない. コードも公開した.

class MPSImageGuidedFilter // @available(iOS 11.3, *)

3. Delving Deep into Rectifiers: Surpassing Human-Level Performance on ImageNet Classification

https://arxiv.org/pdf/1502.01852.pdf

正規化線形関数(ReLU)は最新のニューラルネットワークでは重要な要素で, 追加の計算コストがほぼなくオーバーフィッティングのリスクを減らす Parametric Rectified Linear Unit(PReLU), ロバストな初期化の方法について研究した.

class MPSNNNeuronDescriptor
class MPSCNNNeuronPReLU
class MPSCNNConvolutionDescriptor
class MPSMatrixNeuron
class MPSMatrixNeuronGradient // @available(iOS 12.0, *)

4. MULTI-SCALE CONTEXT AGGREGATION BY DILATED CONVOLUTIONS

https://arxiv.org/pdf/1511.07122v3.pdf

Dilated Convolutions を用いた, 解像度を下げたり画像の再スケーリングをする必要のない, Dense Prediction の為のネットワークを再考する.

class MPSCNNConvolutionDescriptor

5. YOLO9000: Better, Faster, Stronger

https://arxiv.org/abs/1612.08242

9000種類を超えるオブジェクトの検出が可能な YOLO9000 の紹介.

class MPSCNNYOLOLossDescriptor // @available(iOS 12.0, *)

6. Faster Training of Very Deep Networks Via p-Norm Gates

https://arxiv.org/abs/1608.03639

GRU, Highway Networks, Residual Nets などのネットワークに対して, 余分な学習コストを払うことなく学習速度を飛躍的に向上させる p-Norm Gating を提案する.

class MPSGRUDescriptor

7. Minimal Gated Unit for Recurrent Neural Networks

https://arxiv.org/abs/1603.09420

LSTM や GRU といった複雑で競合した隠れ層がたくさんあると, RNN を理解したり最適解を見つけるのが難しい. RNN のミニマルデザインである Minimal Gated Unit (MGU) を提案し, 理論的・経験的な研究をした.

class MPSGRUDescriptor

8. Adam: A Method for Stochastic Optimization

https://arxiv.org/abs/1412.6980

確率的な目的関数の1次の勾配に基づく最適化アルゴリズム Adam の提案.

class MPSNNOptimizerAdam // @available(iOS 12.0, *)