-
Notifications
You must be signed in to change notification settings - Fork 105
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Questions about design goals, roadmap, PyTorch integration, DL4j, etc. #69
Comments
Great questions; I'll try to answer all of them.
The project is started as a copy of Keras at the top of TensorFlow, and Keras is the most popular high-level framework in DL at this moment (top-level frameworks based on PyTorch are not so popular) Also, it supports the transfer learning on Keras models, and we need to be fully compatible with it (it has the same layers with the same inputs and outputs, and so on). But we started the experiment with KotlinDSL for preprocessing. We will design an alternative API for the building NN as a graph (I suppose it will be an open design doc, and I'll share it here in this issue and discussion chapter. But it will be not limited to Keras API only; we think it will be extended to have customizable parts and training cycle like in PyTorch.
TF Java API 2.x is a low-level API under development. The team is great and project too, but. It has no advantages at this moment for switching:
Resume: we switch on TF Java API 2.x if it will be more stable and a few critical issues will be solved
Fully answered here
DL4j is a great project, and we have no goal to repeat it or rewrite it from scratch. Our idea to cover main and popular cases for production, data engineers and be a good entry point for students.
There is a few NumPy-like libraries in the Kotlin ecosystem: multik and viktor, We will use Multik to build inference or maybe transfer learning in Kotlin for mobile devices. Still, as I mentioned earlier, we have no goal to build and maintain our own Tensor library from scratch, with a high probability it will be wrappers for TF or PyTorch.
So, if you have any ideas about Kotlin idiomatic stuff related to NN or data preprocessing, I invite you to collaborate here or in the discussion chapter. |
@zaleslaw Thanks a lot for your comments. That makes it clearer now.
Sure! Although, as I mentioned earlier, I am new to Kotlin and I am still learning it and studying the codebase to understand what's going on. Anyways, I'll try to work on some of the "good first issues" and also share my ideas. Thanks again! |
Currently, Kotlin API for low-level operands have a chance to become a part of tensorflow/java project (it has a draft PR), if it will be mature and useful, we will not create yet one, if it will be frozen or unfinished, so, Kotlin API for low-level TF should be created too (maybe as a separate module in this project) |
I am currently learning Kotlin and in order to enhance my learning experience I was looking for a project accepting contributions. So I am excited to find this library, especially considering the fact that I have a relatively fair amount of experience working with Keras/TF in Python. However, I have a few questions about some of the high-level aspects of the project and I would appreciate if the maintainers could answer them:
Thanks!
The text was updated successfully, but these errors were encountered: