voice based gender recognition

Voicebot usability. Państwo, Ty, Pan czy Pani. A może bezosobowo? Jak voicebot powinien się zwracać do rozmówcy?

Usability jest jednym z najważniejszych elementów decydujących o akceptacji danej technologii lub usługi.

Usability voicebotów można rozumieć na wiele sposobów. Z jednej strony mamy klienta-rozmówcę, który z botem rozmawia. Ów klient ocenia bota ze swojej perspektywy wykorzystując do tego szeroko pojętych atrybutów jakościowych (quality attributes wg Jacob Nielsen). Większość z nas ocenia bota odpowiadając sobie na pytania: czy bot zrozumiał co do niego mówiłem, czy bot właściwie zinterpretował moją intencję lub jak szybko bot odpowiedział?

Dalej mamy klienta-zleceniodawcę, który ma do wykonania kampanię, którą trzeba najlepiej szybko przygotować i uruchomić. Wszak czas to pieniądz.

Z trzeciej strony mamy projektanta bota, współodpowiedzialnego za prawidłowe ułożenie sentencji i szeroko pojętą kulturę oraz osobowość bota. Projektant wykorzystuje szereg narzędzi, które mają za zadanie tą pracę mu ułatwić, tym samym dostarczyć użytecznego bota w jak najkrótszym czasie.

Każdy z powyższych aktorów ma swoje cele oraz oczekiwania:

Klient-rozmówca oczekuje, że bot będzie go rozumiał i załatwi z botem sprawę jak należy. W przypadku rozmowy przychodzącej klient będzie oczekiwał (zakładamy, że ma oczekiwania), że bot przedstawi właściwie ofertę, odpowie na wszelkie pytania i będzie prowadził rozmowę uwzględniając wszelkie intencje i obiekcje klienta-rozmówcy.

Klient-zleceniodawca chce robić biznes, wykorzystuje voiceboty po to aby optymalizować procesy i obsługiwać klientów szybciej, sprawniej i taniej. Jednocześnie nie tracąc na jakości obsługi, wręcz zwiększając satysfakcję klientów.

Projektant botów ma za zadanie sprostać wymaganiom klienta-zleceniodawcy i stworzyć bota, który będzie spełniał kryteria jakościowe (często subiektywne) klienta-rozmówcy jednocześnie realizując cele biznesowe. Musi w tym celu dobrać głos, ułożyć odpowiednio pytania, zdefiniować odpowiedzi, modele obiekcji. Musi dobrać modele sztucznej inteligencji do przetwarzania tekstu i wskazać zmiany poprawiające skuteczność. My to nazywamy stworzeniem osobowości bota. Odpowiednio dobrane komponenty sprawiają, że zarówno klient-zleceniodawca jak i klient-rozmówca (właściwie klienci-rozmówcy) są zadowoleni a bot zbiera pochwały.

Jednym z elementów, pozwalającym poprawić wizerunek oraz skuteczność bota są elementy świadczące o jego kulturze osobistej. Poza oczywistymi elementami jak sposób wypowiedzi, struktura zdań i dobór słów, jest jeszcze coś z czym voiceboty sobie nie do końca radzą. Mowa tu o zwrotach grzecznościowych.

Czy mieliście okazję rozmawiać z botem, który mówił do Was na Ty? A może bot mimo tego, że prowadził rozmowę z jedną osobą zwracał się do rozmówcy per Państwo, np: ile Państwo chcą zamówić biletów? Czy to brzmi naturalnie gdy bot rozmawia z jedną osobą?

O ile w kulturze zachodniej nie ma nic dziwnego w mówieniu sobie na Ty, o tyle w naszym kraju czy krajach azjatyckich jest to sprzeczne z obowiązującą kulturą oraz obyczajem, wręcz uważane za niegrzeczne. No może z wyjątkiem, kiedy voicebot jest kierowany do młodych ludzi a swobodny styl jest częścią jego charakteru.

Czyż nie grzeczniej by było gdyby bot zwracał się do rozmówcy per Pan lub Pani?

Pomyślcie o pracy projektanta-botów, który myśląc nad dialogiem niejednokrotnie musi formułować pytania w formie bezosobowej albo nad wyraz grzecznościowej, przez co zdania tracą sens.

  • Bot: Dzień Dobry.
  • Klient-rozmówca: Dzień dobry.
  • Bot: Dzwonię z firmy ... .
  • Bot wersja nr 1. "Państwo": Czy posiadają Państwo auto, którego ubezpieczenie kończy się w przeciągu najbliższych 30 dni?
  • Bot wersja nr 2. "na Ty": Czy posiadasz auto, którego ubezpieczenie kończy się w przeciągu najbliższych 30 dni?
  • Bot wersja nr 3. Rozpoznająca płeć: Czy posiada Pan auto, którego ubezpieczenie kończy się w przeciągu najbliższych 30 dni?

My zdecydowanie preferujemy wersję nr 3. Wersję, która potrafi dostosować się do rozmówcy i zwracać się do niego w sposób zgodny z przyjętymi normami społecznymi i dobrym obyczajem. Umiejętność bota, która pozwala na rozpoznanie płci na podstawie głosu to VBGR - Voice Based Gender Recognition.

VBGR jest to model bazujący na metodach sztucznej inteligencji, który pozwala na podstawie nawet bardzo krótkich zwrotów prawidłowo wskazać płeć rozmówcy. Technologia Evobot stworzona przez nasz software house potrafi rozpoznać płeć już na podstawie prostych słów, takich jak "halo", "witam", "dzień dobry", czy "pagi".

Do wykrycia płci użyliśmy zróżnicowanych cech dźwięku dzięki czemu model dobrze radzi sobie nawet w przypadkach gdy człowiek musi się zastanowić kto mówi (doświadczyliśmy tego zwłaszcza w przypadku bota działającego w Indonezji). Proces szukania cech był długi ale dzięki temu model osiąga bardzo dobre wyniki. Oczywiście pojawiły się problemy z jakością próbek względem faktycznych dźwięków. Udało się uzyskać skuteczność modelu na poziomie 96% w przypadku accuracy. Ważną sprawą był oczywiście dobór modelu który zapewni wysoką skuteczność. Szybko odrzuciliśmy drzewa decyzyjne i las drzew. Nasza uwaga skupiła się na XGBoost (implementacja Gradient Boosting) ponieważ nie zależało nam na interpretowalności oraz na wysokiej zdolności modelu (capacity).

Boosting jest bardzo ciekawą metodą z rodziny machine learning. Działa bardzo podobnie jak człowiek. Człowiek uczy się na błędach i próbuje je poprawiać. Boosting działa podobnie, tylko że za pomocą algorytmu. Zaczyna od prostego drzewa - z założeniem że dużo brakuje mu do doskonałości . Następnie buduje kolejne drzewo które próbuje poprawiać poprzednie. Zmniejsza to ryzyko przeuczenia modelu co często występuje w drzewach decyzyjnych. Gradient wynika z tego w jaki sposób jest zoptymalizowany model. Gradient to zwykła liczba (lub wektor liczb), która w wskazuje kierunek i intensywność wzrostu funkcji w danym punkcie.

Dlaczego wybraliśmy implementacje XGBoost? Technika ta jest już wystarczająco stabilna i gotowa do użycia w środowiskach produkcyjnych. Między innymi używają jej na szeroką skalę większe firmy jak chociazby Spotify. Dodatkowo mieliśmy doświadczenie przy poprzednich modelach i wiedzieliśmy że jego skuteczność jest wysoka. Warto tutaj wspomnieć o bardzo ciekawej bibliotece czyli hyperopt która ułatwia znalezienie optymalnych parametrów modelu , co wcale nie jest takie proste jeśli mamy robić to ręcznie. Ze wsparciem hyperopt byliśmy w stanie poprawić skuteczność nawet o 5% w zaledwie kilka minut.

Dzięki VBGR nasi projektanci botów i klienci nie muszą się gimnastykować projektując wypowiedzi bota. Nasze boty mówią w sposób bezpośredni, zwracając się wykorzystując zwroty grzecznościowe. Ponadto klienci-rozmówcy odbierają boty wykorzystujące VBGR jako bardziej kulturalne oraz prostsze do zrozumienia. Nasze badania pokazują, że klienci-rozmówcy pamiętają więcej szczegółów z rozmów z voicebotami wykorzystującymi VBGR. Ma to związek z tym, że ich myśli są skupione na rozmowie. Naturalna budowa zdań nie powoduje dodatkowego obciążenia pamięciowego rozmówcy. To wszystko sprawia, że efektywność botów wykorzystujących rozpoznawanie płci są lepsze a ilość przerwanych połączeń niższa.

Chcesz zobaczyć jak rozpoznawanie płci na podstawie głosu działa w praktyce? Zapisz się na demo.