Sztuczna_empatia/SE7.ipynb
Jakub Adamski 6565d4a424 SE7
2023-06-14 11:46:04 +02:00

709 lines
46 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"cells": [
{
"attachments": {},
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "-"
}
},
"source": [
"![baner aitech](../grafiki/SE7/logo.jpg \"baner\") \n",
"\n",
"***\n",
"\n",
"# <b>Sztuczna empatia 7</b>\n",
"## Empatia w medycynie\n",
"### Joanna Siwek\n",
"\n",
"***\n",
"\n",
"### Spis treści\n",
"1. [Wstęp](#introduction)\n",
"2. [Uszkodzenia mózgu a empatia](#paragraph1)\n",
"3. [Zastosowania SE w medycynie](#paragraph2)\n",
"4. [Zastosowania SE w psychologii](#paragraph3)\n",
"5. [Zadania](#paragraph4)\n",
"\n",
"***\n",
"\n",
"![baner ue](../grafiki/SE7/ae_ue.jpg \"baner\") "
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### Wstęp <a name=\"introduction\"></a>\n",
"<br> \n",
"<div style=\"text-align: justify\">Jednym z obszarów, gdzie sztuczna empatia ma coraz szersze zastosowanie, jest medycyna i psychologia. Dzięki empatycznej AI, dostęp do usług medycznych jest możliwy dla osób, które w normalnym przypadku nie miałyby do nich dostępu: mieszkańcom obszarów o niedostatecznej ilości specjalistów, nie posiadającym odpowiednich funduszy czy też zmagającym się z niepełnosprawnościami i problemami uniemożliwiającymi kontakt twarzą w twarz. Już w tym momencie panuje bardzo duże zapotrzebowanie na tego typu usługi, szczególne w sferze diagnostyki, wsparcia lekarzy oraz wspomagania terapii. Istnieje jednak bardzo duży problem natury moralnej - nie ma jednoznacznie zdefiniowanych zasad etycznych używania AI w medycynie. Jak ma się to do zasady, by przede wszystkim nie szkodzić? Czy sztuczna empatia może zastąpić empatię człowieka? A może jest to tylko krótkoterminowe oszustwo?</div>\n",
"<br>\n",
"<div style=\"text-align: justify\">Możliwe są również zastosowania sztucznej empatii z innej perspektywy. Sztuczna inteligencja może pomóc osobom, których zdolności empatyczne są upośledzone czy uszkodzone. AI wykazuje bardzo duży potencjał w dziedzinie diagnostyki psychologicznej, czyli dziedziny, gdzie do tej pory każda diagnoza wymagała długiej i żmudnej analizy stanu psychicznego pacjenta. AI pozwala na automatyczną i jednoznaczną diagnostykę takich chorób i upośledzeń jak autyzm, choroba Alzheimera, demencja, zaburzenia empatyczne. A możliwe jest to np. przy wykorzystaniu akcelerometrów w smartwatchach.</div>"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### Uszkodzenia mózgu a empatia <a name=\"Paragraph1\"></a>\n",
"<br>\n",
"<div style=\"text-align: justify\">Empatia odgrywa główną rolę w takich obszarach jak wnioskowanie natury moralnej, zachowania prospołeczne i ograniczanie agresji wobec innych [1]. Badania nad uszkodzeniami mózgu wskazują na bardzo duży związek pomiędzy problemami z empatią a nieczynnymi obszarami mózgu. Pozwala to na bardziej szczegółowe określenie, jak tak naprawdę działa empatia u człowieka. Pozwolę sobie w tym miejscu pominąć nazwy konkretnych obszarów mózgu, o uszkodzeniach których jest mowa. Szczegółowe badania można znaleźć w [16].</div>\n",
"\n",
"<div style=\"text-align: justify\">Wyróżnia się następujące upośledzenia empatii:</div>\n",
"\n",
" * <div style=\"text-align: justify\">CEDD (cognitive empathy deficit disorder) - jest to upośledzenie polegające na niedostatecznej empatii kognitywnej oraz zwiększonym poziomie empatii emocjonalnej. Osoby z CEDD wykazują znaczne problemy społeczne i zmniejszoną tendencję do rozumienia zachowania innych. Mają duże problemy z komunikacją i nie rozumieją oszustwa. Są to osoby szczere i naiwne, nie mające pojęcia, w jaki sposób ich zachowanie wpływa na innych. Życie społeczne jest dla niech niezrozumiałe, nieprzewidywalne i przerażające. Są bardzo wrażliwe na stany emocjonalne innych. Do grona tych osób zalicza się osoby z autyzmem.</div>\n",
" <br>\n",
" * <div style=\"text-align: justify\">EEDD (emotional empathy deficit disorder) - upośledzenie polegające na wysokim poziomie empatii kognitywnej i niskim poziomie empatii emocjonalnej. Osoby z EEDD bardzo dobrze rozumieją zachowania innych i ich stany emocjonalne. Życie społeczne nie jest dla nich skomplikowane, mają bardzo dobrze rozwinięte umiejętności interpersonalne. Mogą wydawać się osobami czarującymi, jednakże nie potrafią współdzielić stanów emocjonalnych innych. Osoby takie mogą być bardzo dobre w manipulowaniu innymi, oszukiwaniu i udawaniu. Są samolubne, mogą ranić i wykorzystywać innych. Do tego grona zaliczamy psychopatów.</div>\n",
" <br>\n",
" * <div style=\"text-align: justify\">GEDD (general empathy deficit disorder) - upośledzenie polegające na niskim poziomie zarówno empatii kognitywnej jak i emocjonalnej. Osoby z tym upośledzeniem nie rozumieją życia społecznego , moga być niekonwencjonalne i aspołeczne. Równocześnie mogą być łatwowierne i naiwne. Osoby takie nie będą współdzieliły stanów emocjonalnych innych osób i mogą czasami ranić innych. Z drugiej strony jednak osoby te nie będą potrafiły samemu manipulować i oszukiwać innych. W spektrum to wpadają osoby wycofane społecznie.</div>\n",
" <br>\n",
" * <div style=\"text-align: justify\">GESD (general empathy surfeit disorder) - upośledzenie polegające na wysokim poziomie zarówno empatii kognitywnej jak i emocjonalnej. Osoby z GESD mają bardzo dobrze rozwinięte zdolności interpersonalne. Mogą być bardzo rozmowne. Są to osoby bardzo wrażliwe na emocje innych, aktywne społecznie, mające bardzo dobre zrozumienie kognitywne stanów emocjonalnych innych osób. Z drugiej strony, osoby te są często przewrażliwione, o nadmiernej empatii, która może stać się uciążliwa. Osoba z GESD może \"zgubić się\" w emocjach innych i zatracić pojęcie własnego \"ja\". Do tej kategorii zalicza się np. \"social justice warriors\".</div>"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### Zastosowania SE w medycynie <a name=\"Paragraph2\"></a>\n",
"<br>\n",
"\n",
"#### Diagnostyka choroby Alzheimera\n",
"<br>\n",
"<div style=\"text-align: justify; font-size:1.1em\">Choroba Alzheimera jest chorobą nieuleczalną, wpływającą w znacznym stopniu na jakość życia osoby chorej. Jeżeli choroba zostanie wykryta we wczesnym stadium, możliwe jest zastosowanie terapii opóźniającej jej postęp. Dlategoteż bardzo ważne jest bardzo wczesne wykrycie, co niestety nie jest zawsze możliwe. Osoby z chorobą Alzheimera mają problem z rozpoznaniem emocji na twarzach i w głosie innych. Jednym z testów określających przynależność do spektrum Alzheimera jest pokazywanie pacjentom zdjęć i nagrań osób, z prośbą o dopasowanie jednej z 4 dostępnych emocjii, wszystko w ograniczeniu czasowym [14]. Jednym z zastosowań sztucznej empatii jest obserwacja pacjenta oglądającego i słuchającego emocji innych i określenie, poprzez rozpoznanie emocji, ewentualnych problemów: zagubienia, frustracji, złości [14].</div>\n",
"<br>\n",
"<div style=\"text-align: justify; font-size:1.1em\">Kolejne zastosowanie sztucznej empatii w pomocy osobom z chorobą Alzheimera jest możliwość zapewnienia tym osobom możliwości rozmowy. Niestety, pomimo to, iż istnieje sporo forów dla osób z chorobą Alzheimera, nawet tam trudno jest tym osobom rozmawiać, ponieważ bardzo często nie są one w stanie utrzymać spójnej i tematycznej rozmowy [15]. W związku z tym proponuje się osobom chorym rozmowy z empatycznym chat-botem, który nie znudzi się rozmową, nie zwróci uwagi na błędy czy niespójność, a równocześnie zaoferuje empatię i wsparcie. Powstaje jednak pytanie natury moralnej - czy taka empatia jest prawdziwa, czy też jest to oszukiwanie nieświadomej starszej osoby?</div>\n",
"<br>\n",
"<div style=\"text-align: justify; font-size:1.1em\">Paro to interaktywna maskotka zaprojektowana w celu wsparcia terapii osób z demencją w ośrodkach opieki oraz dzieci przebywających przez długi czas na oddziałach szpitalnych. Paro ma kształt małej foki, która potrafi ruszać głową, oczami, płetwami i ogonem. Może też wdawać z siebie dzwięki, oraz reaguje na swoje imię. Paro jest wyposażona w czujniki dotyku i potrafi zareagować na podniesienie czy głaskanie. Natchnieniem do zaprojektowania Paro była gra Tamagochi. Pomysł polega na tym, aby osoby starsze poczuły się potrzebne poprzez możliwość zaopiekowania się Paro, ktróra będzie reagować na sygnały od nich płynące. Badania wykazują, iż Paro ma pozytywny wpływ na redukcję depresji u dzieci oraz stresu u osób starszych (określony na podstawie stężenia hormonów stresu przed i po terapii z Paro). Technologicznie, Paro wykorzystuje sztuczną empatię poprzez mimikrę i odpowiadanie pozytywnymi sygnałami na sygnały użytkownika, oraz zdziwieniem na sygnały negatywne. Wachlarz reakcji robota jest dość szeroki, jednakże niewerbalny. Obejmuje mimikę (spojrzenia), dzwięki, ruch, wodzenie za źrodłem dzwięku, reakcję na imię, reakcję na podniesienie, głaskanie, karmienie [2, 13]</div> \n",
"\n",
" #### Diagnostyka autyzmu\n",
"<br>\n",
"<div style=\"text-align: justify; font-size:1.1em\">Autyzm to upośledzenie polegające na wyjątkowo niskiej aktywności mózgu w obszarze, w którym znajdują się neurony lustrzane. Oznacza to, że osoby z autyzmem posiadają ograniczoną możliwość empatyzowania z innymi [4]. Sztuczna inteligencja jest wykorzystywana w diagnostyce autyzmu, ponieważ tradycyjne metody diagnostyczne są drogie, subiektywne i czasochłonne. Metody te są głównie oparte o rozmowę lekarzy z członkami rodzin pacjentów - co nie jest metodą obiektywną i może prowadzić do nadużyć. AI jest w stanie zaoferować miary, którę pomagają we wczesnym wykryciu autyzmu. Metody AI polegają na użyciu widzenia komputerowego w celu analizy drobnych ruchów ciała (np. gałki ocznej) pacjenta, lub też analizy głosu czy emocji podczas oglądania filmu. Drobne ruchy mogą być również pobierane z takich urządzeń jak smartwatch. Metody te pozwalają na ocenę stanu pacjenta w warunkach domowych, bez nadmiernego stresu [10]. Uczenie maszynowe jest w stanie wyodrębnić fenotypy zachowań osób z autyzmem, np. poprzez analizę obrazów aktywności mózgu przy wykonywaniu pewnych czynności. Dzięki sieciom neuronowym możliwe jest stworzenie nowych, obiektywnych i nieliniowych skali spektrum autyzmu, pozwalających na szybsze i dokładniejsze dopasowanie diagnozy. Jest to bardzo ważne, ponieważ autyzm jest upośledzeniem rozwoju - odpowiednio wcześnie wykryty pozwala na wprowadzenie technik wsparcia rozwoju i tym samym zwiększenie możliwości funkcjonowania osób z autyzmem. Jednym z przykładów takich skal jest model skalowy z logiką rozmytą (Fuzzy Cognitive Maps) [11].</div>\n",
"<br>\n",
"<div style=\"text-align: justify; font-size:1.1em\">Sztuczna inteligencja jest tez wykorzystywana w terapii dzieci z autyzmem. Projekt AURORA stworzył interaktywnego, wytrzymałego robota, z którym autystyczne dzieci mogą się bawić. Robot jest w stanie utrzymać ich uwagę, a równocześnie uczy je interakcji społecznych. Interakcja z robotem rozpoczyna się na niskim poziomie - robot uczy prostych zachowań takich jak wypowiadanie się na zmianę w dialogu, oczekiwanie na zakończenie wypowiedzi rozmówcy. Z czasem, robot oferuje bardziej skomplikowane i mniej powtarzalne, bardziej nieprzewidywalne dla dziecka reakcje. Idea jest taka, że dziecko potrafi wykorzystać umiejętności nabyte przez zabawę z robotem w interakcji z innym człowiekiem. Czy tak jest naprawdę, nie udowodniono [12].</div>\n",
"\n",
"\n",
"#### Choroba Parkinsona\n",
"\n",
"<br>\n",
"<div style=\"text-align: justify; font-size:1.1em\">Sztuczna inteligencja może być zaprogramowana do identyfikacji i wyrażania emocji zwrotnej na sygnały emocjonalne odbiorcy. Jednakże AI nie jest w stanie \"odczuwać\" emocji, dlatego jest to raczej forma mimikry. Na podstawowym poziomie emocjonalnym (proste emocje takie jak smutek czy radość), właściwą reakcją na emocję rozmówcy jest skopiowanie tej reakcji.</div>\n",
"<br>\n",
"<div style=\"text-align: justify; font-size:1.1em\">Mimikra prostych emocji ma zastosowanie w pomocy osobom cierpiącym na chorobę Parkinsona. We wczesnych swoich stadiach choroba ta objawia się \"maską\" na twarzy pacjenta - ponieważ mózg ma problem z przekazywaniem informacji do mięśni, pacjent traci drobne ruchy ciała, mimikę oraz ton głosu, dzięki którym inni rozpoznają jego emocje. Z tego powodu, osoby z Parkinsonem często wydają się obojętne lub nieczułe podczas rozmowy. Z tego powodu powstały empatyczne roboty, wyposażone w systemy rozpoznawania emocji wyostrzone na nikłe sygnały, które wysyłają osoby chore. Roboty takie pozwalają pacjentowi na interakcję oraz w przeciwieństwie do opiekunów, których mózgi odbierają drobne sygnały od osób chorych jako brak zaangażowania, roboty te nie męczą się i oferują wsparcie emocjonalne [5].</div> \n",
" \n",
" \n",
"#### Obsługa pacjenta\n",
"\n",
"<br>\n",
"<div style=\"text-align: justify; font-size:1.1em\">Najbardziej odciążającym służbę zdrowia zastosowaniem SE jest wstępna selekcja pacjentów podczas kierowania do lekarza specjalisty. Niestety, ze względu na charakter zawodu, nie ma tu niestety możliwości prostego przeklikania symptomów - aby pacjent trafił do dobrego specjalisty, konieczne jest pewne zaufanie do \"lekarza pierwszego kontaktu\", jego doświadczenie, zrozumienie i empatia. Pacjenci bardzo często nie wiedzą sami, które symptomy są ważne dla diagnostyki, często opowiadają historię swojego życia, z której trzeba wyinferować ukryte informacje. Dlatego też prosty chatbot nie zawsze sprawdzi się jako dobry kwalifikator - może dla ogólnych, typowych przypadków - ale nie może zastąpić doświadczonego lekarza. Wyposażenie takiego podmiotu w bardzo dobry system przetwarzania języka oraz moduły empatii pozwoliłby na rozszerzenie ilości przypadków dobrze zakwalifikowanych do specjalisty w sposób automatyczny. Jednakże pracownicy służby zdrowia podnoszą pytanie: czy jest to etyczne? Kto ponosi odpowiedzialność za złą kwalifikacje albo niedostatecznie szybką reakcję?</div>"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### Zastosowania SE w psychologii<a name=\"Paragraph3\"></a>\n",
"<br>\n",
"\n",
"#### Wirtualni terapeuci\n",
"<br>\n",
"<div style=\"text-align: justify\">Dostępni na rynku wirtualni terapeuci to w większości aplikacje umożliwiające interakcję z użytkownikiem przy pomocy języka naturalnego, mające na celu wsparcie go w osiągnięciu konkretnego celu. Aplikacje te bardzo często wykorzystują platformy takie jak Twitter oraz są wzbogacone o materiały o tematyce medycznej, mające pomóc osobom z problemami psychicznymi. Przykładami wirtualnych terapeutów są np. Woebot (nastawiony na pomoc osobom z depresją) oraz Shim (nastawiony na redukcję stresu poprzez konwersację). Minusem obu tych aplikacji jest fakt, iż nie posiadają one typowych mechanizmów empatycznych oraz oferują jedynie krótkie i proste odpowiedzi tekstowe [6].</div>\n",
" <br>\n",
" <div style=\"text-align: justify\">Innym pomysłem jest integracja sztucznej inteligencji z platformą Koko. Koko to miejsce, komunikator, gdzie osoby z problemami moga wysyłać swoje posty, a osoby pragnące pomóc mogą na nie odpowiadać. Dzięki temu możliwe jest empatyczne wsparcie użytkownika przez innych. Minusem platformy jest fakt, iż na odpowiedź ze strony innych użytkowników trzeba bardzo długo czekać. Pojawił się więc pomysł, aby w czasie oczekiwania na empatyczną odpowiedź człowieka użytkownik mógł skorzystać z empatycznej odpowiedzi zaoferowanej przez sztuczną inteligencję. Jednakże pomysł ten jest bardzo kontrowersyjny - sztuczna inteligencja nie generowała swoich własnych odpowiedzi na problem użytkownika, a jedynie obliczała podobieństwo jego problemu do problemów, które znajdowały się juz w jej bazie danych - i z odpowiedzi użytkowników na najbardziej podobny problem wybierała odpowiedź o najwyższym prawdopodobieństwie, przesyłając ją do użytkownika jako własną. Pomimo, iż przesłana odpowiedź mogła stanowić pomoc dla użytkownika, sam sposób pomocy może wydawać się nieetyczny [5]. Oznacza to, iż system nie jest naprawdę empatyczny - nie ma modułów sztucznej empatii - jedynie symuluje empatię.</div>\n",
"\n",
"#### Gra FearNot!\n",
"<br>\n",
"<div style=\"text-align: justify; font-size:1.1em\">Gra FearNot!(https://sourceforge.net/projects/fearnot/) jest grą edukacyjną przeznaczoną dla dzieci w wieku wczesnoszkolnym. Jej celem jest wzbudzenie wśród odbiorców empatii wobec osób doświadczających przemocy w szkole, oraz kształtowanie właściwych postaw w takiej sytuacji. Gra ta posiada naukowo udowodniony wpływ na zwiększenie empatii u młodych osób [17]. Sam system nie wykazuje sztucznej empatii w swojej budowie - jego celem jest wywołanie empatii u odbiorcy. Gra ta jest bardzo często przedstawiana jako kontrprzykład dla tezy, iż gry komputerowe powodują agresję u dzieci. Podnosi ona tezę, iż gry mają wpływ na kształtowanie mózgu dziecka, a to, w którą stronę ten rozwój podąży, zależy już od samych treści.</div> \n",
"\n",
"#### Wsparcie w walce z depresją\n",
"<br>\n",
"<div style=\"text-align: justify; font-size:1.1em\">Pomoc osób zmagających się z depresją jest zagadnieniem bardzo trudnym. Problemem jest sama decyzja o rozpoczęciu terapii - osoby z depresją często nie ufają, boją się bądź nie wierzą w dobre intencje terapeuty. Problem stanowi również cena i dostęp do usług. W celu zaoferowania pomocy szerszemu gronu do tej pory nieobjętych opieką pacjentów powstały podmioty AI nakierowane na zdrowie psychiczne - np. Wysa.</div>\n",
" <br>\n",
" <div style=\"text-align: justify; font-size:1.1em\">Wysa to mobilny chat bot, wzbogacony o moduły sztucznej empatii. Jego celem jest budowanie psychicznej siły i odporności człowieka. Zachęca on użytkownika do pozytywnego myślenia i autorefleksji. Jest dostępny 24/7, w formie tekstowej. Aplikacja odpowiada na emocje użytkownika oferując medycznie sprawdzone metody walki z depresją, dostosowane do danej sytuacji i stanu emocjonalnego pacjenta. Użytkownik oferuje informację zwrotną nt. jakości rozmowy, emocji i zadowolenia [3].</div>\n",
"\n",
"#### Sprzeciw pracowników medycznych\n",
"<br>\n",
"<div style=\"text-align: justify; font-size:1.1em\">Zastosowanie SI wzbogaconej o moduły empatyczne powoduje duży sprzeciw wśród grona pracowników medycznych. Szczególnie fakt, iż SI nie osiąga jeszcze wyników porównywalnych z wynikami działań człowieka, stanowi dla nich szczególny problem. Według medyków, aby SI mogło być skutecznie stosowane na dużą skalę w medycynie, musi ona wykazywać wyniki <i>lepsze</i> niż człowiek. Do głównych problemów ze stosowaniem SI w medycynie należą [7,8,9]:</div>\n",
"\n",
" * Bezpieczeństwo informacji i prywatność\n",
" * Przekierowanie do pracownika medycznego w przypadku sytuacji kryzysowej\n",
" * Brak zaufania pacjenta do AI i tym samym nie ujawnianie ważnych informacji medycznych\n",
" * Konieczność pracy w czasie rzeczywistym\n",
" * Zdolność AI do odtwarzania empatii kognitywnej, ale niezdolność do odtwarzania empatii emocjonalnej\n",
" * Pytanie, czy interakcja z robotem/wirtualnym podmiotem przenosi się na interakcję z innymi ludźmi\n",
" * Problemy etyczne - czy pacjenci nie są aby oszukiwani dla ich własnego dobra?\n",
" * Brak współpracy naukowców z medykami\n",
" * Pytanie, kto jest odpowiedzialny za szkodę dla pacjenta, jeżeli AI zawiedzie?"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### Zadania <a name=\"paragraph4\"></a>\n",
"<br>"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"<div style=\"text-align: justify\"><b>Zadanie 1</b> Wypróbuj następujące aplikacje, wykorzystujące AI w medycnie i odpowiedz na pytania: Jakie wnioski/ulepszenia możesz wycągnąć pod kątem sztucznej empatii? Która z aplikacji była nabardziej empatyczna? Dlaczego? Jakie problemy/zagrożenia może nieść korzystanie z takich aplikacji w stosunku do chodzenia do lekarza fizycznie? Jakie sa pozytywne skutki?</div>"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
" * https://symptomate.com/ </br> \n",
" \n",
"Ta aplikacja wydaje się być użytecznym narzędziem, które pomaga zorientować się, do jakiego specjalisty powinno się udać i jakie potencjalne choroby mogą być powodem dolegliwości. Niemniej jednak, nie odnotowałam żadnej empatii ze strony aplikacji. Ciekawą funkcją było możliwość zaznaczania objawów poprzez klikanie na awatarze."
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
" * https://www.symptoma.com/ </br> \n",
" \n",
"Również w tej aplikacji nie doświadczyłam zbyt wiele empatii. Na plus zasługuje okno dialogowe w formie czatu, jednak mechanizm działania był podobny do pierwszej aplikacji."
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
" * Ada - check your health (mobilna) </br> \n",
" \n",
"Aplikacja nie jest dostępna na platformie iOS, więc nie byłem w stanie jej przetestować."
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"Podsumowanie: </br>\n",
"\n",
"Problemy/ryzyko: Niektórzy mogą myśleć, że system jest nieomylny i zrezygnować z konsultacji z prawdziwymi lekarzami. Może to wpłynąć na ocenę stanu zdrowia i wybór niewłaściwych leków, co potencjalnie może pogorszyć stan zdrowia. Ponadto, diagnozy tego typu mogą wpłynąć na zdrowie psychiczne, na przykład gdy system zdiagnozuje śmiertelną chorobę, podczas gdy w rzeczywistości może to być coś znacznie mniej poważnego.\n",
"\n",
"Pozytywne aspekty: W przypadku drobnych dolegliwości, takich jak przeziębienie czy alergie, system może łatwo nakierować i pomóc w radzeniu sobie z takimi objawami.\n",
"\n",
"Która aplikacja była najbardziej empatyczna: Moim zdaniem żadna z nich nie wykazała się znaczącą empatią."
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"<div style=\"text-align: justify\"><b>Zadanie 2 </b> Zbuduj narzędzie służące do wykrywania choroby Parkinsona przy użyciu uczenia maszynowego. Zbiór danych można znaleźć w [19]. Możesz posłużyć się przykładem z [18]. Szkielet rozwiązania znajduje się poniżej. Zadanie możesz wykonac w Jupyterze wpsiując odpowiedni kod pod każdym z kroków:</div>"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"<div style=\"text-align: justify\">1) Instalujemy potrzebne biblioteki, np. XGBoost czy sklearn, do uczenia maszynowego.</div>"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"<div style=\"text-align: justify\">2) Importujemy potrzebne biblioteki:</div>"
]
},
{
"cell_type": "code",
"execution_count": 33,
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"import pandas as pd\n",
"import os, sys\n",
"from sklearn.preprocessing import MinMaxScaler\n",
"from xgboost import XGBClassifier\n",
"from sklearn.model_selection import train_test_split\n",
"from sklearn.metrics import accuracy_score"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"<div style=\"text-align: justify\">3) Wczytujemy dane - odczyty fizjologiczne osób z parkinsonem.</div>"
]
},
{
"cell_type": "code",
"execution_count": 34,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>name</th>\n",
" <th>MDVP:Fo(Hz)</th>\n",
" <th>MDVP:Fhi(Hz)</th>\n",
" <th>MDVP:Flo(Hz)</th>\n",
" <th>MDVP:Jitter(%)</th>\n",
" <th>MDVP:Jitter(Abs)</th>\n",
" <th>MDVP:RAP</th>\n",
" <th>MDVP:PPQ</th>\n",
" <th>Jitter:DDP</th>\n",
" <th>MDVP:Shimmer</th>\n",
" <th>...</th>\n",
" <th>Shimmer:DDA</th>\n",
" <th>NHR</th>\n",
" <th>HNR</th>\n",
" <th>status</th>\n",
" <th>RPDE</th>\n",
" <th>DFA</th>\n",
" <th>spread1</th>\n",
" <th>spread2</th>\n",
" <th>D2</th>\n",
" <th>PPE</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>phon_R01_S01_1</td>\n",
" <td>119.992</td>\n",
" <td>157.302</td>\n",
" <td>74.997</td>\n",
" <td>0.00784</td>\n",
" <td>0.00007</td>\n",
" <td>0.00370</td>\n",
" <td>0.00554</td>\n",
" <td>0.01109</td>\n",
" <td>0.04374</td>\n",
" <td>...</td>\n",
" <td>0.06545</td>\n",
" <td>0.02211</td>\n",
" <td>21.033</td>\n",
" <td>1</td>\n",
" <td>0.414783</td>\n",
" <td>0.815285</td>\n",
" <td>-4.813031</td>\n",
" <td>0.266482</td>\n",
" <td>2.301442</td>\n",
" <td>0.284654</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>phon_R01_S01_2</td>\n",
" <td>122.400</td>\n",
" <td>148.650</td>\n",
" <td>113.819</td>\n",
" <td>0.00968</td>\n",
" <td>0.00008</td>\n",
" <td>0.00465</td>\n",
" <td>0.00696</td>\n",
" <td>0.01394</td>\n",
" <td>0.06134</td>\n",
" <td>...</td>\n",
" <td>0.09403</td>\n",
" <td>0.01929</td>\n",
" <td>19.085</td>\n",
" <td>1</td>\n",
" <td>0.458359</td>\n",
" <td>0.819521</td>\n",
" <td>-4.075192</td>\n",
" <td>0.335590</td>\n",
" <td>2.486855</td>\n",
" <td>0.368674</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>phon_R01_S01_3</td>\n",
" <td>116.682</td>\n",
" <td>131.111</td>\n",
" <td>111.555</td>\n",
" <td>0.01050</td>\n",
" <td>0.00009</td>\n",
" <td>0.00544</td>\n",
" <td>0.00781</td>\n",
" <td>0.01633</td>\n",
" <td>0.05233</td>\n",
" <td>...</td>\n",
" <td>0.08270</td>\n",
" <td>0.01309</td>\n",
" <td>20.651</td>\n",
" <td>1</td>\n",
" <td>0.429895</td>\n",
" <td>0.825288</td>\n",
" <td>-4.443179</td>\n",
" <td>0.311173</td>\n",
" <td>2.342259</td>\n",
" <td>0.332634</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>phon_R01_S01_4</td>\n",
" <td>116.676</td>\n",
" <td>137.871</td>\n",
" <td>111.366</td>\n",
" <td>0.00997</td>\n",
" <td>0.00009</td>\n",
" <td>0.00502</td>\n",
" <td>0.00698</td>\n",
" <td>0.01505</td>\n",
" <td>0.05492</td>\n",
" <td>...</td>\n",
" <td>0.08771</td>\n",
" <td>0.01353</td>\n",
" <td>20.644</td>\n",
" <td>1</td>\n",
" <td>0.434969</td>\n",
" <td>0.819235</td>\n",
" <td>-4.117501</td>\n",
" <td>0.334147</td>\n",
" <td>2.405554</td>\n",
" <td>0.368975</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>phon_R01_S01_5</td>\n",
" <td>116.014</td>\n",
" <td>141.781</td>\n",
" <td>110.655</td>\n",
" <td>0.01284</td>\n",
" <td>0.00011</td>\n",
" <td>0.00655</td>\n",
" <td>0.00908</td>\n",
" <td>0.01966</td>\n",
" <td>0.06425</td>\n",
" <td>...</td>\n",
" <td>0.10470</td>\n",
" <td>0.01767</td>\n",
" <td>19.649</td>\n",
" <td>1</td>\n",
" <td>0.417356</td>\n",
" <td>0.823484</td>\n",
" <td>-3.747787</td>\n",
" <td>0.234513</td>\n",
" <td>2.332180</td>\n",
" <td>0.410335</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>5 rows × 24 columns</p>\n",
"</div>"
],
"text/plain": [
" name MDVP:Fo(Hz) MDVP:Fhi(Hz) MDVP:Flo(Hz) MDVP:Jitter(%) \n",
"0 phon_R01_S01_1 119.992 157.302 74.997 0.00784 \\\n",
"1 phon_R01_S01_2 122.400 148.650 113.819 0.00968 \n",
"2 phon_R01_S01_3 116.682 131.111 111.555 0.01050 \n",
"3 phon_R01_S01_4 116.676 137.871 111.366 0.00997 \n",
"4 phon_R01_S01_5 116.014 141.781 110.655 0.01284 \n",
"\n",
" MDVP:Jitter(Abs) MDVP:RAP MDVP:PPQ Jitter:DDP MDVP:Shimmer ... \n",
"0 0.00007 0.00370 0.00554 0.01109 0.04374 ... \\\n",
"1 0.00008 0.00465 0.00696 0.01394 0.06134 ... \n",
"2 0.00009 0.00544 0.00781 0.01633 0.05233 ... \n",
"3 0.00009 0.00502 0.00698 0.01505 0.05492 ... \n",
"4 0.00011 0.00655 0.00908 0.01966 0.06425 ... \n",
"\n",
" Shimmer:DDA NHR HNR status RPDE DFA spread1 \n",
"0 0.06545 0.02211 21.033 1 0.414783 0.815285 -4.813031 \\\n",
"1 0.09403 0.01929 19.085 1 0.458359 0.819521 -4.075192 \n",
"2 0.08270 0.01309 20.651 1 0.429895 0.825288 -4.443179 \n",
"3 0.08771 0.01353 20.644 1 0.434969 0.819235 -4.117501 \n",
"4 0.10470 0.01767 19.649 1 0.417356 0.823484 -3.747787 \n",
"\n",
" spread2 D2 PPE \n",
"0 0.266482 2.301442 0.284654 \n",
"1 0.335590 2.486855 0.368674 \n",
"2 0.311173 2.342259 0.332634 \n",
"3 0.334147 2.405554 0.368975 \n",
"4 0.234513 2.332180 0.410335 \n",
"\n",
"[5 rows x 24 columns]"
]
},
"execution_count": 34,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df=pd.read_csv('parkinsons.data')\n",
"df.head()"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"<div style=\"text-align: justify\">4) Z danych wydzielamy cechy i etykiety.</div>"
]
},
{
"cell_type": "code",
"execution_count": 35,
"metadata": {},
"outputs": [],
"source": [
"features=df.loc[:,df.columns!='status'].values[:,1:]\n",
"labels=df.loc[:,'status'].values"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"<div style=\"text-align: justify\">5) Zliczamy wystąpienia poszukiwenej cechy - choroby parkinsona.</div>"
]
},
{
"cell_type": "code",
"execution_count": 36,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"147 48\n"
]
}
],
"source": [
"print(labels[labels==1].shape[0], labels[labels==0].shape[0])"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"<div style=\"text-align: justify\">6) Skalujemy cechy w celu normalizacji.</div>"
]
},
{
"cell_type": "code",
"execution_count": 37,
"metadata": {},
"outputs": [],
"source": [
"scaler=MinMaxScaler((-1,1))\n",
"x=scaler.fit_transform(features)\n",
"y=labels"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"<div style=\"text-align: justify\">7) Dzielimy zbiór danych na 80% danych treningowych i 20% danych testowych.</div>"
]
},
{
"cell_type": "code",
"execution_count": 38,
"metadata": {},
"outputs": [],
"source": [
"x_train,x_test,y_train,y_test=train_test_split(x, y, test_size=0.2, random_state=7)"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"<div style=\"text-align: justify\">8) Inicjujemy klasyfikator, np. XGBClassifier i trenujemy model.</div>"
]
},
{
"cell_type": "code",
"execution_count": 39,
"metadata": {},
"outputs": [
{
"data": {
"text/html": [
"<style>#sk-container-id-2 {color: black;background-color: white;}#sk-container-id-2 pre{padding: 0;}#sk-container-id-2 div.sk-toggleable {background-color: white;}#sk-container-id-2 label.sk-toggleable__label {cursor: pointer;display: block;width: 100%;margin-bottom: 0;padding: 0.3em;box-sizing: border-box;text-align: center;}#sk-container-id-2 label.sk-toggleable__label-arrow:before {content: \"▸\";float: left;margin-right: 0.25em;color: #696969;}#sk-container-id-2 label.sk-toggleable__label-arrow:hover:before {color: black;}#sk-container-id-2 div.sk-estimator:hover label.sk-toggleable__label-arrow:before {color: black;}#sk-container-id-2 div.sk-toggleable__content {max-height: 0;max-width: 0;overflow: hidden;text-align: left;background-color: #f0f8ff;}#sk-container-id-2 div.sk-toggleable__content pre {margin: 0.2em;color: black;border-radius: 0.25em;background-color: #f0f8ff;}#sk-container-id-2 input.sk-toggleable__control:checked~div.sk-toggleable__content {max-height: 200px;max-width: 100%;overflow: auto;}#sk-container-id-2 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {content: \"▾\";}#sk-container-id-2 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-2 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-2 input.sk-hidden--visually {border: 0;clip: rect(1px 1px 1px 1px);clip: rect(1px, 1px, 1px, 1px);height: 1px;margin: -1px;overflow: hidden;padding: 0;position: absolute;width: 1px;}#sk-container-id-2 div.sk-estimator {font-family: monospace;background-color: #f0f8ff;border: 1px dotted black;border-radius: 0.25em;box-sizing: border-box;margin-bottom: 0.5em;}#sk-container-id-2 div.sk-estimator:hover {background-color: #d4ebff;}#sk-container-id-2 div.sk-parallel-item::after {content: \"\";width: 100%;border-bottom: 1px solid gray;flex-grow: 1;}#sk-container-id-2 div.sk-label:hover label.sk-toggleable__label {background-color: #d4ebff;}#sk-container-id-2 div.sk-serial::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 0;bottom: 0;left: 50%;z-index: 0;}#sk-container-id-2 div.sk-serial {display: flex;flex-direction: column;align-items: center;background-color: white;padding-right: 0.2em;padding-left: 0.2em;position: relative;}#sk-container-id-2 div.sk-item {position: relative;z-index: 1;}#sk-container-id-2 div.sk-parallel {display: flex;align-items: stretch;justify-content: center;background-color: white;position: relative;}#sk-container-id-2 div.sk-item::before, #sk-container-id-2 div.sk-parallel-item::before {content: \"\";position: absolute;border-left: 1px solid gray;box-sizing: border-box;top: 0;bottom: 0;left: 50%;z-index: -1;}#sk-container-id-2 div.sk-parallel-item {display: flex;flex-direction: column;z-index: 1;position: relative;background-color: white;}#sk-container-id-2 div.sk-parallel-item:first-child::after {align-self: flex-end;width: 50%;}#sk-container-id-2 div.sk-parallel-item:last-child::after {align-self: flex-start;width: 50%;}#sk-container-id-2 div.sk-parallel-item:only-child::after {width: 0;}#sk-container-id-2 div.sk-dashed-wrapped {border: 1px dashed gray;margin: 0 0.4em 0.5em 0.4em;box-sizing: border-box;padding-bottom: 0.4em;background-color: white;}#sk-container-id-2 div.sk-label label {font-family: monospace;font-weight: bold;display: inline-block;line-height: 1.2em;}#sk-container-id-2 div.sk-label-container {text-align: center;}#sk-container-id-2 div.sk-container {/* jupyter's `normalize.less` sets `[hidden] { display: none; }` but bootstrap.min.css set `[hidden] { display: none !important; }` so we also need the `!important` here to be able to override the default hidden behavior on the sphinx rendered scikit-learn.org. See: https://github.com/scikit-learn/scikit-learn/issues/21755 */display: inline-block !important;position: relative;}#sk-container-id-2 div.sk-text-repr-fallback {display: none;}</style><div id=\"sk-container-id-2\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>XGBClassifier(base_score=None, booster=None, callbacks=None,\n",
" colsample_bylevel=None, colsample_bynode=None,\n",
" colsample_bytree=None, early_stopping_rounds=None,\n",
" enable_categorical=False, eval_metric=None, feature_types=None,\n",
" gamma=None, gpu_id=None, grow_policy=None, importance_type=None,\n",
" interaction_constraints=None, learning_rate=None, max_bin=None,\n",
" max_cat_threshold=None, max_cat_to_onehot=None,\n",
" max_delta_step=None, max_depth=None, max_leaves=None,\n",
" min_child_weight=None, missing=nan, monotone_constraints=None,\n",
" n_estimators=100, n_jobs=None, num_parallel_tree=None,\n",
" predictor=None, random_state=None, ...)</pre><b>In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. <br />On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item\"><div class=\"sk-estimator sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-2\" type=\"checkbox\" checked><label for=\"sk-estimator-id-2\" class=\"sk-toggleable__label sk-toggleable__label-arrow\">XGBClassifier</label><div class=\"sk-toggleable__content\"><pre>XGBClassifier(base_score=None, booster=None, callbacks=None,\n",
" colsample_bylevel=None, colsample_bynode=None,\n",
" colsample_bytree=None, early_stopping_rounds=None,\n",
" enable_categorical=False, eval_metric=None, feature_types=None,\n",
" gamma=None, gpu_id=None, grow_policy=None, importance_type=None,\n",
" interaction_constraints=None, learning_rate=None, max_bin=None,\n",
" max_cat_threshold=None, max_cat_to_onehot=None,\n",
" max_delta_step=None, max_depth=None, max_leaves=None,\n",
" min_child_weight=None, missing=nan, monotone_constraints=None,\n",
" n_estimators=100, n_jobs=None, num_parallel_tree=None,\n",
" predictor=None, random_state=None, ...)</pre></div></div></div></div></div>"
],
"text/plain": [
"XGBClassifier(base_score=None, booster=None, callbacks=None,\n",
" colsample_bylevel=None, colsample_bynode=None,\n",
" colsample_bytree=None, early_stopping_rounds=None,\n",
" enable_categorical=False, eval_metric=None, feature_types=None,\n",
" gamma=None, gpu_id=None, grow_policy=None, importance_type=None,\n",
" interaction_constraints=None, learning_rate=None, max_bin=None,\n",
" max_cat_threshold=None, max_cat_to_onehot=None,\n",
" max_delta_step=None, max_depth=None, max_leaves=None,\n",
" min_child_weight=None, missing=nan, monotone_constraints=None,\n",
" n_estimators=100, n_jobs=None, num_parallel_tree=None,\n",
" predictor=None, random_state=None, ...)"
]
},
"execution_count": 39,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"model=XGBClassifier()\n",
"model.fit(x_train,y_train)"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"<div style=\"text-align: justify\">9) Generujemy prognozy i obliczamy dokładność modelu.</div>"
]
},
{
"cell_type": "code",
"execution_count": 40,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"94.87179487179486\n"
]
}
],
"source": [
"y_pred=model.predict(x_test)\n",
"print(accuracy_score(y_test, y_pred)*100)"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### Źródła:\n",
"<br>\n",
"[1] Decety J, Lamm C. Human empathy through the lens of social neuroscience. ScientificWorldJournal. 2006 Sep 20;6:1146-63. doi: 10.1100/tsw.2006.221. PMID: 16998603; PMCID: PMC5917291.\n",
"\n",
"[2] Dumouchel, P. (2017). Of Objects and Affect Artificial Empathy, Pure Sociality, and Affective Coordination. Japanese Review of Cultural Anthropology, 18(1), 99-113\n",
"\n",
"[3] Inkster, B., Sarda, S., & Subramanian, V. (2018). An empathy-driven, conversational artificial intelligence agent (Wysa) for digital mental well-being: real-world data evaluation mixed-methods study. JMIR mHealth and uHealth, 6(11), e12106.\n",
"\n",
"[4] Manney, P. J. (2008). Empathy in the Time of Technology: How Storytelling is the Key to Empathy. Journal of Evolution & Technology, 19(1)\n",
"\n",
"[5] https://www.abc.net.au/news/science/2018-06-02/can-you-trust-a-robot-that-cares/9808636\n",
"\n",
"[6] Morris, R. R., Kouddous, K., Kshirsagar, R., & Schueller, S. M. (2018). Towards an artificially empathic conversational agent for mental health applications: system design and user perceptions. Journal of medical Internet research, 20(6), e10148.\n",
"\n",
"[7] Martin, M. V., Valle, E. P., & Horsburgh, S. (2020). Artificial Empathy for Clinical Companion Robots with Privacy-By-Design. In MobiHealth (pp. 351-361).\n",
"\n",
"[8] Montemayor, C., Halpern, J., & Fairweather, A. (2021). In principle obstacles for empathic AI: why we cant replace human empathy in healthcare. Ai & Society, 1-7.\n",
"\n",
"[9] Fiske, A., Henningsen, P., & Buyx, A. (2019). Your robot therapist will see you now: ethical implications of embodied artificial intelligence in psychiatry, psychology, and psychotherapy. Journal of medical Internet research, 21(5), e13216.\n",
"\n",
"[10] Keyes, O. (2020). Automating autism: Disability, discourse, and Artificial Intelligence. The Journal of Sociotechnical Critique, 1(1), 8.\n",
"\n",
"[11] Anagnostopoulou, P., Alexandropoulou, V., Lorentzou, G., Lykothanasi, A., Ntaountaki, P., & Drigas, A. (2020). Artificial intelligence in autism assessment. International Journal of Emerging Technologies in Learning (iJET), 15(6), 95-107.\n",
"\n",
"[12] Dautenhahn, K., & Werry, I. (2004). Towards interactive robots in autism therapy: Background, motivation and challenges. Pragmatics & Cognition, 12(1), 1-35.\n",
"\n",
"[13] Šabanović, S., Bennett, C. C., Chang, W. L., & Huber, L. (2013, June). PARO robot affects diverse interaction modalities in group sensory therapy for older adults with dementia. In 2013 IEEE 13th international conference on rehabilitation robotics (ICORR) (pp. 1-6). IEEE.\n",
"\n",
"[14] Serrani, D. EMPATHY AND EMOTION RECOGNITION IN FRONTOTEMPORAL DEMENTIA AND ALZHEIMER DISEASE: ASTUDY USING EVENT-RELATED POTENTIALS.\n",
"\n",
"[15] Pilozzi, A., & Huang, X. (2020). Overcoming Alzheimers Disease Stigma by Leveraging Artificial Intelligence and Blockchain Technologies. Brain sciences, 10(3), 183.\n",
"\n",
"[16] Smith, A. (2006). Cognitive empathy and emotional empathy in human behavior and evolution. The Psychological Record, 56(1), 3-21.\n",
"\n",
"[17] Vannini, N., Enz, S., Sapouna, M., Wolke, D., Watson, S., Woods, S., . . . Schneider, W. (2011). \"FearNot!\": A computer-based anti-bullying-programme designed to foster peer intervention. European Journal of Psychology of Education, 26(1), 21-44. Retrieved August 18, 2021, from http://www.jstor.org/stable/23883634\n",
"\n",
"[18] https://data-flair.training/blogs/python-machine-learning-project-detecting-parkinson-disease/\n",
"\n",
"[19] https://archive.ics.uci.edu/ml/machine-learning-databases/parkinsons/)"
]
}
],
"metadata": {
"author": "Joanna Siwek",
"email": "jsiwek@amu.edu.pl",
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"lang": "pl",
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.11.2"
},
"subtitle": "7. Empatia w medycynie",
"title": "Sztuczna empatia",
"year": "2021"
},
"nbformat": 4,
"nbformat_minor": 4
}