Machine Learning with Core ML 2 and Swift 5
4.4 (84 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
602 students enrolled

Machine Learning with Core ML 2 and Swift 5

Learn how to integrate machine learning into your apps. Hands-on Swift 5 coding using CoreML 2, Vision, NLP and CreateML
4.4 (84 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
602 students enrolled
Last updated 11/2019
Current price: $72.99 Original price: $104.99 Discount: 30% off
5 hours left at this price!
30-Day Money-Back Guarantee
This course includes
  • 2 hours on-demand video
  • 3 articles
  • 1 downloadable resource
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to 4,000+ top Udemy courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • Learn from a software engineer with 20+ years of professional experience
  • Get a practical introduction to machine learning in the context of iOS and macOS development
  • Get the companion e-book for FREE! (sells for $28.80 on Amazon)
  • Learn how to integrate natural language text analysis into your apps
  • Build apps that can recognize and classify objects in images and video streams
  • Use Core ML to perform sentiment analysis on Amazon product reviews
  • Gain a working knowledge of Core ML 2, Vision, Natural Language Processing and Create ML
Course content
Expand all 45 lectures 02:08:43
+ Introduction
7 lectures 11:10

Before we start our journey, I’d like to show you what you should already know to get started with Core ML and bring your game to the next level by integrating machine learning into your apps.

Preview 01:35

Please join our official group to get even more feedback and support!

Join the Official Student Group

Arthur Samuel, an American artificial intelligence pioneer was the first who used the term "machine learning" back in 1959.
A computer program is said to learn if it keeps improving its performance on a specific task. Let's take a look at what that actually means.

What is Machine Learning?

Machine learning works in two distinct ways: supervised and unsupervised learning.

Supervised and Unsupervised Machine Learning

In this lecture, we're going to take a closer look at supervised machine learning.

The Machine Learning Model

So, what's the deal with machine learning in iOS (and macOS, tvOS and watchOS)?

iOS and Machine Learning

This course comes with exercise files that you can use to follow along. In this lecture I share with you the demo repository URL and some useful hints.

Exercise Files

Test what you learned about machine learning

Test Your Skills
2 questions
+ iOS Machine Learning Architecture
5 lectures 08:48

A quick overview of the machine learning components provided by Apple and how they relate to each other.

A High-Level View

Let's take a look at the CoreML framework.

The CoreML Framework

You may find the NaturalLanguage framework useful if you need to analyze natural text. In this lecture, I'll walk you through the main features of this awesome framework.

The NaturalLanguage Framework

Use the Vision framework to incorporate synthetic vision features into your apps. In this lecture, we'll talk about the capabilities of the Vision framework.

The Vision Framework

The GamePlayKit framework provides AI and ML features to be used in games and simulations. Let's have a look at these features.

The GamePlayKit Framework
+ Natural Language Text Analysis
5 lectures 17:20

A sneak peak at what we’re going to build in this section.

Preview 01:23

Finally, let's start coding! In this lecture, you're going to create a playground project that recognizes the dominant language of a text.

Recognizing the Dominant Language of a Text

In this lecture, you're going to implement a string tokenizer that works with text provided in any language.

Tokenizing a String

In this video, you'll explore further features of the NSTagger class. You're going to build a demo that identifies the nouns, verbs, adjectives etc. in a string.

Identifying Parts of Speech

In this lecture, you’re going to implement a demo that can identify names, places and organizations in natural text.

Identifying People, Places and Organizations
+ Image Analysis with the Vision Framework
8 lectures 34:37

Here's a sneak peak at the synthetic vision demos you'll build in this section.

Preview 00:52

In this lecture, I'll show you the details of the iOS app that will serve as a starting point for all the demos in this section.

The Starter App

Before we start the actual image analysis implementation, let’s take a closer look at how the Vision framework works.

Analyzing Still Images using Vision

You're going to implement the Vision request handler in this lecture.

Implementing the Image Request Handler

Follow along and implement the image analysis request. You'll use this request to detect rectangular areas in still images.

Implementing the Image Analysis Request

Vision returns the observations in the Quartz 2D coordinate system. We need to perform a series of transformation before we can visualize the results.

Converting Coordinates Between Quartz 2D and UIKit

The next step is to visualize the detected observations.

Visualizing the Detected Rectangles

In this demo, you’re going to update the rectangle detector project so that it finds and demarcates regions of text, faces and barcodes in still images.

Preview 04:25
+ Training a Flower Classifier on Your Computer using Create ML
9 lectures 25:00

A sneak peak at the image classifier demo you'll build in this section.

Preview 00:42

We start by collecting the data we want to use for training. The data needs to be organized in a certain structure and there are further requirements. Let's dig in.

Recognizing Flowers - Preparing the Training Data

In this lesson, you’re going to train an image classifier in Xcode. You’re going to train your model in a Swift playground.

Training an Image Classifier in a Playground

You’ve created a flower image classifier model, so let’s use it in a real app. I walk you through the iOS app we'll use as a starting point before you start adding the missing features.

Recognizing Flowers - the Starter App

Here's what happens when you drag a CoreML model into Xcode.

Integrating the Flower Classifier Model

In this lecture, you'll implement the evaluation of the results returned by Vision.

Displaying Predictions

We continue by implementing the image picker.

Picking an Image

The Flower Classifier app is almost ready. So, let's put together all the pieces.

Performing the Image Analysis Request

Finally, it's time to try out the Flower Classifier app!

Preview 02:44
+ Determining the Tonality of a Review
8 lectures 30:21

A sneak peak at the Amazon review sentiment analyzer app you're going to build in this section.

Review Sentiment Analysis - What Are We Going to Build?

Let's take a look at the training data. This time we'll use the JSON format.

Preparing the Training Data for the Review Sentiment Classifier

In this lesson, you're going to create a playground and start implementing the logic required to train the sentiment analysis model.

Training a Text Classifier in a Playground

The training process begins by creating an MLTextClassifier instance.

Creating the MLTextClassifier

Next, you write the code that exports the trained classifier to a Core ML model file.

Saving the Core ML Model

In this lecture, we start implementing the Review Sentiment Analyzer iOS app. First, we put together the app’s user interface.

Laying Out the User Interface of the Review Classifier App

We finish the Review Sentiment Analyzer iOS app by integrating the trained model and implementing the missing functionality.

Integrating the Review Classifier Model

Finally, let's test the finished Review Sentiment Analyzer app with real product reviews.

Testing the Review Classifier App
+ Next Steps + Bonuses
3 lectures 01:26

Here's the companion eBook as a special gift to you (187 pages print length, sells for $28.80 on Amazon).

FREE Bonus eBook! (worth $28.80)

Congrats, you’ve reached the end of this course! Let me share some closing thoughts with you.
Thanks for watching!


Some links that will get you discounts on my other courses.

Bonus Lecture: Get Any of My Courses for Up to 90% Off
  • You need a Mac with macOS Mojave and Xcode 10 or later
  • You should have basic Swift programming skills
  • You should definitely go ahead if you know how Xcode works

** The most frequently updated Core ML 2 course on Udemy (Updated October 2019) **
Extra Bonus: Free e-book version included
(sells for $28.80 on Amazon)!

Wouldn't it be great to integrate features like synthetic vision, natural language processing, or sentiment analysis into your apps? In this course, I teach you how to unleash the power of machine learning using Apple Core ML 2. I'll show you how to train and deploy models for natural language and visual recognition using Create ML.

I'm going to familiarize you with common machine learning tasks. We'll focus on practical applications, using hands-on Swift coding.

We're going to demystify what machine learning is by investigating how it works. And no worries, I introduce each concept using simple terms, avoiding confusing jargon.

We'll delve into advanced topics like synthetic vision and natural language processing. You'll apply what you've learned by building iOS applications capable of identifying faces, barcodes, text, and rectangular areas in photos in real-time.

You'll learn how to train machine learning models on your computer. You're going to develop several smart apps, including a flower recognizer and an Amazon review sentiment analyzer.

And there's a lot more!

Topics include:

- Understanding the machine learning frameworks provided by Apple

- Natural language text processing using the NaturalLanguage framework

- Setting up a Core ML project in Xcode

- Image analysis using Vision

- Training an image classifier on your computer using CreateML

- Determining the tonality of an Amazon product review

"Machine Learning with CoreML 2 and Swift 5" is the perfect course for you if you're interested in machine learning.


“Thank you Karoly, you have delivered another excellent course, with detailed explanations and real world examples of machine learning that any app developer will be able to put into practice with their app development.Excellent course.” - Jim McMillan

“This course is the best introduction to Machine Learning with Swift. It is going to familiarize you with common machine learning tasks and is very helpful for beginners.” - Zbyszek Pietras

“I've been looking for a course that teaches CoreML2 with natural language processing and CreateML. I found this course very useful and gets directly to the important topics. I also appreciated the Vision CoreML section as well.” - Dan Gray


  • Expert instructions
    Karoly's been working as a software engineer for more than two decades. He designed and developed professional systems, including core components of Siemens Healthcare's syngo image processing system.
    Karoly was one of the senior software architects behind the SAP Cloud Platform SDK for iOS, a framework built by Apple and SAP.

  • Premium support
    As a student of this course, you’ll get personalized attention and support.

  • The companion eBook for FREE!
    The paperback version sells for $28.80 on Amazon

  • Downloadable resources
    You get downloadable demo projects you can use to follow along.

  • Continuous updates
    We keep enhancing this course to provide fresh and up-to-date content.


If you aren't satisfied with your purchase, we'll refund you your money - no questions asked! We want to make sure you're completely satisfied with the course. That's why we're happy to offer you this money-back guarantee.

Go ahead and click the enroll button. See you in the first lesson!


Károly Nyisztor is a veteran mobile developer and instructor.
He has built several successful iOS apps and games—most of which were featured by Apple—and is the founder at LEAKKA, a software development and tech consulting company. He's worked with companies such as Apple, Siemens, SAP, and Zen Studios.

Currently, he spends most of his days as a professional software engineer and IT architect. Besides, he teaches object-oriented software design, iOS, Swift, Objective-C, and UML. As an instructor, he aims to share his 20+ years of software development expertise and change the lives of students throughout the world. He's passionate about helping people reveal hidden talents and guide them into the world of startups and programming.

You can find his courses and books on all major platforms, including Amazon, Lynda, LinkedIn Learning, Pluralsight, Udemy, and iTunes.

Who this course is for:
  • Take this course if you want to get started with Core ML, Vision, and/or Natural Language Processing
  • This course is for you if you want to bring your game to the next level by integrating machine learning into your apps