====== SD4ft-pravidlo ======
\\
\\
===== Příklad =====
\\
Příkladem SD4ft-pravidla je výraz \\
**HStat(//Slovensko//)** × **HStat(//Rakousko//)**: **HVek(//od 28 do 60//)** ⇒*1.7,31,69
**DHodnoceni(//nespokojen//)**, \\
kterému odpovídá výstup procedury SD4ft-Miner uvedený v následujícím obrázku.
{{ :sd4ft_priklad.png?500 |}}
Uvedené SD4ft-pravidlo se týká matice dat
[[https://lispminer.vse.cz/guhadi/doku.php?id=lm_guha_di_hotel_prehled_skupin|Hotel]]. Platí:
* 4ft(**HVek(//od 28 do 60//)**, **DHodnoceni(//nespokojen//)**, **Hotel/HStat(//Slovensko//))** = ‹31,44,22,48›, \\ tedy konfidence podmíněného pravidla \\ 4ft(**HVek(//od 28 do 60//)**≈ **DHodnoceni(//nespokojen//)** / **HStat(//Slovensko//)** = 31/(31+44) = 0.41. \\ Jinými slovy, podíl nespokojených hostů ve věku od 28 do 60 je pro Slovensko roven 41 %.
* 4ft(**HVek(//od 28 do 60//)**, **DHodnoceni(//nespokojen//)**, **Hotel/HStat(//Rakousko//))** = ‹69,216,59,171›, \\ tedy konfidence podmíněného pravidla \\ 4ft(**HVek(//od 28 do 60//)**≈ **DHodnoceni(//nespokojen//)** / **HStat(//Rakousko//)** = 69/(69+216) = 0.24. \\ Jinými slovy, podíl nespokojených hostů ve věku od 28 do 60 je pro Rakousko roven 24 %.
* Podíl nespokojených hostů ve věku od 28 do 60 je pro Slovensko 41/24 = 1.7 krát větší než pro Rakousko a zároveň je 31 nespokojených hostů ze Slovenska a 69 nespokojených hostů z Rakouska ve věku od 28 do 60.
Tento fakt je vyjádřen výše uvedeným SD-pravidlem \\
**HStat(//Slovensko//)** × **HStat(//Rakousko//)**: **HVek(//od 28 do 60//)** ⇒*1.7,31,69
**DHodnoceni(//nespokojen//)**.
===== SD4ft-pravidlo =====
SD4ft-pravidlo je výraz α×β:φ∼ψ kde
* α,β,φ,ψ jsou [[lm_guha_te_bool|booleovské atributy]]
* ∼ je [[lm_guha_te_sd_pravidlo#SD4ft-kvantifikátor|SD4ft-kvantifikátor]]
Booleovský atribut φ se nazývá antecedent, ψ je sukcedent (konsequent), α je definice první množiny a β je definice druhé množiny.
SD4ft-pravidlo α×β:φ∼ψ říká, že vztah booleovských atributů φ a ψ se liší pokud tento vztah posuzujeme jednou na množině řádků dané booleovským atributem α a podruhé na množině řádků daných booleovským atributem β. Odlišnost je dána [[lm_guha_te_sd_pravidlo#SD4ft-kvantifikátor|SD4ft-kvantifikátorem]] ∼.
Lze také říci, že SD4ft-pravidlo α×β:φ∼ψ vyjadřuje, že podmíněná asociační pravidla φ≈ψ/α a φ≈ψ/β se liší způsobem daným SD4ft-kvantifikátorem ∼.
Určení, zda SD4ft-pravidlo α×β:φ∼ψ [[lm_guha_te_sd_pravidlo#SD4ft-pravidlo je pravdivé v matici dat |je pravdivé v matici dat]] M se provádí na základě [[lm_guha_te_sd_pravidlo#SD4ft-tabulka|SD4ft-tabulky]].
Je možno pracovat i s [[lm_guha_te_sd_pravidlo#Podmíněné SD4ft-pravidlo|podmíněnými SD4ft-pravidly]].
===== SD4ft-tabulka =====
SD4ft-tabulkou SD4ft(α×β:φ∼ψ, **M**) pro SD4ft-pravidlo α×β:φ∼ψ a matici dat **M** se rozumí dvojice
‹//T//α, //T//β› \\ [[lm_guha_te_pravidlo#4ft-tabulka|4ft-tabulek]]
//T//α = 4ft(φ,ψ,**M/α**) = ‹//a//α,//b//α,//c//α,//d//α› a
//T//β = 4ft(φ,ψ,**M/β**) = ‹//a//β,//b//β,//c//β,//d//β›, viz též následující obrázek.
{{ :sd4ft_tabulka.png?450 |}}
===== SD4ft-kvantifikátor =====
Symbol "∼" v SD4ft-pravidle α×β:φ∼ψ se nazývá SD4ft-kvantifikátor. Definuje podmínku týkající se
čtveřic celých nezáporných čísel //T//α = ‹//a//α,//b//α,//c//α,//d//α› a
//T//β = ‹//a//β,//b//β,//c//β,//d//β›.
Podobně jako pro [[lm_guha_te_pravidlo#4ft-kvantifikátor|4ft-kvantifikátor]], chápeme
SD4ft-kvantifikátor ∼ jako {0,1}-hodnotovou funkci ∼(//T//α, //T//β) týkající se čtveřic celých nezáporných čísel
//T//α a //T//β.
Platí
* ∼(//T//α, //T//β) = 1 pokud je podmínka daná SD4ft-kvantifikátorem splněna pro čtveřice //T//α a //T//β
* ∼(//T//α, //T//β) = 0 pokud podmínka daná SD4ft-kvantifikátorem pro čtveřice //T//α a //T//β splněna není.
Příkladem SD4ft-kvantifikátoru je výraz ⇒*1.7,31,69 použitý ve výše uvedeném [[lm_guha_te_sd_pravidlo#příklad|příkladu]]. Tomuto SD4ft-kvantifikátoru odpovídá podmínka
[//a//α/(//a//α+//b//α)]/[//a//β/(//a//β+//b//β)] ≥ 1.7 ∧ //a//α ≥ 31 ∧ //a//β ≥ 69. Tedy:
* ⇒*1.7,31,69 (//T//α, //T//β) = 1 pokud platí [//a//α/(//a//α+//b//α)]/[//a//β/(//a//β+//b//β)] ≥ 1.7 ∧ //a//α ≥ 31 ∧ //a//β ≥ 69
* ⇒*1.7,31,69 (//T//α, //T//β) = 0 pokud neplatí [//a//α/(//a//α+//b//α)]/[//a//β/(//a//β+//b//β)] ≥ 1.7 ∧ //a//α ≥ 31 ∧ //a//β ≥ 69 .
SD4ft-kvantifikátory implementované v GUHA proceduře SD4ft-Miner jsou popsány [[lm_guha_te_sd4ft_kvantifikator|zde]].
===== SD4ft-pravidlo je pravdivé v matici dat =====
Pravdivost SD4ft-pravidla α×β:φ∼ψ v matici dat **M** je definována pomocí SD4ft-tabulky \\
SD4ft(α×β:φ∼ψ, **M**) = ‹//T//α, //T//β› takto:
* α×β:φ∼ψ je pravdivé v matici dat **M** pokud ∼(//T//α, //T//β) = 1, formálně zapisujeme Val(α×β:φ∼ψ, **M** = 1
* α×β:φ∼ψ je nepravdivé v matici dat **M** pokud ∼(//T//α, //T//β) = 1, formálně zapisujeme Val(α×β:φ∼ψ, **M**) = 0.
===== Podmíněné SD4ft-pravidlo =====
Podmíněné SD4ft-pravidlo je výraz α×β:φ∼ψ/χ. Jedná se o SD4ft-pravidlo vyhodnocované v podmatici dat
definované booleovským atributem χ. Platí tedy, že podmíněné SD4ft-pravidlo α×β:φ∼ψ/χ je pravdivé v matici dat **M**
pokud je SD4ft-pravidlo α×β:φ∼ψ pravdivé v matici dat **M/χ**.
To platí, pokud ∼(//T//α, //T//β) = 1 kde //T//α = 4ft(φ,ψ,**M/α∧χ**) a //T//β = 4ft(φ,ψ,**M/β∧χ**).