Welcome, Guest: Register On Nairaland / LOGIN! / Trending / Recent / New
Stats: 3,150,566 members, 7,809,064 topics. Date: Thursday, 25 April 2024 at 10:07 PM

So I Asked Myself : How Do I Learn Machine Learning With Clojure? - Programming - Nairaland

Nairaland Forum / Science/Technology / Programming / So I Asked Myself : How Do I Learn Machine Learning With Clojure? (1477 Views)

Machine Learning With Python / Artificial Intelligence And Machine Learning Group / Machine Learning With Ruby (2) (3) (4)

(1) (Reply) (Go Down)

So I Asked Myself : How Do I Learn Machine Learning With Clojure? by nijabazaar: 10:11am On Nov 03, 2017
So Machine Learning is the In thing.

even, My GrandMa Knew its rudiments grin afterall, She has seen Sophia talk to UN under-secretary Amina.

so I began to think of how to join the band-wagon.

I have a plethora of languages to pick from:

: Python ( begining to hate how every one is touting this, especially my broda angry)

: Rust - Every one keep saying ML in this is experimental but then Rust's performance, low-level control, and zero-cost high-level abstractions make it a compelling alternative to more established ecosystems for Machine Learning. While the Rust ML ecosystem is still young and best described as experimental, several ambitious projects and building blocks have emerged. Using Rust to solve a real-world machine learning problem even made the cut for RustConf 2016.

: PHP - This language is a darling for me. I grew up with this. every role model in programming i Knew , started with it. Its my Childhood. Its my Childhood. Unfortunately, Machine Learning with it is as rudimentary as my evolutionary status in the milky galaxy sad

: Clojure - I have gone into this hook line and sinker and Have fallen in Love. I guess its because i got first hand exposure from a guru in it

So natural step is to ask, "How can I start Machine Learning myself, and build an AI that'll do all my coding for me?" (Or ... is just my dream?) Luckily, there are many open sourced resources such as TensorFlow, by Google, Amazon Lex, Polly and Rekognition, by Amazon and Microsoft's Cortana (are you getting the idea?), to name but a few.

so let me begin to get some info on these :

TensorFlow

TensorFlow, released in November 2015, is an open sourced library by the Google Brain Team. Originally called DisBelief, Google uses TensorFlow across a range of it's products and services. From the obvious, deep neural networks for search rankings, to the subtle, automatic generation of email responses and real time translations.

The main language for Machine Learning, for much of it's history, is in Python, as it is built upon C/C++. Python also has a very well developed and powerful scientific computing library NumPy, allowing users to do very efficient and complex neural networks with relative ease. Due to the longevity of Machine Learning's relationship with Python, the community is strong and libraries are rich.

But, "what if I don't want to use the bad concurrency models in Python and use the sane concurrency model in Clojure?" I hear you cry! Luckily, TensorFlow has just released it's Java API. Although it is still new and comes with a warning that it is experimental, you have the first in-roads to TensorFlow and Clojure. Along with the majority of Java libraries, TensorFlow has it's own Maven Repository so getting started with TensorFlow in Clojure
Re: So I Asked Myself : How Do I Learn Machine Learning With Clojure? by nijabazaar: 10:34am On Nov 03, 2017
When Comparing the TensorFlow Python API, to the TensorFlow Java API, you will immediately see a massive disparity in the libraries available, making operations that are relatively straightforward in Python, difficult in Java and hence Clojure.

However, for computing matrices and other statistical operations, Java has a wealth of options such as ND4J. If you'd rather use a Clojure Library, there is Incanter, Core.Matrix or Clatrix that can have similar capabilities.

An alternative option is to do your TensorFlow operations (or Machine Learning Operations) in Python and simply call you results in Clojure. The beauty of programming is that you are not penned into one language, you have the ability to choose based on your personal preferences.
Re: So I Asked Myself : How Do I Learn Machine Learning With Clojure? by nijabazaar: 10:39am On Nov 03, 2017
Amazon Services

