Introducing machine learning elements in Kivy.

813 views
Skip to first unread message

SUSMIT

unread,
Dec 11, 2016, 5:50:01 AM12/11/16
to Kivy users support
Hi

I have been playing around Kivy for months now and i think that it can have its own machine leaning algorithms library similar to both Tensorflow and Scikit.

I am into machine learning too and find Kivy to be best platform to showcase my skills.

I will be very delighted if someone guide and mentor me.

Thank you for your anticipation.


Alexander Taylor

unread,
Dec 13, 2016, 12:31:55 PM12/13/16
to Kivy users support
Kivy is a graphical framework, not a machine learning library. You could use it to display output from a different library, but I'm not sure what algorithms you'd want to add to Kivy itself.

SUSMIT

unread,
Dec 13, 2016, 1:18:49 PM12/13/16
to kivy-...@googlegroups.com
I was thinking of starting  first with linear regression,logistic regression and neural networks.It can have many application like text recognition,image recognition,prediction which will give a boost to Kivy.

--
You received this message because you are subscribed to a topic in the Google Groups "Kivy users support" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/kivy-users/jT3-G8DdKf4/unsubscribe.
To unsubscribe from this group and all its topics, send an email to kivy-users+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Oon-Ee Ng

unread,
Dec 14, 2016, 2:58:18 AM12/14/16
to kivy-...@googlegroups.com
Kivy is a graphical framework. What it does is all about the UI.
Machine learning elements aren't at all related to what Kivy does.

There are many python machine learning toolkits, most (likely all) of
which can be used in conjunction with Kivy. It's all python, after
all.

If at all there'd be relevance for machine learning on Kivy, it would
be new widget types which are good for graphing or scientific output
display. Or we'd just use matplotlib like everyone else on python does
rather than re-inventing the wheel....
>> kivy-users+...@googlegroups.com.
>> For more options, visit https://groups.google.com/d/optout.
>
>
> --
> You received this message because you are subscribed to the Google Groups
> "Kivy users support" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to kivy-users+...@googlegroups.com.

adarshreddy adelli

unread,
Apr 7, 2019, 1:30:31 AM4/7/19
to Kivy users support
you can do that normally . As kivy is majorly concentrated on making GUI's and running python code on different environments , It wont be interested to develop packages like scikit. Because there are lots of tools that support these and with good community support as well.

Robert Flatt

unread,
Apr 8, 2019, 1:00:03 AM4/8/19
to Kivy users support
Well, yes and no!

I do think there is a place for ML in the Kivy context. That is on Android and IOS.

I don't think there is any point in reinventing the wheel, there are TensorFlow And Scikit modules for Python, and Kivy is a Python module.

Kivy provides the UI for touch OSes such as Android and IOS, so it can be a control system for ML on those OS.

The thing about ML is it needs horsepower, these Python modules are really written in C for speed, and that C is best executed on a GPU rather than CPU. Or on a custom TensorFlow engine as found on some Android phones. In general I don't think TensorFlow apps require a lot a float precision (is this correct?) so, speed aside, the single precision float hardware in most phones may give sufficient functionality (?).

So because of reinventing the wheel and performance I don't thing a new ML module written in Python is something that will ring people's bells.

So I'd suggest the project would be a compile of TensorfFlow to Android/IOS. I imagine that a compile that accessed the custom hardware on a Pixel could possibly rapidly remove (both) socks - but that is just my imagination, might even be true.

"pip3 search tensorflow" shows there is already a port for ARM64 but the version is way old. The Python/Kivy tools for Android/IOS compile have a "-requirements" mechanism for managing compiling Python modules that are implemented in C.

To get started:
1) Decide if it is feasible (and you are inspired). Read the TensorFlow build files, see if you can figure out the the build options for ARM32/64 and Tensorflow hardware (keep in mind Apple hardware)
2) Either a) release a Python module compiles for these OSes and keep it updated, or b) find somebody in the Kivy developers group to explain "-requirements" implementation.

That is my 2 cents, hope it helps you look at the issues from another angle. Full disclosure: I have a Pixel ;)








Reply all
Reply to author
Forward
0 new messages