53 KiB
Sztuczna empatia 1
Co to w ogóle jest empatia?
Joanna Siwek
Spis treści
import ipywidgets as widgets
from IPython.display import display
from IPython.display import HTML
from IPython.display import clear_output
Wstęp
Pojęcie empatii jest używane w odniesieniu do szerokiego zakresu zdolności psychologicznych, które są uważane za kluczowe dla pojmowania ludzi jako istot społecznych. Pozwalają one jednostce dowiedzieć się co myślą i czują inni, angażować się z nimi emocjonalnie, dzielić się swoimi przemyśleniami i uczuciami oraz dbać o ich dobre samopoczucie [6].
Sztuczna empatia to zdolność modelu (nie będącego człowiekiem) do przewidzenia stanu wewnętrznego człowieka (np. poznawczego, emocjonalnego, fizycznego), na podstawie emitowanych przez ową jednostkę sygnałów (np. mimiki, głosu, gestykulacji) lub też do przewidzenia reakcji (m.in. stanu wewnętrznego) tej jednostki, w wypadku gdy byłaby ona wystawiona na działanie czynnika stymulującego (np. mimiki, głosu, gestykulacji, grafiki, muzyki itd.)[7].
Podstawowe pojęcia
Zacznijmy od dokładnych definicji najważniejszego dla nas pojęcia, czyli empatii.
Wąska definicja empatii - jest to zdolność do formowania ucieleśnionej reprezentacji stanu emocjonalnego innych, w tym samym czasie będąc w pełni świadomym mechanizmu przyczynowo-skutkowego, który wywołał ów stan w drugiej jednostce [9].
Szersza definicja jest następująca:
Szeroka definicja empatii - Jest to połącznenie empatii emocjonalnej (rozumianej jako zdolność formułowania reprezentacji uczuć innych poprzez współdzielenie tych uczuć) oraz empatii kognitywnej (rozumianej jako zdolności poznawcze pozwalające na zapamiętywanie i wyobrażenie stanu emocjonalnego innej jednostki oraz umiejętność przyjęcia jej perspektywy)[9].
Obszary zainteresowań sztucznej empatii szukają odpowiedzina następujące pytania:
- Jakie warunki muszą być spełnione, aby agent (podmiot posiadający sztuczną empatię, nie będący człowiekiem) odpowiedział kompetentnie na emocje człowieka?
- Jakie modele empatii powinny być zastosowane do agentów takich jak towarzysze czy asystenci?
- Czy interakcje człowieka z agentem powinny imitować interakcje emocjonalne ludzi?
- Czy empatyczne roboty mogą pomóc naukowcom zrozumieć rozwój emocjonalny człowieka?
- Czy empatyczne roboty mogą stworzyć nieprzewidziane kategorie nieautentycznych relacji?
- Jakie relacje z empatycznymi agentami mogą być uważane za autentyczne?
Inteligencja emocjonalna to zdolność identyfikacji, zrozumienia oraz użycia emocji w sposób pozytywny, w celu zarządzania niepokojem, kominikacji, empatyzowania, radzenia sobie z sytuacjami, pokonywania problemów i rozwiązywania konfliktów. Oznacza postrzeganie, ewaluację i zarządzanie emocjami swoimi i innych. Inteligencja emocjonalna, bądź też zdolność do postrzegania, użycia, zrozumienia i regulacji emocji, jest koncepcją dość nową, której celem jest połączenie sfery emocjonalnej i poznawczej [4].
Czasami pojęcie sztucznej empatii stosuje się zamiennie z pojęciem empatii obliczeniowej. W celu ujednolicenia terminoglogii, wprowadźmy jeszcze pojęcie empatii obliczeniowej.
Empatia obliczeniowa jest to zdolność systemów obliczeniowych do zrozumienia i odpowiedzi na myśli, uczucia i emocje ludzi. [11]. Proszę zwrócić uwagę na fakt, iż w tej definicji system nie jest traktowany jako jednostka równożędna człowiekowi, jako podmiot, a jedynie jako przedmiot, który jest wykorzystywany przez człowieka. Nie zakłada się możliwości empatyzowania pomiędzy systemami. Empatia obliczeniowa skupia się na zrozmieniu działania człowieka oraz możliwie przewidzeniu jego zachowań, dzięki czemu moze być wykorzystana np. w marketingu (w odróżnieniu do sztucznej empatii, która jest pojęciem szerszym a jej celem jest doskonałe odwzorowanie procesów myślowych człowieka i zastosowanie w doskonałej sztucznej inteligencji).
W prezentowanym cyklu zajęć będziemy skupiać się na próbie wporowadzenia modelu empatycznego do systemu, umożliwiającego komunikację z użytkownikiem. System taki nazywamy podmiotem/agentem konwersacyjnym (conversational agent; w języku angielskim istnieje więcej niż jeden rodzaj "podmiotów". Podmiot zdolny do podejmowania decyzji i wykonywania akcji nazywany jest agentem. Podmiot bierny to "subject").
Podmiot konwersacyjny - jest to dowolny system dialogowy, który nie tylko dokonuje przetworzenia języka naturalnego, ale również automatycznie reaguje, używając języka zrozumiałego dla człowieka. Podmioty konwersacyjne są reprezentacją dla praktycznej implementacji lingwistyki obliczeniowej, zwykle stosowane jako chatboty bądź wirtualni asystenci w internecie i na urządzeniach mobilnych. Ich odpowiedź na bodziec wysłany przez użytkownika nie musi być tekstowa, może mieć formę mowy, grafiki, wirtualnego gestu bądź (w razie dostępnych urządzeń), gestu fizycznego [12].
Neuronauka
Empatia kognitywna
- emocje pierwotne
- rezonans motoryczny
- emocje o charakterze bardziej społecznym
- przyjmowanie perspektywy i teoria umysłu
- metapoznanie
- regulowanie emocji
- emocje czysto społeczne i zastępcze
- Efekt kalibracji
- Iluzja kontroli
- Nieuzasadniony optymizm
- Zjawisko wybiórczej atrybucji
- Błąd retrospekcjic) Reprezentatywność danych:
- Błąd hazardzisty
- Błąd krótkich serii
- Prawo regresji do średniej
d) Aktualizacja przekonań
- Konserwatyzm poznawczy
- Iluzja poprawności
- Racjonalizacja
Skrócony test ilorazu empatii
from IPython.display import HTML
HTML('''<script>
code_show=true;
function code_toggle() {
if (code_show){
$('div.input').hide();
} else {
$('div.input').show();
}
code_show = !code_show
}
$( document ).ready(code_toggle);
</script>
<form action="javascript:code_toggle()"><input type="submit" value="Kliknij tutaj żeby schować/pokazać kod"></form>''')
a0 = widgets.Dropdown(
options=[('Zdecydowanie tak', 2), ('Raczej tak', 1), ('Raczej nie', 0), ('Zdecydowanie nie', 0)],
value=2,
)
widgets.HBox([widgets.Label('Szybko i intuicyjnie dostrajam się do samopoczucia drugiej osoby.'),a0])
HBox(children=(Label(value='Szybko i intuicyjnie dostrajam się do samopoczucia drugiej osoby.'), Dropdown(opti…
a1 = widgets.Dropdown(
options=[('Zdecydowanie tak', 2), ('Raczej tak', 1), ('Raczej nie', 0), ('Zdecydowanie nie', 0)],
value=2,
)
widgets.HBox([widgets.Label('Potrafię przewidzieć, jak ktoś inny będzie się czuł.'),a1])
HBox(children=(Label(value='Potrafię przewidzieć, jak ktoś inny będzie się czuł.'), Dropdown(options=(('Zdecyd…
a2 = widgets.Dropdown(
options=[('Zdecydowanie tak', 0), ('Raczej tak', 0), ('Raczej nie', 1), ('Zdecydowanie nie', 2)],
value=0,
)
widgets.HBox([widgets.Label('Jest mi trudno zrozumieć, dlaczego ludzie tak bardzo denerwują się różnymi rzeczami.'),a2])
HBox(children=(Label(value='Jest mi trudno zrozumieć, dlaczego ludzie tak bardzo denerwują się różnymi rzeczam…
a3 = widgets.Dropdown(
options=[('Zdecydowanie tak', 0), ('Raczej tak', 0), ('Raczej nie', 1), ('Zdecydowanie nie', 2)],
value=0,
)
widgets.HBox([widgets.Label('W sytuacjach towarzyskich nie wiem jak się zachować.'),a3])
HBox(children=(Label(value='W sytuacjach towarzyskich nie wiem jak się zachować.'), Dropdown(options=(('Zdecyd…
a4 = widgets.Dropdown(
options=[('Zdecydowanie tak', 2), ('Raczej tak', 1), ('Raczej nie', 0), ('Zdecydowanie nie', 0)],
value=2,
)
widgets.HBox([widgets.Label('Sytuacje towarzyskie nie wprawiają mnie w zakłopotanie.'),a4])
HBox(children=(Label(value='Sytuacje towarzyskie nie wprawiają mnie w zakłopotanie.'), Dropdown(options=(('Zde…
a5 = widgets.Dropdown(
options=[('Zdecydowanie tak', 2), ('Raczej tak', 1), ('Raczej nie', 0), ('Zdecydowanie nie', 0)],
value=2,
)
widgets.HBox([widgets.Label('Ludzie mówią mi, że dobrze rozumiem jak się czują i co mają na myśli.'),a5])
HBox(children=(Label(value='Ludzie mówią mi, że dobrze rozumiem jak się czują i co mają na myśli.'), Dropdown(…
a6 = widgets.Dropdown(
options=[('Zdecydowanie tak', 2), ('Raczej tak', 1), ('Raczej nie', 0), ('Zdecydowanie nie', 0)],
value=2,
)
widgets.HBox([widgets.Label('Z łatwością zauważam, jeśli ktoś chce się włączyć do rozmowy.'),a6])
HBox(children=(Label(value='Z łatwością zauważam, jeśli ktoś chce się włączyć do rozmowy.'), Dropdown(options=…
a7 = widgets.Dropdown(
options=[('Zdecydowanie tak', 2), ('Raczej tak', 1), ('Raczej nie', 0), ('Zdecydowanie nie', 0)],
value=2,
)
widgets.HBox([widgets.Label('Z łatwością orientuję się, czy ktoś jest zainteresowany, czy znudzony tym, co mówię.'),a7])
HBox(children=(Label(value='Z łatwością orientuję się, czy ktoś jest zainteresowany, czy znudzony tym, co mówi…
a8 = widgets.Dropdown(
options=[('Zdecydowanie tak', 0), ('Raczej tak', 0), ('Raczej nie', 1), ('Zdecydowanie nie', 2)],
value=0,
)
widgets.HBox([widgets.Label('Ludzie często mówią, że jestem nieczuły, choć ja sam nie zawsze wiem dlaczego.'),a8])
HBox(children=(Label(value='Ludzie często mówią, że jestem nieczuły, choć ja sam nie zawsze wiem dlaczego.'), …
a9 = widgets.Dropdown(
options=[('Zdecydowanie tak', 2), ('Raczej tak', 1), ('Raczej nie', 0), ('Zdecydowanie nie', 0)],
value=2,
)
widgets.HBox([widgets.Label('Z łatwością potrafię postawić się w sytuacji innej osoby.'),a9])
HBox(children=(Label(value='Z łatwością potrafię postawić się w sytuacji innej osoby.'), Dropdown(options=(('Z…
a10 = widgets.Dropdown(
options=[('Zdecydowanie tak', 2), ('Raczej tak', 1), ('Raczej nie', 0), ('Zdecydowanie nie', 0)],
value=2,
)
widgets.HBox([widgets.Label('Szybko orientuję się, gdy ktoś mówi co innego, niż myśli.'),a10])
HBox(children=(Label(value='Szybko orientuję się, gdy ktoś mówi co innego, niż myśli.'), Dropdown(options=(('Z…
a11 = widgets.Dropdown(
options=[('Zdecydowanie tak', 0), ('Raczej tak', 0), ('Raczej nie', 1), ('Zdecydowanie nie', 2)],
value=0,
)
widgets.HBox([widgets.Label('W rozmowie koncentruję się raczej na tym, co ja myślę, a nie na tym, co może myśleć mój rozmówca.'),a11])
HBox(children=(Label(value='W rozmowie koncentruję się raczej na tym, co ja myślę, a nie na tym, co może myśle…
a12 = widgets.Dropdown(
options=[('Zdecydowanie tak', 2), ('Raczej tak', 1), ('Raczej nie', 0), ('Zdecydowanie nie', 0)],
value=2,
)
widgets.HBox([widgets.Label('Potrafię przewidzieć jak ktoś inny się zachowa.'),a12])
HBox(children=(Label(value='Potrafię przewidzieć jak ktoś inny się zachowa.'), Dropdown(options=(('Zdecydowani…
a13 = widgets.Dropdown(
options=[('Zdecydowanie tak', 0), ('Raczej tak', 0), ('Raczej nie', 1), ('Zdecydowanie nie', 2)],
value=0,
)
widgets.HBox([widgets.Label('Nie zawsze rozumiem, dlaczego ktoś poczuł się urażony.'),a13])
HBox(children=(Label(value='Nie zawsze rozumiem, dlaczego ktoś poczuł się urażony.'), Dropdown(options=(('Zdec…
a14 = widgets.Dropdown(
options=[('Zdecydowanie tak', 2), ('Raczej tak', 1), ('Raczej nie', 0), ('Zdecydowanie nie', 0)],
value=2,
)
widgets.HBox([widgets.Label('Szybko zauważam, kiedy ktoś w grupie czuje się niezręcznie lub niekomfortowo.'),a14])
HBox(children=(Label(value='Szybko zauważam, kiedy ktoś w grupie czuje się niezręcznie lub niekomfortowo.'), D…
a15 = widgets.Dropdown(
options=[('Zdecydowanie tak', 2), ('Raczej tak', 1), ('Raczej nie', 0), ('Zdecydowanie nie', 0)],
value=2,
)
widgets.HBox([widgets.Label('Potrafię rozpoznać, jeśli ktoś ukrywa swoje prawdziwe uczucia.'),a15])
HBox(children=(Label(value='Potrafię rozpoznać, jeśli ktoś ukrywa swoje prawdziwe uczucia.'), Dropdown(options…
a16 = widgets.Dropdown(
options=[('Zdecydowanie tak', 2), ('Raczej tak', 1), ('Raczej nie', 0), ('Zdecydowanie nie', 0)],
value=2,
)
widgets.HBox([widgets.Label('Znajomi zazwyczaj opowiadają mi o swoich problemach, bo uważają, że dobrze ich rozumiem.'),a16])
HBox(children=(Label(value='Znajomi zazwyczaj opowiadają mi o swoich problemach, bo uważają, że dobrze ich roz…
a17 = widgets.Dropdown(
options=[('Zdecydowanie tak', 2), ('Raczej tak', 1), ('Raczej nie', 0), ('Zdecydowanie nie', 0)],
value=2,
)
widgets.HBox([widgets.Label('Potrafię wyczuć czy przeszkadzam, nawet jeśli ktoś mi o tym nie powie.'),a17])
HBox(children=(Label(value='Potrafię wyczuć czy przeszkadzam, nawet jeśli ktoś mi o tym nie powie.'), Dropdown…
a18 = widgets.Dropdown(
options=[('Zdecydowanie tak', 2), ('Raczej tak', 1), ('Raczej nie', 0), ('Zdecydowanie nie', 0)],
value=2,
)
widgets.HBox([widgets.Label('Zazwyczaj przejmuję się problemami moich przyjaciół.'),a18])
HBox(children=(Label(value='Zazwyczaj przejmuję się problemami moich przyjaciół.'), Dropdown(options=(('Zdecyd…
a19 = widgets.Dropdown(
options=[('Zdecydowanie tak', 2), ('Raczej tak', 1), ('Raczej nie', 0), ('Zdecydowanie nie', 0)],
value=2,
)
widgets.HBox([widgets.Label('Łatwo domyślam się, o czym druga osoba chce ze mną rozmawiać.'),a19])
HBox(children=(Label(value='Łatwo domyślam się, o czym druga osoba chce ze mną rozmawiać.'), Dropdown(options=…
a20 = widgets.Dropdown(
options=[('Zdecydowanie tak', 2), ('Raczej tak', 1), ('Raczej nie', 0), ('Zdecydowanie nie', 0)],
value=2,
)
widgets.HBox([widgets.Label('Lubię troszczyć się o innych ludzi.'),a20])
HBox(children=(Label(value='Lubię troszczyć się o innych ludzi.'), Dropdown(options=(('Zdecydowanie tak', 2), …
a21 = widgets.Dropdown(
options=[('Zdecydowanie tak', 0), ('Raczej tak', 0), ('Raczej nie', 1), ('Zdecydowanie nie', 2)],
value=0,
)
widgets.HBox([widgets.Label('Często trudno mi ocenić, czy coś jest grzeczne czy nie.'),a21])
HBox(children=(Label(value='Często trudno mi ocenić, czy coś jest grzeczne czy nie.'), Dropdown(options=(('Zde…
button = widgets.Button(description='Podlicz punkty')
out = widgets.Output()
def on_button_clicked(_):
# "linking function with output"
with out:
# what happens when we press the button
clear_output()
c=a0.value+a1.value+a2.value+a3.value+a4.value+a5.value+a6.value+a7.value+a8.value+a9.value+a10.value+a11.value+a12.value+a13.value+a14.value+a15.value+a16.value+a17.value+a18.value+a19.value+a20.value+a21.value
print("Twój wynik to:", c)
button.on_click(on_button_clicked)
# displaying button and its output together
widgets.VBox([button,out])
VBox(children=(Button(description='Podlicz punkty', style=ButtonStyle()), Output()))
Wyniki
Podsumowanie
Zadania
- Wykonaj skrócony test empatii zamieszczony powyżej. Porównaj swoje wyniki z innymi.
Wynik 34
- Zagadnienia empatii są obecnie bardzo popularne w niektórych dziedzinach życia, np. marketingu, medycynie, zarządzaniu zasobami ludzkimi, itd. Poszukaj przykladów stosowania metod empatycznych do celów komercyjnych. Zbierz odpowiedzi grupy laboratoryjnej w jedną tabelę. Unikaj powtórzeń.
Badania rynkowe - Firma przeprowadza badania rynkowe, aby lepiej zrozumieć potrzeby swoich klientów i dostosować swoje produkty lub usługi do ich wymagań. Badania te mogą obejmować ankiety, wywiady lub obserwacje zachowań konsumentów. Tworzenie person - Firma tworzy profile klientów, aby zrozumieć, kim są ich klienci i jakie są ich potrzeby. Na podstawie tych profili można dostosować ofertę do potrzeb różnych grup klientów. Design thinking - Design thinking to podejście, w którym firma stara się zrozumieć i rozwiązać problemy swoich klientów. Przykładem takiego podejścia może być projektowanie produktów lub usług z myślą o użytkownikach, tak aby spełniały ich potrzeby. Personalizacja - Firma oferuje personalizowane produkty lub usługi, takie jak spersonalizowane buty, ubrania lub programy żywieniowe, które spełniają konkretne wymagania klientów. Działania CSR - Firma angażuje się w działania społeczne, aby pokazać, że jej wartości są zgodne z wartościami jej klientów. Działania takie mogą obejmować wsparcie dla lokalnych społeczności, ochronę środowiska czy walkę z dyskryminacją.
- Narysuj mapę empatii dla hipotetycznego AI. Wykorzystaj następujący schemat:
Odbiera: wiadomości użytkownika
Mówi: wyraża opinie o wędkarstwie
Myśli: zna się lepiej na wędkarstwie niż użytkownik
Robi: ignoruje wszystkie tematy oprócz wędkarstwa
Czuje: Miłość do ryb
- Celem cyklu prezentowanych laboratoriów będzie stworzeniu systemu wyposażonego w sztuczną empatię. Aby nakreślić wstępny plan systemu, wykorzystaj metodę zamieszczoną w linku poniżej. W jakiej sferze życia/działalności będzie działał Twój chatbot? Kto będzie jego użytkownikiem? Jakie będą granice jego działania?
Empatyczny chatbot fanatyk wędkarstwa. Chatbot będzie każdą rozmowę sprowadzał do wędkarstwa. Chatbot będzie się obrażał gdy użytkownik będzie zmieniał temat lub gdy będzie fanem innej ryby niż chatbot. Użytkownikiem chatbota będzie każda osoba, w szczególności wędkarze.
https://www.ibm.com/design/thinking/page/toolkit/activity/writing-hills
Źródła:
[1] http://psychiatriapolska.pl/uploads/images/PP_4_2017/719JankowiakSiuda_PsychiatrPol2017v51i4.pdf
[2] Neuronauka o podstawach człowieczeństwa: O czym mówi mózg? (2012) (oryg. The Tell-Tale Brain: A Neuroscientist's Quest for What Makes Us Human 2011) Wydawnictwa Uniwersytetu Warszawskiego, ISBN 978-83-235-0911-0
[3] Drigas, A.S.; Papoutsi, C. A New Layered Model on Emotional Intelligence. Behav. Sci. 2018, 8, 45. https://doi.org/10.3390/bs8050045
[4] Gutiérrez-Cobo, M.J.; Cabello, R.; Fernández-Berrocal, P. (2016), The relationship between emotional intelligence and cool and hot cognitive processes: A systematic review. Front. Behav. Neurosci. vol. 10, iss. 101.
[5] Manning et. al., 2014, Selling today, ed. 12, Pearson Education, ISBN: 9780132109901.
[6] https://plato.stanford.edu/entries/empathy/
[7] Xiao, L., Kim, H. J., & Ding, M. (2013). "An introduction to audio and visual research and applications in marketing". Review of Marketing Research, 10, p. 244. doi:10.1108/S1548-6435(2013)0000010012
[8] Caspers S, Zilles K, Laird AR, Eickhoff SB. ALE meta-analysis of action observation and imitation in the human brain. Neuroimage. 2010 Apr 15;50(3):1148-67. doi: 10.1016/j.neuroimage.2009.12.112
[9] Asada, M. (2014). Affective Developmental Robotics ∗ How can we design the development of artifcial empathy ?
[10] Asada, M. Towards Artificial Empathy. Int J of Soc Robotics 7, 19–33 (2015). https://doi.org/10.1007/s12369-014-0253-z
[11] Özge Nilay Yalçın, Steve DiPaola, Modeling empathy: building a link between affective and cognitive processes Artificial Intelligence Review ( IF 5.747 ), DOI: 10.1007/s10462-019-09753-0
[12] https://deepai.org/machine-learning-glossary-and-terms/conversational-agent
[13] Stephan, A. Empathy for Artificial Agents. Int J of Soc Robotics 7, 111–116 (2015). https://doi.org/10.1007/s12369-014-0260-0