Thoughts on Visual Development

I think machine learning applications, especially deep learning, can be abstracted as data processing. If that’s true, can we do some visualization for the data processing pipeline, like a graphic workflow configuration tool to build the training and validation process? I’ve seen that Microsoft already has it in their Azure . And the NVIDIA DIGITS seems also want’s to do this.

Recently I’ve been working on this for a time but I’ve met a lot of troubles. I want to keep the flexibility as well as the simplicity, but it seems like very hard to keep both of them. And I start to doubt is this the correct way, or should we just write plain code?

I want to know what the community sees about this, so if you have any ideas, positive or negative, please let me know : )

Here are some screenshots about these kind of products:

Microsoft Azure:

NVIDIA DIGITS

Both of them are hard to use, I’d rather write plain code : (

r/MachineLearning is the best place for your discussion:

https://www.reddit.com/r/MachineLearning/

1 Like

Can agree with you anymore.

those graphics tools only help for newbies but for masters it’s not needed at all.

1 Like

Have already posted there :wink:

I think you’re right for the 2 productions(Azure and NVIDIA DIGITS), I have tried them and I’m confused about WHO will use these tools:

  • For developers? Not flexible enough to build complicated applications.
  • For newbies? Too much to learn and also, not flexible enough.

So the baseline is, the machine learning applications require coding abilities. But is it possible to visualize the process, or even build the process by semi-graph-semi-code way?

Cloud you give me the link to your post?

Story is, last year I have developed a tool to help people use PyTorch more easily. It does bring me benefits in some Kaggle competitions.
So I want it to do more, like visualizing pipeline of the dataflow, or even better: configure the dataflow through web interface.

Well, I always count myself in the still learning group even though I sometimes claim to have a bit of first hand knowledge around PyTorch. That aside, if the vision is that ML/Deep Learning will be as ubiquitous as, say, Excel is today, there is a dire need for tools that are as easy to use as Excel. Python goes a long way in making non-programmers feel at home fast, but it’s not perfect.

Quite likely it would be beneficial to have something visual that is extensible.
Think about PyTorch itself: You have the ready-made torch.nn.* that you can just compose (with torch.nn.Sequential if you wish) and you can easily roll your own because that’s what we’re there for.

Another learning from this line of thought: A good and general visualization is the first step to a good visual editor.

Best regards

Thomas

1 Like

Thanks tom, what you said is inspiring. We are developing this kind of tool now.

1 Like

One other thought: I wonder if there is also inspiration to come from Scratch / Blockly.

But then you’re very likely quite ahead of me in thinking this through! I look forward to seeing your results!

Yes! Have been thinking about Blockly, but we think it’s more complicated than workflow. The web should be as simple as it could be. So we chose workflow rather than blockly as the frontend interface. :smiley:

Is Workflow a framework? (Sorry, I’m rather clueless.)

Nope, it’s a concept, like Github Actions or Apple’s Workflow.

Also I’ve been thinking about using TorchScript for the model part. Just saw your tweet about that, really looking forward to see it.