-
Notifications
You must be signed in to change notification settings - Fork 42
A request #2
Comments
We will release a separate repository containing the formal API specification for Keras, as well as tools to check API compatibility for a specific implementation. This should address this point.
This is naturally enforced by the code review process.
This would normally be handled on a case-by-case basis during the RFCs process for API change proposals. "Backwards compatibility" is listed in the RFC doc template as one of the topics to be covered. |
@fchollet Can you expose your updated position about this. I think that a some quite near point Keras will be only an historical name of a multi backend python only API but de facto will be just a namespace inside tensorflow python API. |
As a new user, I'm already confused by things like this https://keras.io/getting-started/functional-api-guide/ and this https://www.tensorflow.org/guide/keras/functional It makes it very difficult to know where you're supposed to look and what is up to date or not. |
@juliangall As a new user what Is your feeling on reading the release note about Keras and tf.keras (expecially the bold sections): |
Until reading that I didn't think about Keras not being the same as tf.keras. I hope you can see that someone who has not been involved with the history of this is a little confused. I do fully understand that this is a rapidly developing area and that much of this is unavoidable. I can see that Keras was independent of Tensorflow and was/is an API for other products too. However, when you're coming to this new, you aren't concerned with how everything got here. I am using Tensorflow/Keras and I see it as a single product. I need to type tf.keras.layers.Dense but it would be more logical to me to type tf.layers.Dense. I don't want this to seem like a criticism. These fantastically powerful tools are made available for us all to use for nothing. One can only be grateful for all the effort that goes in from many people, paid and unpaid. |
/cc @dynamicwebpaige @ewilderj cause this is a cross keras/tensorflow topic. And in Keras sig and tensorflow-dev google groups mailing-lists about the role of Keras namespace/API like of the namespace It will be a marketing High level design philosophy/brand across language/TF subprojects etc.. I.e. we know and declare in docs that in TF.js was designer with high Keras API care but It doesn't adopt Keras namespace and so on... |
There was some update in yesterday Keras-sig meeting. Meeting notes are still not available but mainly seems that there will be and effort to centralize Keras stuffs over this GitHub organizzation/repo. |
See also the fragmentation activity in ticket/threads like: |
@bhack I understand your worry. After tf.keras has been moved to keras-team/keras, we'll be able to judge if that is indeed a long term problem. For the moment it's a bit messy. The decision has been taken. If we believe that it's still a problem a year after the move has been made, we can juste move repositories to the tensorflow org. Moving a full repo between orgs is actually easy, while extracting tf.keras from tensorflow is not. |
Ok it Is just that presonally I have not a good outlook about this choice. Instead I fully understand why we are in this status from an historical point of view (TF needed soon a popular user friendly High level API at some point). |
Also mirrored RFC is an anti pattern: |
I think there is not si much room to continue confusing the developers or fragmentig their experience: |
Let not be the multi-team evolutionary approach/business philosophy in Google a fragmentation negative externality for users It Is already becoming harder today to find non Google papers reference impl in (Tf.)Keras/Tensorflow. |
I would like to request a philosophy statement, or statement of purpose, for the Keras framework. It would address things like
The text was updated successfully, but these errors were encountered: