Under the Hood w Grammarly: zmiana stylu pisania dzięki sztucznej inteligencji
Opublikowany: 2018-05-31Kiedy chcesz zrobić dobre wrażenie na osobie, do której piszesz, nie musisz myśleć tylko o tym, co mówisz. To, jak to mówisz, jest często równie ważne. Wybór odpowiedniego poziomu formalności może być szczególnym wyzwaniem — zależy to w dużym stopniu od kontekstu i często trzeba zgadywać, jak odbiorca zinterpretuje Twój ton.
Wyobraź sobie, że piszesz list motywacyjny. Jak bardzo zmieniłoby grę, gdybyś miał narzędzie, które potrafiłoby wykryć, kiedy twoje pisanie jest zbyt zwyczajne (a czasem, co gorsza, zbyt formalne)? Nagle twoje decyzje dotyczące tego, jak powiedzieć to, co chcesz powiedzieć, stają się o wiele mniej mętne. Nie polegasz tylko na zgadywaniu, jak odbiorca odbierze Twoją wiadomość — masz algorytm, który czerpie z wielu danych, których nie masz osobiście. Idąc o krok dalej, co by było, gdyby to narzędzie nie tylko podpowiadało, kiedy coś jest nie tak, ale faktycznie oferowało alternatywne sformułowanie, które Twój odbiorca chciałby lepiej?
Proces, w którym komputer automatycznie przekształca tekst z jednego stylu w inny, nazywa się transferem stylu i jest tematem przyszłego artykułu, który napisałem z moją koleżanką Sudhą Rao. Jest to dla nas w Grammarly obszar szczególnie interesujący, ponieważ wiemy, jak ważna jest odpowiednia komunikacja.
Jeśli kiedykolwiek zastanawiałeś się, jak inżynierowie z Grammarly budują systemy, które dostarczają Ci sugestii dotyczących pisania, czytaj dalej.
Nieformalne tło formalności
Zanim zagłębimy się w szczegóły naszych algorytmów, przyjrzyjmy się przykładowi języka nieformalnego i formalnego.
Nieformalne: Muszę zobaczyć obie strony tej historii
Formalne: Musisz widzieć obie strony tej historii.
Istnieje kilka oczywistych różnic między tymi zdaniami. Użycie slangu („Gotta”) i brak znaków interpunkcyjnych na końcu pierwszego zdania sygnalizują nieformalność. Jest czas i miejsce na tego rodzaju zdanie — na przykład wymianę wiadomości tekstowych między przyjaciółmi.
Kiedy przyjrzeliśmy się, jak ludzie przepisali nieformalne zdania w bardziej formalnym stylu, odkryliśmy, że najczęściej dokonywane przez nich zmiany dotyczyły kapitalizacji, interpunkcji i kolokwializmów. Zauważyliśmy również, że ludzie czasami muszą drastycznie przepisywać zdanie, aby poprawić formalność:
Nieformalne: Kiedy przyjdziesz na spotkanie?
Formalne: Proszę o informację, kiedy będziesz uczestniczyć w spotkaniu.
Ale jak uczymy komputery wprowadzania zmian, takich jak te powyżej? Do problemu można podejść na kilka sposobów.
Ten, którego używamy, potwierdza, że uczenie komputera tłumaczenia między stylami pisania jest podobne do uczenia go tłumaczenia języków. Takie podejście nazywa się tłumaczeniem maszynowym, w którym komputer automatycznie tłumaczy z jednego języka (np. francuskiego) na inny (niemiecki). Tak więc przy rozwiązywaniu problemu przenoszenia stylu warto zacząć od modelu tłumaczenia – lub w naszym przypadku wielu modeli.
Co to jest model tłumaczenia?
Jednym z ostatnich przełomów w sztucznej inteligencji jest wykorzystanie technik głębokiego uczenia lub sieci neuronowych do budowania modeli tłumaczenia maszynowego.
Modele neuronowego tłumaczenia maszynowego (NMT) mogą uczyć się reprezentacji podstawowego znaczenia zdań. Pomaga to modelowi nauczyć się złożonych wzorców zdań, dzięki czemu tłumaczenie jest płynne, a jego znaczenie jest wierne zdaniu oryginalnemu.
Starsze podejścia do tłumaczenia maszynowego, takie jak modele oparte na regułach lub frazach (PBMT), dzielą zdania na mniejsze jednostki, takie jak słowa lub frazy, i tłumaczą je niezależnie. Może to prowadzić do błędów gramatycznych lub bezsensownych wyników w tłumaczeniu. Jednak modele te są łatwiejsze do podkręcenia i wydają się być bardziej konserwatywne – co może być zaletą. Na przykład możemy łatwo włączyć reguły zmieniające slang na standardowe słowa.
Przyjrzeliśmy się kilku różnym podejściom do tłumaczenia maszynowego, aby zobaczyć, które jest najlepsze w przenoszeniu stylu.
Budowanie modelu
NMT i PBMT są pełne wyzwań, z których nie najmniej ważnym jest znalezienie dobrego zestawu danych do trenowania modeli. W tym przypadku oszacowaliśmy, że będziemy potrzebować zestawu danych składającego się z setek tysięcy par zdań nieformalnych i formalnych. Idealnie byłoby trenować swój model z milionami par zdań, ale ponieważ transfer stylu jest dość nowym obszarem w dziedzinie przetwarzania języka naturalnego, tak naprawdę nie było istniejącego zestawu danych, którego moglibyśmy użyć. Więc stworzyliśmy jeden.
Zaczęliśmy od zbierania nieformalnych zdań. Nasze zdania czerpiemy z pytań i odpowiedzi opublikowanych publicznie w serwisie Yahoo! Odpowiedzi. Automatycznie wybraliśmy z tego zestawu ponad sto tysięcy nieformalnych zdań i poprosiliśmy zespół o przepisanie każdego z nich językiem formalnym, ponownie stosując predefiniowane kryteria. (Zapoznaj się z naszym artykułem, aby uzyskać szczegółowe informacje na temat tego procesu.)
Po utworzeniu zestawu danych możesz rozpocząć trenowanie modelu. Trenowanie modelu oznacza nadanie mu wielu zdań „źródłowych” – w naszym przypadku zdań nieformalnych – wraz z wieloma zdaniami „docelowymi” – dla nas są to formalne przepisania. Algorytm modelu następnie szuka wzorców, aby dowiedzieć się, jak przejść od źródła do celu. Im więcej posiada danych, tym lepiej się uczy.
W naszym przypadku model ma sto tysięcy nieformalnych zdań źródłowych i ich formalnych przeróbek, z których można się uczyć. Eksperymentowaliśmy również z różnymi sposobami tworzenia sztucznych danych formalnych, aby zwiększyć rozmiar naszego zestawu danych treningowych, ponieważ modele NMT i PBMT często wymagają dużo więcej danych do prawidłowego działania.
Ale potrzebujesz również sposobu, aby ocenić, jak dobrze Twój model wykonuje swoje zadanie. Czy zmieniło się znaczenie zdania? Czy nowe zdanie jest poprawne gramatycznie? Czy faktycznie jest to bardziej formalne? Istnieją klasyfikatory — programy, które mogą automatycznie oceniać zdania pod kątem tonu i stylu pisania — i przetestowaliśmy niektóre z najczęściej używanych w środowisku akademickim. Jednak żaden z nich nie jest bardzo dokładny. Skończyło się na tym, że ludzie porównali wyniki różnych testowanych modeli i uszeregowali je pod względem formalności, dokładności i płynności.
Pokazaliśmy naszemu zespołowi oryginalne nieformalne zdanie, dane wyjściowe z kilku różnych modeli i przepisanie człowieka. Nie powiedzieliśmy im, kto – lub co – wygenerował każde zdanie. Następnie uszeregowali przeróbki, pozwalając na remisy. Idealnie, najlepszy model byłby powiązany lub nawet lepszy niż ludzki przepis. W sumie zespół przerobił 500 nieformalnych zdań.
Co znaleźliśmy
Podsumowując, przetestowaliśmy dziesiątki modeli, ale skupimy się na tych najważniejszych: opartych na regułach, opartych na frazach (PBMT), opartych na sieciach neuronowych (NMT) i kilku łączących różne podejścia.
Ludzkie przepisywanie uzyskało ogólnie najwyższe wyniki, ale modele PBMT i NMT nie były tak daleko w tyle. W rzeczywistości było kilka przypadków, w których ludzie woleli modele wyjściowe od ludzkich. Te dwa modele dokonały obszerniejszego przepisania, ale miały tendencję do zmiany znaczenia pierwotnego zdania.
Z drugiej strony modele oparte na regułach wprowadziły mniejsze zmiany. Oznaczało to, że byli lepsi w zachowywaniu znaczenia, ale tworzone przez nich zdania były mniej formalne. Wszystkie modele łatwiej radziły sobie z krótszymi zdaniami niż z dłuższymi.
Poniżej znajduje się przykład nieformalnego zdania z jego przeróbkami ludzkimi i wzorcowymi. W tym konkretnym przypadku to właśnie ostatni model (NMT z tłumaczeniem PBMT) osiągnął najlepszą równowagę między formalnością, znaczeniem i naturalnie brzmiącym frazowaniem.
Oryginalny nieformalny: rzadko widuję go w szkole albo zwykle widuję go na meczach koszykówki moich braci.
Ludzki przepis: Rzadko widuję go w szkole. Zwykle widuję go z moimi braćmi grającymi w koszykówkę.
Model oparty na zasadach: rzadko widuję go w szkole albo zwykle widuję go na meczach koszykówki moich braci.
Model PBMT: Ja też prawie nie widuję go w szkole, ale moi bracia grają w koszykówkę.
Model NMT: Rzadko widuję go w szkole, albo na meczach koszykówki mojego brata.
NMT (wyszkolony na dodatkowych danych generowanych przez PBMT): Rzadko widuję go w szkole albo zwykle widuję go na meczach koszykówki moich braci.
Transfer stylów to ekscytujący nowy obszar przetwarzania języka naturalnego, z potencjałem do szerokiego zastosowania. To narzędzie, które założyłem na początku — takie, które pomoże ci dowiedzieć się, jak powiedzieć to, co musisz powiedzieć? Jest jeszcze wiele do zrobienia, ale to narzędzie jest możliwe i będzie nieocenione dla osób poszukujących pracy, uczących się języków i każdego, kto poprzez swoje pisanie potrzebuje wywrzeć na kimś dobre wrażenie. Mamy nadzieję, że upubliczniając nasze dane, my i inne osoby w tej dziedzinie będziemy mieć sposób na porównanie się i posunięcie naprzód tego obszaru badań.
Jeśli chodzi o Grammarly, ta praca jest kolejnym krokiem w kierunku naszej wizji stworzenia wszechstronnego asystenta komunikacji, który pomoże zrozumieć Twój przekaz zgodnie z zamierzeniami.
Joel Tetreault jest dyrektorem ds. badań w Grammarly. Sudha Rao jest doktorantką na Uniwersytecie Maryland i odbyła staż naukowy w Grammarly. Joel i Sudha zaprezentują to badanie na 16. dorocznej konferencji północnoamerykańskiego oddziału stowarzyszenia Association for Computational Linguistics: Human Language Technologies w Nowym Orleanie, 1-6 czerwca 2018 r. Towarzyszący mu artykuł badawczy zatytułowany „Dear Sir or Madam , May I Introduc the GYAFC Dataset: Corpus, Benchmarks and Metrics for Formality Style Transfer” zostanie opublikowany w Proceedings of NAACL.