Zadania generowania sekwencji

Przetwarzanie języka naturalnego (NLP) w Pythonie

Fouad Trad

Machine Learning Engineer

Generowanie sekwencji

  • Generuje nowy tekst na podstawie podanego wejścia
  • Obejmuje zadania takie jak:
    • Podsumowywanie tekstu
    • Tłumaczenie tekstu
    • Modelowanie językowe

GIF przedstawiający ołówek piszący zdania na kartce papieru.

Przetwarzanie języka naturalnego (NLP) w Pythonie

Podsumowywanie tekstu

  • Skraca długie dokumenty, wyróżniając kluczowe informacje
  • Przydatne przy pracy z:
    • Długimi artykułami prasowymi
    • Artykułami naukowymi
    • Raportami
    • Wiadomościami e-mail

Obraz przedstawiający stos książek i wygenerowany z nich dokument ze streszczeniem.

Przetwarzanie języka naturalnego (NLP) w Pythonie

Potok podsumowywania tekstu

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.'}]
Przetwarzanie języka naturalnego (NLP) w Pythonie

Tłumaczenie tekstu

  • Przekształca tekst z jednego języka na inny
  • Kluczowe w aplikacjach wielojęzycznych:
    • Międzynarodowe strony internetowe
    • Narzędzia obsługi klienta

Obraz przedstawiający tłumaczenie tekstu z angielskiego (Good morning) na francuski (Bonjour).

Przetwarzanie języka naturalnego (NLP) w Pythonie

Potok tłumaczenia tekstu

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.'}]
Przetwarzanie języka naturalnego (NLP) w Pythonie

Modelowanie językowe

  • Przewiduje kolejne słowa na podstawie podanego promptu
  • Podstawa wielu zastosowań:
    • Autouzupełnianie
    • Generowanie historii
    • Odpowiedzi chatbota

Obraz pokazujący działanie modelowania językowego: prompt jest podawany do modelu, który generuje tekst.

Przetwarzanie języka naturalnego (NLP) w Pythonie

Potok modelowania językowego

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...'}]
Przetwarzanie języka naturalnego (NLP) w Pythonie

Czas na ćwiczenia!

Przetwarzanie języka naturalnego (NLP) w Pythonie

Preparing Video For Download...