Amazon have recently released 3 different Deep Learning sources, Lex, Polly and Rekognition.

Amazon Lex


Amazon Lex is a service used for conversations by either voice or text. It comes with a ready-made environment allowing you to quicky make a natural language "chatbot". Amazon Lex comes with slack integration so you can build a chatbot in any case you desire (it can respond to any pesky chat messages on your behalf). The technology you'd be using with Lex is the same that is used by Alexa. This means the text and voice chats are tried and tested, being used in a commercially viable product that can be bought by you and me.

With Lex, the cost is $0.004 per voice request and $0.00075 per text request, so you are able to a large number of interactions with you chatbot for a low cost.


Amazon Polly

Amazon Polly is a service that turns text into speech. Polly uses deep learning technology to turn text (words and numbers) into speech. It sounds like the human voice and can speak 24 languages. You are able to cache and save the speech audio to be able to be replayed it when you are offline, or if you want distribute it.

For Polly, you pay per character converted from text to speech. As you have the ability to save and replay speech, for testing purposes the cost is low.


Amazon Rekognition

Amazon Rekognition is used for image analysis. The "Hello World" equivalent for deep learning is MNIST, classifying images of dags and cats. Rekognition gives you the ability to do just that, with the added benefit of visual search. The technology is actively used by Amazon to analyse billions of images each day for Prime Photos. A deep neural network is used to detect and label the details in your image, with more labels and facial recognition features continually being added.

Testing with Rekogntion allows you to analyse 5000 images per month and store 1000 face data each month for 12 months.
Re: So I Asked Myself : How Do I Learn Machine Learning With Clojure? by nijabazaar: 10:47am On Nov 03, 2017
Cortana

Microsoft's Cortana, released in 2014 as a competitor to Google Now and Siri is a digital personal assistant for Windows 10, Windows 10 Mobile, Windows Phone 8.1 Microsoft Band, Xbox One, iOS and Android. Cortana provides many different services:

:Reminders and Calander Updates
:Track Packages, Flights
:Send Emails and Texts
:Access the internet

Cortana uses Microsoft's Cognitive Toolkit (CNTK), a Python based deep learning framework which allows a machine to recognize photos and videos or understanding human speech by mimicking the structure and functions of the human brain. Using CNTK, you have access to ready-made components, the ability to express your own neural networks. You are also able to train and host your models on Microsoft's alternative to Amazon Web Services, Azure.
Re: So I Asked Myself : How Do I Learn Machine Learning With Clojure? by nijabazaar: 10:55am On Nov 03, 2017
Clojure is even younger compare to Almighty Python (Rolls eyes), so the community doing both Clojure and Machine Learning is very small indeed.But Luckily Clojure has Java and all it's resources to fall back on. As Machine Learning and Clojure separately become more popular the community using both technologies will grow alongside.

I will continue to post my experiences with learning ML in clojure.
I just hope that this particular software i chose for ML wont disappoint me in the long run.

The other part of mind, who isnt my friend, keeps nagging that i should stick to Python and throw away that green,misty envy hanging around me becos of my broda's angry sad cool grasp of python. but let me just try Clojure. You neva can tell tongue
Re: So I Asked Myself : How Do I Learn Machine Learning With Clojure? by Olaide1295: 7:56pm On Apr 05, 2019
Hi @Nijabazaar.
Is there a way to reach you? My number is in my signature.
Say hi and i'll take it from there.

(1) (Reply)

How Can I Make Money With My Radio App / Who Can Decipher This Error For Me? / Password Protected Cars,anyone?

(Go Up)

Sections: politics (1) business autos (1) jobs (1) career education (1) romance computers phones travel sports fashion health
religion celebs tv-movies music-radio literature webmasters programming techmarket

Links: (1) (2) (3) (4) (5) (6) (7) (8) (9) (10)

Nairaland - Copyright © 2005 - 2024 Oluwaseun Osewa. All rights reserved. See How To Advertise. 31
Disclaimer: Every Nairaland member is solely responsible for anything that he/she posts or uploads on Nairaland.