Saturday, March 3, 2018

Report: things I learned today (As of March 2018)

I tried to create an android app that uses deeplearning technologies. But I found that:

1. As of March 2018, stable version of DL4J (0.9.1) doesn't support keras2-trained model importing. (It supports Keras trained model importing, but as of version 0.9.1, only Keras 1's model is supported, not Keras 2's.)

If you really want to use DL4J and import Keras2's model, you need to use DL4J 0.9.2-SNAPSHOT. But I didn't understand well how to use the version.

2. DL4J's official manual isn't so easy to understand for people who don't know well about Java related technologies like Maven.

3. Using tensorflow on android isn't so difficult. Using DL4J on android isn't difficult too because both of them are implemented by Java. But, again, it doesn't support to import Keras 2's trained model.

4. If you want to use Keras trained model with tensorflow on android, you need to convert the keras model to tensorflow's .pb file. I used this to do so.

5. I tried the demo apps of tensorflow. They seemed good to me.

Tasks:
I should understand how to make sequential models. (Or, we should use models made by researchers, so I don't need to learn how to make models from scratch?)