I had a hard time figuring out how to delete a layer (the icons on the left are REALLY tiny and not obvious). Maybe adding a trash can in the graph once you've selected it would be more intuitive (heck maybe add all those icons there too).
Also, it would be great if it automatically created 'reshape' layers for you depending on what you're trying to connect or at least suggest them when you try to make a connection that doesn't fit. If I'm going to use a WYSIWG, it should make things easier for you than if you coded it by hand. When I'm doing AI stuff I find a really big portion of my time is just trying to figure out the right sizes / strides / padding etc at a given point in the graph. I feel like this would be way easier if it's automatically visualized for me or if intelligent suggestions are offered.
1. Load a Model -> Select model -> Dialog had some spelling mistakes.
2. Using react tools for chrome, I can see the UI is updating constantly when nothing changes. This is also making the popup flicker when mouse hovering over the graphs. The fix is to have ShouldComponentUpdate return false more!
"Appologies AiFiddle currently does not support mobile device.
Do you want to get notified on futur updates ?"
'Apologies' and 'future'.
Looks promising though, will check back when on desktop.
One missing feature would be an "undo" function - I accidentally deleted a layer and couldn't find a way to undelete it?
Edit: just found an error when trying to actually train a network:
TypeError: Argument 1 of WebGL2RenderingContext.clientWaitSync is not an object.
This was doing a very simple MNIST->dense(200)->dense(1)->output model using Firefox 65
I've got to mention two missing features that I find important:
1 - help popups: it will be nice if terms had a small help icon that can display a little context on hover/press (that's a quick win, makes unknown things usable, much easier to implement than a full manual/interactive tutorial)
2 - social login / email-only login: you are missing sign-ups (I hate having more passwords).
2- Yep fairly easy win too as I am using Cognito for auth.
Thanks for the feedback
edit: turbo mode: keep v8 at full speed:
function sleep(ms) {return new Promise(resolve => setTimeout(resolve, ms));}; while (true) {console.log(document.getElementsByClassName("content").length); await sleep(20)};
On a really basic MNIST model, 784->32dense->10dense, batch size 100, I'm getting about 2 batches per second idle, and 20 batches per second after running the above snippet.
To anyone who actually knows anything about web dev, please correct me with a proper explanation.
Can you currently create the architecture and run a given dataset against it? That would be very cool...
A small suggestion: the audio on the demo video was poor quality and difficult to understand. Perhaps a better microphone or higher bitrate would help.
Not sure how easy it will be to support all the types of layers on all platforms, but I think if target is Keras/PyTorch already going to be kick ass...