pixyz icon indicating copy to clipboard operation
pixyz copied to clipboard

Your Glow or RealNVP's implementation is forgot Split Layer, I think

Open MokkeMeguru opened this issue 5 years ago • 3 comments

こんにちは、TFP から pixyz のコード翻訳を勉強しています。

現在 TFP は flow-base モデルの対数尤度をきちんと計算できていないので、こちらに全体のコードを移したいと考えています。

example の ipynb を読んでいると、Glow, RealNVP の ipynb に Split レイヤーが欠けていることに気が付きました。

本来これらの実装は、https://github.com/MokkeMeguru/glow-realnvp-tutorial/blob/master/examples/jupyter_notebooks/Glow_mnist.ipynb にあるように Split レイヤー(私の実装で言う Blockwise3D)が存在します。

現状 Splitレイヤー の実装はできますか?

MokkeMeguru avatar Dec 18 '19 01:12 MokkeMeguru

ご指摘ありがとうございます。

Split Layer(Blockwise3D)の行なっている処理をPyTorchで実装することが可能であればSplit Layerの実装はPixyzでの実装も可能です。

Split Layer(Blockwise3D)でどのような処理が行われているか現在こちらでも確認しようと思いますが, 取り急ぎの回答とさせていただきます。

また,Pixyzへのコード移植のご検討ありがとうございます。 Pixyzについて,まだ開発中でありますがTutorialがございます,こちらもご覧になっていただけますと幸いです。 https://github.com/masa-su/pixyz/tree/feature/tutorial/tutorial

kenoharada avatar Dec 18 '19 02:12 kenoharada

@MokkeMeguru 補足します. 現状のPixyzのflowの実装は,まだマルチスケールアーキテクチャを想定しておらず,そのためinvertibleなSplitLayerについてもまだ実装しておりません. 他の部分の開発を進めていたため,後回しにしておりましたが,近日中に対応します.

Flow関係のAPIはこちらのdocsも参考にしてください. http://docs.pixyz.io/en/latest/flows.html

masa-su avatar Dec 18 '19 04:12 masa-su

API docs を読ませていただきました。 大変使いやすい形になっていると思います。

マルチスケールアーキテクチャはシングルスケールに比べて精度が向上するようなので1、対応を楽しみにしています。

MokkeMeguru avatar Dec 19 '19 19:12 MokkeMeguru