В следующих статьях я представил Core ML для общего использования и платформу Vision для анализа изображений.

Swift World: что нового в iOS 11 - Core ML
Swift World: что нового в iOS 11 - Vision

В этом я покажу вам обработку естественного языка в iOS 11. Основной API - это NSLinguisticTagger, который представляет собой гораздо больше, чем средство тегирования. Это еще одна конкретная область применения машинного обучения. В iOS 11 NSLinguisticTagger становится более мощным. Вот почему мы включаем его в эту серию, хотя это не новость.

В кодах с NSLinguisticTagger мы используем разные схемы тегов и параметры для анализа текста разными способами. Схема тегов описывает желаемый результат, анализируя текст. Параметры тегов - это элементы, которые мы хотим опустить, например знаки препинания и пробелы. Я представлю схему тегов, параметры и их комбинацию в следующих примерах.

Чтобы использовать NSLinguisticTagger, мы сначала инициализируем экземпляр с помощью схем тегов и далее определяем поведение с параметрами для каждой схемы.

Подайте в теггер текст

Перечислить каждый тег и обработать результат

Давайте посмотрим, что умеет NSLinguisticTagger на примерах. Чтобы получить результаты, скопируйте фрагменты кода на игровую площадку.

1. Идентификация языка

Схема здесь - NSLinguisticTagScheme.language. NSLinguisticTagger анализирует текст, чтобы определить доминирующий язык.

2. Токенизация

С помощью схемы тегов NSLinguisticTagScheme.tokenType мы получим тип каждого токена. Знаки пунктуации и пробелы опускаются с помощью omitPunctuation и omitWhitespace. Пожалуйста, попробуйте разные варианты, чтобы увидеть разные результаты.

3. Лемматизация

Со схемой тегов NSLinguisticTagScheme.lemma, NSLinguisticTagger дает нам основную форму каждого токена слова.

4. NameType

NSLinguisticTagger со схемой nameType помогает нам определить, является ли токен именованным объектом, например, личным именем и названием места.

5. LexicalClass

Чтобы получить лексический класс каждого токена, мы используем NSLinguisticTagScheme. lexicalClass.

Это все для NSLinguisticTagger. Спасибо за ваше время. Нажмите кнопку ❤, чтобы эту статью увидело больше людей.

Примечание. Swift World - это моя новая публикация, в которой собраны отличные статьи, руководства и коды по Swift. Пожалуйста, подпишитесь, если интересно.