generated at
S4TF


2022/11/9にarchiveされている
2021の時点で止まっていたっぽい

install
installはしたが、 import TensorFlow は一回もうまく行っていない,,,
replでも、xcode上でも、、、
tutorial
colab試すよう






ただのTensorFlow APIラッパーではない
Swiftのコンパイラに手が入っている
コード実行の前に行列計算の次元などの型チェックができる
Pythonの互換性もある
具体的には?
研究のためのUsabilityとPerformanceを実現する

Docsを読む
以下の3つの機能は、Swiftでなくても実装できる
automatic differentiation
Python language interoperability
tfのuserbilityを向上させることが目的
研究者や、エンジニア
tfを使う人が生産的で楽しめるものに
静的チェックが必要なためPythonはGraph Program Extractionを実現できない
プロジェクトの目的
表現力
メタプログラミングせずに、直接的に数値APIやホスト言語をプログラミングしてるように感じられるように
パフォーマンス
CPU, GPU, TPUなどの上で高速に
スケールする場面で使えるようにサポート
速い反復時間
生産的なワークフローにするためにツールが邪魔をしてはならない
デバッグの容易さ
etc
コミュニティ
学習曲線が緩やか
メモリ安全
など
パフォーマンス
並列性
GILなど
Custom Ops
C++, CUDAなど
よくわからんmrsekut
Custom Opsがそもそも何のためにあるのか
何が大変なのか
から未読




自動微分の利点
ユーザー定義のデータ構造をさぽーと
tf以外のライブラリにも組み込み可
想起にErrorをチェックできる #??


コンパイラが必要なのでPythonでは実現できない
Graph Program Extraction

Python Interoperability
Pythonの長所の1つが科学計算ライブラリの充実
Swift for TensorflowではPythonライブラリをあたかもSwiftのライブラリのように使える

ptyhon のランタイムをembedしてる
pythonは動的型
swiftは静的型
pythonのライブラリをあたかもswiftのライブラリとして使う

swift 4.2
dynamic member lookup
rubyのmethod missingのようなもの
静的型付けなのに?


tf
python上でsyntax treeを作り、それを微分
メタプログラミングっぽい
DSL
pytorch
chainer
実行結果を全部記録
遅い
swiftのコードをパースし、構文木を取り出して、微分をさせる
コンパイラのAPIを使って(?)



既存のフレームワーク
Pythonのパースした結果を取るAPIを使ってPyTorchやCaffeの実行エンジンで動くものに変換する
Pythonのサブセットを使って、マシンラーニングのモデルを表現する
Swift for TensorflowはPythonのサブセットを使わない
というかサブセットじゃなくて良くする
Pythonで表現できないものは、Swiftに戻ってきて実行する
どんなコードを書いても
tfでできるところはtfで、できないところはSwiftのコンパイラがネイティブのコードにする
TF XLA
facebook
intel Ngraph
amazon nnvm


ためす


参考
一通り調べた後にもう一度読もう