Завдання з генерації послідовностей

Natural Language Processing (NLP) in Python

Fouad Trad

Machine Learning Engineer

Генерація послідовностей

  • Генерує новий текст на основі вхідних даних
  • Містить завдання:
    • Резюмування тексту
    • Переклад тексту
    • Мовне моделювання

GIF, де олівець пише речення на аркуші.

Natural Language Processing (NLP) in Python

Резюмування тексту

  • Стискає довгі документи до коротших, виділяючи ключові пункти
  • Корисно для:
    • Довгих новинних статей
    • Наукових публікацій
    • Звітів
    • Електронних листів

Зображення: купа книжок і створене з них резюме.

Natural Language Processing (NLP) in Python

Конвеєр резюмування тексту

from transformers import pipeline

summarizer = pipeline(task="summarization", model="cnicu/t5-small-booksum")
text = """The Amazon rainforest, often referred to as the "lungs of the Earth," is one of the most biologically diverse regions in the world. Spanning over nine countries in South America, the majority of the forest lies in Brazil. It is home to an estimated 390 billion individual trees, divided into 16,000 different species. The rainforest plays a critical role in regulating the global climate by absorbing vast amounts of carbon dioxide and producing oxygen."""
result = summarizer(text)
print(result)
[{'summary_text': 'the Amazon rainforest is one of the most biologically diverse regions in the world. 
The majority of the forest lies in Brazil. The rainforest plays a critical role in regulating the 
global climate by absorbing vast amounts of carbon dioxide and producing oxygen.'}]
Natural Language Processing (NLP) in Python

Переклад тексту

  • Перетворює текст з однієї мови на іншу
  • Критично важливо для мультимовних застосунків:
    • Міжнародні вебсайти
    • Інструменти підтримки користувачів

Зображення: текст перекладається з англійської (Good morning) на французьку (Bonjour).

Natural Language Processing (NLP) in Python

Конвеєр перекладу тексту

translator = pipeline(task="translation", model="Helsinki-NLP/opus-mt-en-fr")

sentence = "The rainforest helps regulate the Earth's climate."
result = translator(sentence)
print(result)
[{'translation_text': 'La forêt tropicale aide à réguler le climat de la Terre.'}]
Natural Language Processing (NLP) in Python

Мовне моделювання

  • Прогнозує наступні слова за поданим підказом
  • Основа багатьох застосунків:
    • Автодоповнення
    • Генерація історій
    • Відповіді чатботів

Зображення, як мовне моделювання працює: на вхід подається підказ, а машина генерує текст.

Natural Language Processing (NLP) in Python

Конвеєр мовного моделювання

generator = pipeline(task="text-generation", model="distilgpt2")


prompt = "Once upon a time,"
result = generator(prompt, max_length=30, num_return_sequences=3)
print(result)
[{'generated_text': "Once upon a time, my life wasn't so good, I kept my things tidy. The 
                     more time I spend with my children the more ..."}, 
 {'generated_text': 'Once upon a time, we began a process of finding the right answers to 
                     some big questions," said Jim Pelterer, a lecturer at the 
                     University...'}, 
 {'generated_text': 'Once upon a time, a man came along and took in the city, and found out 
                     that a strange woman had just walked in and was dancing about...'}]
Natural Language Processing (NLP) in Python

Давайте потренуємось!

Natural Language Processing (NLP) in Python

Preparing Video For Download...