Foundations of AI and Machine Learning for Java Developers
1h 36mIntermediate2024-12-06
Authors

Frank Greco
Course details
In this course, explore the exciting world of artificial intelligence (AI) and machine learning (ML) from a Java developer’s perspective. Start with the essential principles of AI/ML and why patterns are so important. Learn how to differentiate between AI, ML, and deep learning, and clearly understand predictive AI versus generative AI. Join instructor Frank Greco to build a solid foundation on how to use ML in your software development projects and processes effectively.
Learning objectives
Summarize the foundational concepts of machine learning and artificial intelligence.
Recognize the value and importance of patterns in machine learning.
Differentiate between artificial intelligence, machine learning, and deep learning.
Compare and contrast predictive AI and generative AI.
Identify appropriate applications of machine learning in the software development process.
Learning objectives
Summarize the foundational concepts of machine learning and artificial intelligence.
Recognize the value and importance of patterns in machine learning.
Differentiate between artificial intelligence, machine learning, and deep learning.
Compare and contrast predictive AI and generative AI.
Identify appropriate applications of machine learning in the software development process.
Skills covered
JavaMachine LearningOracleArtificial Intelligence FoundationsArtificial Intelligence (AI)Programming LanguagesSoftware DevelopmentOne-Off
Concepts
0. Introduction
- 01 - Transform your Java skills with machine learning
- 02 - What you should know
1. Patterns - The Foundations of Machine Learning
- 03 - Design patterns
- 04 - Patterns are everywhere
- 05 - Regular expressions and the relationship to ML
- 06 - Machine learning definition
2. Artificial Intelligence Taxonomy
- 07 - High-level description of AI and ML
- 08 - Definition of deep learning - PredAI and GenAI
- 09 - Predictive AI vs. generative AI
3. Predictive AI with JSR #381
- 10 - JSR #381 - Visual Recognition (VisRec)
- 11 - Sample VisRec code to train a PredAI model
- 12 - Sample VisRec code to use a PredAI model
- 13 - Demo - Running VisRec JSR #381
4. Generative AI
- 14 - Large language models and NLP
- 15 - Prompts and completions
- 16 - Prompt tips
- 17 - Importance of context
- 18 - Retrieval-augmented generation (RAG)
- 19 - Different ways of using LLMs
5. GenAI Services and APIs
- 20 - Available GenAI LLM services
- 21 - Accessing LLMs via stateless REST APIs
- 22 - Approaches and Java REST libraries
- 23 - Code examples of connecting to an LLM - Pure Java and LC4J
- 24 - Demo - Connecting to an LLM
6. Patterns in Software Development
- 25 - Patterns in the software development process
- 26 - Determinism vs. probability
- 27 - AI flowchart
Conclusion
- 28 - Your new tools - Predictive AI and generative AI