Python и spaCy помогут вам быстро и легко создавать NLP-приложения: чат-боты, сценарии для сокращения текста или инструменты принятия заказов. Вы научитесь использовать spaCy для интеллектуального анализа текста, определять синтаксические связи между словами, идентифицировать части речи, а также определять категории для имен собственных. Ваши приложения даже смогут поддерживать беседу, создавая собственные вопросы на основе разговора. Вы научитесь: • Работать с векторами слов, чтобы находить синонимы (глава 5). • Выявлять закономерности в данных с помощью displaCy — встроенного средства визуализации библиотеки spaCy (глава 7). • Автоматически извлекать ключевые слова из пользовательского ввода и сохранять их в реляционной базе данных (глава 9). • Развертывать приложения на примере чат-бота для взаимодействия с пользователями (глава 11).
Прочитав эту книгу, вы можете сами расширить приведенные в ней сценарии, чтобы обрабатывать разнообразные варианты ввода и создавать приложения профессионального уровня.
Названия моделей создаются по следующему принципу: lang_type_genre_size. Lang обозначает язык. Type указывает на возможности модели (например, core означает, что речь идет об универсальной модели, имеющей словарь, синтаксис, сущности и векторы). Genre указывает на тип текстов, которые лежали в основе обучения данной модели: web («Википедия» или подобные ресурсы) или news (новостные статьи). Size обозначает размер модели: lg — большая, md — средняя и sm — маленькая. Чем больше модель, тем больше дискового пространства ей нужно.
Обычно узлы в нейронной сети сгруппированы по слоям: имеются входной и выходной слои, а между ними — один скрытый слой или более. Каждый узел в слое (за исключением выходного слоя) соединяется с каждым узлом из следующего слоя, и каждому соединению соответствует весовой коэффициент. Во время процесса обучения алгоритм подбирает веса таким образом, чтобы минимизировать ошибку предсказаний
Нейронная сеть (neural network) представляет собой набор алгоритмов предсказания. Она состоит из большого числа простых обрабатывающих элементов, подобных нейронам в мозге человека, которые взаимодействуют между собой путем отправки сигналов в соседние узлы и получения встречных сигналов.