By Mani Sarkar, Java champion, polyglot, software program craftsperson.
What I share here’s a glimpse of what’s on the market and every certainly one of you may need found many extra elements of Artificial Intelligence, Machine Learning, and Deep Learning as a part of your every day skilled and private pursuits.
Considered one of my motivations for placing this put up and the hyperlinks under collectively comes from the dialogue we had in the course of the LJC Unconference in November 2018, the place Jeremie, Michael Bateman and I together with numerous LJC JUG members gathered at a session discussing an analogous subject. And the questions raised by some had been within the traces of the place does Java stand on the earth of AI-ML-DL. How do I do any of this stuff in Java? Which libraries and frameworks to make use of?
AI-ML-DL and Java and their outreach
One other confession, I didn’t spend an excessive amount of time attempting to collect and categorise these matters, because of Twitter and the Web for serving to me discover them and use them. I hope no matter content material has been put collectively right here quantifies to greater than the reply to the above questions. And in case you are feeling additional enhancements could be made to the content material, categorisation, format, please be at liberty to contribute, you can begin by visiting the git repo and creating a pull request. Please watch, fork, begin the repo to get updates of the modifications to come back. Right here’s numerous sources shared within the final two years (circa), categorised as finest I might:
Enterprise / Normal / Semi-technical
– Extract business value from DS (Tweet)
– Why Java and the JVM Will Dominate the Future of Machine Learning, AI, and Big Data (Tweet)
– Machine Learning Made More Accessible During Businesses’ Learning Curve (Tweet)
– (more links)
Classifier / choice timber
– Email Spam Detector java Application with ApacheSpark (Tweet)
– Guide to Artificial Intelligence: Automating Decision-Making (Tweet)
Correlated Cross Incidence
– Multi-domain predictive AI or how to make one thing predict another (Tweet)
Java tasks / applied sciences
– Project Panama and fast MachineLearning computation (Tweet)
– GraalVM + Machine Learning (Tweet)
– Deploying Bespoke AI using fnproj – KADlytics by Miminal (Tweet)
Pure Language Processing (aka NLP)
– An introduction to natural language processing and a demo using opensource libraries (Tweet)
– Implementing NLP Attention Mechanisms with DeepLearning4J (Tweet)
– How Stanford CoreNLP, a popular Java natural language tool can help you perform Natural Language Processing tasks(Tweet)
– FREE AI talk on Natural Language Processing NLP using Java with deeplearning4j (Tweet)
– Introduction to Neural Network Architectures (Tweet)
– Neural Networks explained by MIT (Tweet)
– Implementing an Artificial Neural Network in Pure Java (No external dependencies) (Tweet)
– (more links)
Suggestion techniques / Collaborative Filtering (CF)
– Tutorial on Collaborative Filtering (CF) in Java – a machine learning technique used by recommendation systems(Tweet)
Instruments & Libraries, Cheatsheets, Sources
– Best AI tools and libraries (Tweet)
– Cheat Sheets for AI, Neural Networks, MachineLearning, Deep Learning & Big Data (Tweet)
– Overview of AI Libraries in Java (Tweet)
– (more links)
How-to / Deploy / DevOps / Serverless
– Learn how to deploy and manage machine learning models (Tweet)
– How to prepare unstructured data for BI and data analytics AI and MachineLearning (Tweet)
– Machine Studying Mannequin Deployment Made Easy: 1 2 (Tweet)
– (more links)
Attributable to numerous the hyperlinks gathered, not all of them could possibly be proven right here and so I’ve created a git repo and to host them on GitHub, the place one can find the remainder of the hyperlinks. As soon as once more, pull requests are very welcome.
From my a number of weeks to few months of intense expertise, I recommend if you wish to get your fingers soiled with Artificial Intelligence and it’s off-springs , don’t draw back from it, simply because it’s not Java / JVM primarily based. It’s finest to start out high-level with no matter you might have, and when you might have understood the topic sufficient to attempt to apply them within the languages you’re at house with, be that Java or some other JVM language it’s possible you’ll know. I’m not claiming I do know them, however merely sharing my mileage.
One of many issues we got here up throughout our discussions was that AI, ML, and DL have sturdy contributions from academia they usually use instruments and languages finest recognized to them and generally most acceptable for the duty in hand.
Observe the group and the instruments that drive the innovation and inspiration to develop into higher on the topic of alternative. On this case, it applies to Artificial Intelligence and its variants .
First, to @java for sharing many AI, ML, DL associated sources with the broader group. And in addition to organisations like @skymindio (https://skymind.ai) who’re doing an superior job in bridging the hole between the Java/JVM and AI/ML/DL worlds.
Additionally, I wish to thank the great of us (Helen and workforce) behind the ML Examine group in London — supported by @RWmeetamentor, who’ve been working laborious to deliver everybody collectively to be taught ML and associated matters. They could have even very not directly influenced me to jot down this put up. wink, wink
So, to sum up, our dialogue on the LJC Unconference 2018, we talked about different languages like Python, R, Julia, Matlab, and the likes, contribute extra to AI, ML, and DL than one other programming language.
I do know it’s not going to make me in style by saying this, however my humble request to all builders could be that to not assume or count on every little thing attainable from a single programming language. Any language and within the context of this put up, Java and different JVM languages are meant and written for a objective, and little question, we are able to replicate efforts made in different languages in Java/JVM languages.
However on the finish of the day, they need to all be handled as instruments and be used the place acceptable.
Original. Reposted with permission.
Bio: Mani Sarkar is a Java champion, polyglot, software program craftsperson by @adoptopenjdk, @graalvm, and @truffleruby. Mani can be concerned within the developer communities, #containers, #DevOps, #AI #ML #DL, in addition to a speaker and blogger.