As part of Xcode 10 and Apple's latest version of macOS, called Mojave, they have shipped a new tool that you can use to train your own machine learning models by adding specializations to existing models. This means that you can train your own natural language model that places certain texts in categories that you define. Or, you can train a model that recognizes certain product names or terms in a text that is specific to your application's domain.
If you're building a news app, you might want to train a CoreML model that can automatically categorize the articles in the app. You can then use this model to keep track of the articles your users read, and present articles that are most likely to fit their interests on a dedicated page in your app.
In this segment, you will learn how to train natural language models and how you can train an image recognition model based on the Vision framework. In doing so, you will find that creating a large and optimized training set is crucial when you want to train a machine learning model.
In the code bundle for this chapter, you will find a Playground called CreateML. This playground contains all the resources used for training the natural language models.