Artificial intelligence with Swift

Tram Ho

When we talk about AI and Swift, everyone basically asks “Why not Python?”

Swift is not only a basic programming language, but also intended to serve the data science developed from Apple. It is designed to create a powerful, simple, easy to learn, secure, interactive language, suitable from low-level programming to high-level programming. Swift is increasingly a popular language with an estimated over one million programmers currently using it. Swift dominated the development of Apple Apple iOS, macOS, tvOS and watchOS. Swift has many great features, which are a great option to learn how to develop software and solve life issues including:

  • Thiết kế
  • Teachability
  • Productive
  • Safety
  • Performance
  • Deployment / Runtime

Why AI?

Although many people consider Swift a language born for use in the Apple ecosystem and specifically for application development only. But it is a mistake that Swift has evolved into a powerful and powerful modern language with an extended feature set for machine learning and education implementation. Apple has released two main tools in recent years:

  • CoreML: A framework and the corresponding model format that uses ready-made models that are convenient and highly efficient. Currently in its second version, features are being focused on vision and natural language processing applications.
  • CreateML: A framework and an application designed to create and evaluate CoreML models. CreateML makes the process of creating models simple and intuitive.

CoreML and CreatML are both Swift frameworks that allow you to do everything with AI. You can simply understand CoreML is to use models and CreatML for creating models.


CoreML is a framework for using machine learning models in your applications. CoreML is embedded into applications via the Swift language, to access and use machine learning models that provide AI features.

A common approach for machine learning with CoreML basically follows these steps:

  1. Add models to the project.
  2. Download the model file in your application.
  3. Provide the input needed for the model to make predictions.
  4. Use predictive output to solve problems for the application


“CreateML” is Apple’s Swift-based toolkit for creating and training machine learning models. It has two main components: framework and application.

CreatML makes the data train process as simple as possible because it even divides the training data you provide into training and validation training.

The CreatML application supports training in the following types of models:

  • image classification
  • sound classification
  • object classification
  • operational classification
  • text classification


I introduced Core ML and CreateML framework why I should combine AI with Swift. In the next section, we will dive into how to use CreateML to create your own model and how to throw it into the settings on your application.

Share the news now

Source : Viblo