bayes_project/presentation.ipynb
2021-05-31 21:05:07 +02:00

221 lines
6.8 KiB
Plaintext
Raw Permalink 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": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Przygotowali\n",
"Wojciech Jarmosz <br>\n",
"Michał Kubiak <br>\n",
"Przemysław Owczarczyk"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Temat:\n",
"Klasyfikacja za pomocą naiwnej metody bayesowskiej (rozkłady dyskretne). Implementacja powinna założyć, że cechy są dyskretne/jakościowe. Na wejściu oczekiwany jest zbiór, który zawiera p-cech dyskretnych/jakościowych, wektor etykiet oraz wektor prawdopodobieństw a priori dla klas. Na wyjściu otrzymujemy prognozowane etykiety oraz prawdopodobieństwa a posteriori. Dodatkową wartością odpowiednia wizualizacja."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Wstęp\n",
"Jednym z najbardziej użytecznych zastosowań twierdzenia Bayesa jest tzw. naiwny klasyfikator bayesowski - \n",
"Prosty klasyfikator probabilistyczny. Naiwne klasyfikatory bayesowskie są oparte na założeniu o wzajemnej niezależności predyktorów (zmiennych niezależnych). Często nie mają one żadnego związku z rzeczywistością i właśnie z tego powodu nazywa się je naiwnymi. Klasyfikator ten można wykorzystywać do określania prawdopodobieństwa klas na podstawie szeregu różnych obserwacji."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Pomimo swojego naiwnego charakteru naiwna metoda bayesowska zwykle dobrze się sprawdza w praktyce. Jest to odpowiedni przykład obrazujący, co oznacza popularne w statystyce powiedzenie „wszystkie modele są złe, ale niektóre są użyteczne” (za autora tego powiedzenia uznaje się na ogół statystyka George'a E.P. Boxa)."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Założenie naiwnego bayesa\n",
"$P(class | variable1, variable2, variable3) = \\frac{P(variable1, variable2, valriable3|class) * P(class)}{P(variable1, variable2, variable3)}$\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**przy założeniu o niezależności zmiennych losowych $variable1$, $variable2$, $variable3$**:\n",
"\n",
"\n",
"$P(variable1, variable2, variable3|class) = P(variable1|class)* P(variable2|class) * P(variable3|class)$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"**ostatecznie:**\n",
"\n",
"\n",
"$P(class | variable1, variable2, variable3) = \\frac{P(variable1|class)* P(variable2|class) * P(variable3|class) * P(class)}{\\sum_k{P(variable1|class_k)* P(variable2|class_k) * P(variable3|class_k) * P(class_k)}}$\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# DataSet\n",
"Według Światowej Organizacji Zdrowia (WHO) udar to druga najczęstsza przyczyna zgonów na świecie, odpowiedzialna za około 11% wszystkich zgonów. Ten zestaw danych jest używany do przewidywania, czy pacjent prawdopodobnie dostanie udaru, na podstawie parametrów wejściowych, takich jak płeć, wiek, różne choroby. \n",
"https://www.kaggle.com/fedesoriano/stroke-prediction-dataset"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Wizualizacja"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"𝑎𝑔𝑒:6069<br>\n",
"𝑦𝑝𝑒𝑟𝑡𝑒𝑛𝑠𝑖𝑜𝑛:𝑛𝑜 <br>\n",
"𝑒𝑎𝑟𝑡_𝐷𝑖𝑠𝑒𝑎𝑠𝑒𝑦𝑒𝑠 <br>\n",
"𝑏𝑚𝑖:𝑜𝑏𝑒𝑠𝑖𝑡𝑦_1 <br>\n",
"𝑔𝑒𝑛𝑑𝑒𝑟:𝑓𝑒𝑚𝑎𝑙𝑒 <br>\n",
"𝑠𝑚𝑜𝑘𝑖𝑛𝑔𝑠𝑡𝑎𝑡𝑢𝑠:𝑠𝑚𝑜𝑘𝑒𝑠"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"![title](1.png)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"𝑎𝑔𝑒:7079<br>\n",
"𝑦𝑝𝑒𝑟𝑡𝑒𝑛𝑠𝑖𝑜𝑛: yes <br>\n",
"𝑒𝑎𝑟𝑡_𝐷𝑖𝑠𝑒𝑎𝑠𝑒: 𝑦𝑒𝑠 <br>\n",
"𝑏𝑚𝑖:correct <br>\n",
"𝑔𝑒𝑛𝑑𝑒𝑟:𝑚𝑎𝑙𝑒 <br>\n",
"𝑠𝑚𝑜𝑘𝑖𝑛𝑔𝑠𝑡𝑎𝑡𝑢𝑠:never_𝑠𝑚𝑜𝑘𝑒d"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"![title](2.png)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"𝑎𝑔𝑒:7079<br>\n",
"𝑦𝑝𝑒𝑟𝑡𝑒𝑛𝑠𝑖𝑜𝑛: yes<br>\n",
"𝑒𝑎𝑟𝑡_𝐷𝑖𝑠𝑒𝑎𝑠𝑒: 𝑦𝑒𝑠<br>\n",
"𝑏𝑚𝑖:correct<br>\n",
"𝑔𝑒𝑛𝑑𝑒𝑟:fe𝑚𝑎𝑙𝑒<br>\n",
"𝑠𝑚𝑜𝑘𝑖𝑛𝑔𝑠𝑡𝑎𝑡𝑢𝑠:never_𝑠𝑚𝑜𝑘𝑒d"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"![title](3.png)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"𝑎𝑔𝑒:3039<br>\n",
"𝑦𝑝𝑒𝑟𝑡𝑒𝑛𝑠𝑖𝑜𝑛: no<br>\n",
"𝑒𝑎𝑟𝑡_𝐷𝑖𝑠𝑒𝑎𝑠𝑒: 𝑦𝑒𝑠<br>\n",
"𝑏𝑚𝑖: obesity_2<br>\n",
"avg_glucose_level: 250-270\n",
"𝑔𝑒𝑛𝑑𝑒𝑟:fe𝑚𝑎𝑙𝑒<br>\n",
"𝑠𝑚𝑜𝑘𝑖𝑛𝑔𝑠𝑡𝑎𝑡𝑢𝑠:smokes"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"![title](4.png)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"𝑎𝑔𝑒:0-29<br>\n",
"𝑦𝑝𝑒𝑟𝑡𝑒𝑛𝑠𝑖𝑜𝑛: no<br>\n",
"𝑒𝑎𝑟𝑡_𝐷𝑖𝑠𝑒𝑎𝑠𝑒: no<br>\n",
"𝑏𝑚𝑖: correct<br>\n",
"avg_glucose_level: 130-170\n",
"𝑔𝑒𝑛𝑑𝑒𝑟:𝑚𝑎𝑙𝑒<br>\n",
"𝑠𝑚𝑜𝑘𝑖𝑛𝑔𝑠𝑡𝑎𝑡𝑢𝑠:never_smoked"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"![title](5.png)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"𝑎𝑔𝑒:80-89<br>\n",
"𝑦𝑝𝑒𝑟𝑡𝑒𝑛𝑠𝑖𝑜𝑛: yes<br>\n",
"𝑒𝑎𝑟𝑡_𝐷𝑖𝑠𝑒𝑎𝑠𝑒: no<br>\n",
"𝑏𝑚𝑖: correct<br>\n",
"avg_glucose_level: 130-170\n",
"𝑔𝑒𝑛𝑑𝑒𝑟:𝑚𝑎𝑙𝑒<br>\n",
"𝑠𝑚𝑜𝑘𝑖𝑛𝑔𝑠𝑡𝑎𝑡𝑢𝑠:never_smoked"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"![title](6.png)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"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.8.5"
}
},
"nbformat": 4,
"nbformat_minor": 4
}