ⵜⴰⴷⴰⴱⵓⵜ:
ⵜⴰⵣⵡⴰⵔⵜ
Naive Bayes ⴷ ⵜⴰⵖⵓⵍⵜ ⵏ ⵓⵍⵎⴰⴷ ⵏ ⵜⵎⴰⵛⵉⵏⵉⵏ ⵏ ⵓⵙⵏⵉⵍⴻⵙ ⵉ ⴷⵢⴻⵙⴱⴻⴷⴷⴻⵏ ⵙ ⵜⵎⵓⵖⵍⵉ ⵏ Bayes. ⵢⴻⵜⵜⵡⴰⵅⴷⴻⵎ ⴰⵟⴰⵙ ⵍⴰⴷⵖⴰ ⵎⵉ ⴰⵔⴰ ⵢⴻⵜⵜⵡⴰⵅⴷⴻⵎ ⵙ ⵢⵉⵙⴻⴼⴽⴰ ⵏ ⵓⴹⵔⵉⵙ ⴰⵎ: Askasi ⵏ ⵜⵎⵓⵖⵍⵉⵡⵉⵏ, Asekcem ⵏ Spam ⴷ ⵓⵙⵏⵉⵍⴻⵙ ⵏ ⵓⴹⵔⵉⵙ.
Algorithmeagi ⵇⵇⴰⵔⴻⵏⴰⵙ “Naive” ⵖⴻⴼ ⵍⵊⴰⵍ ⵏ ⵜⵎⵓⵖⵍⵉ ⴱⴻⵍⵍⵉ ⴰⴽⴽ ⵉⵎⵓⵜⵜⵉⵢⴻⵏ ⵏ ⵜⵎⴻⵣⴳⵓⵏⵜ ⵏ ⵢⵉⵙⴻⴼⴽⴰ ⴷ ⵉⵍⴻⵍⵍⵉⵢⴻⵏ, ⴷ ⴰⵢⴻⵏ ⵓⵔ ⵏⴻⵍⵍⵉ ⴰⵔⴰ ⴷⵉⵎⴰ ⴷ ⵍⵃⴰⵍ.
<ⴰ ⵉⵙⴻⵎ="ⵜⴰⵣⵎⴻⵔⵜⵜⴰⵃⴻⵔⴼⵉⵜ"></ⴰ>
ⵓⵇⴱⴻⵍ ⴰⴷ ⵏⵔⵓⵃ ⵙ ⵡⴰⵟⴰⵙ ⵖⴻⵔ ⵓⵙⴻⴼⵀⴻⵎ ⵏ ⵡⴰⵎⴻⴽ ⵉⵅⴻⴷⴷⴻⵎ Naive ⴱⴰⵢⴻⵙ, ⴰⴷ ⵏⵥⴻⵔ ⵎⴰ ⵢⴻⵍⵍⴰ ⵏⴻⴼⵀⴻⵎ ⴰⵢⴻⵏ ⵉⴷⵉⵜⴻⴷⴷⵓⵏ:
ⴰⵣⴻⵎⵣ ⵏ ⵜⵖⴰⵡⵙⵉⵡⵉⵏ
Algorithme ⵏ Bayes naïf ⵢⴻⵜⵜⵡⴰⴱⵏⴰ ⵖⴻⴼ ⵜⵎⵓⵖⵍⵉ ⵏ Bayes ⵉ ⴷⵢⴻⵙⴱⴻⴷⴷⴻⵏ ⵖⴻⴼ ⵜⵖⴰⵡⵙⴰ ⵏ ⵜⵖⴰⵡⵙⴰ : ⴷ ⵜⴰⵖⴰⵡⵙⴰ ⵏ ⵜⵖⴰⵡⵙⴰ ⵏ ⵜⵖⴰⵡⵙⴰ A ⵉⵎⵉ ⵜⴻⴹⵔⴰⴷ ⵢⴰⴽⴰⵏ ⵜⴻⴷⵢⴰⵏⵜ B.
ⴰⵎⴻⴷⵢⴰ:
ⴰⴷ ⵏⴻⵙⵄⵓ ⵙⵏⴰⵜ ⵏ ⵜⵃⴻⵎⵎⵓⵛⵉⵏ ⵢⴻⵙⵄⴰⵏ ⵜⵉⵇⴱⵓⵛⵉⵏ ⵏ ⵢⵉⵏⵉ:
-
ⵊⴰⵔ 1 ⵢⴻⵙⵄⴰ 3 ⵏ ⵜⵎⴻⵥⵥⵓⵖⵉⵏ ⵜⵉⵣⴻⴳⵣⴰⵡⵉⵏ, 2 ⵏ ⵜⵎⴻⵥⵥⵓⵖⵉⵏ ⵜⵉⵣⴻⴳⵣⴰⵡⵉⵏ ⴷ 4 ⵏ ⵜⵎⴻⵥⵥⵓⵖⵉⵏ ⵜⵉⵣⴻⴳⵣⴰⵡⵉⵏ.
-
ⵊⴰⵔ 2 ⵢⴻⵙⵄⴰ 1 ⵏ ⵜⴽⵓⵔⵜ ⵜⴰⵣⴻⴳⵣⴰⵡⵜ, 4 ⵏ ⵜⴽⵓⵔⵜ ⵜⴰⵣⴻⴳⵣⴰⵡⵜ ⴷ 3 ⵏ ⵜⴽⵓⵔⵜ ⵜⴰⵣⴻⴳⵣⴰⵡⵜ.
ⵏⴻⴱⵖⴰ ⴰⴷ ⵏⴻⵃⵙⴻⴱ ⴰⵣⴻⵎⵣ ⵏ ⵓⴼⵔⴰⵏ ⵙ ⵜⵖⴰⵡⵍⴰ ⵏ ⵢⵉⵡⴻⵜ ⵏ ⵜⴽⵓⵔⵜ ⵜⴰⵣⴻⴳⵣⴰⵡⵜ ⵙⴻⴳ ⵢⵉⵡⴻⵏ ⵙⴻⴳ ⵢⵉⵇⵊⴰⵏ
ⵓⵔ ⵢⴻⵍⵍⵉ ⴰⵔⴰ ⴷ ⵡⴰⵢⴻⴹ ⴰⵏⴰⴳⴰⵔ ⵙⵙⵓⵎⴰ ⵏ ⵜⵣⴻⵎⵎⴰⵔ ⵏ ⵓⴼⵔⴰⵏ ⵏ ⵜⴽⵓⵔⵜ ⵏ ⵓⴹⴰⵔ ⵙⴻⴳ Jar1 ⵏⴻⵖ Jar2.
ⵜⵓⵔⴰ, ⵏⴻⴱⵖⴰ ⴰⴷ ⵏⴻⵃⵙⴻⴱ ⴰⵣⴰⵍ ⵏ ⵓⴼⵔⴰⵏ ⵏ ⵜⴽⵓⵔⵜ ⵏ ⵓⴹⴰⵔ ⵜⴰⵣⴻⴳⵣⴰⵡⵜ ⵉⵎⵉ ⵏⴻⴼⵔⴻⵏ Jar1:
ⴷⴻⴳ ⵜⴰⴳⴳⴰⵔⴰ, ⵏⴻⴱⵖⴰ ⴰⴷ ⵏⴻⵃⵙⴻⴱ ⴰⵣⴰⵍ ⵏ ⵓⴼⵔⴰⵏ ⵏ Jar1 ⵉⵎⵉ ⵏⴻⵙⵙⴻⴽⵍⴻⵙ ⵜⴰⵖⴻⵛⵜ ⵏ ⵜⴼⴻⵍⵡⵉⵜ. ⴷⴰⴳⵉ ⴰⴷ ⵏⴻⵙⵙⴻⵅⴷⴻⵎ Timsirin ⵏ Bayes ⵉ ⴷⵢⴻⵜⵜⵡⴰⴱⴻⴷⵔⴻⵏ ⴰⴽⴽⴻⵏ ⵉ ⴷⵉⵜⴻⴷⴷⵓⵏ:
<ⴰ ⵉⵙⴻⵎ="ⴰⵙⵏⵉⵍⴻⵙⴱⴰⵢⴻⵙⴰⵃⴻⵔⴼⵉ"></ⴰ>
ⵜⴰⵙⵏⵉⵍⴻⵙⵜ ⵏ Bayes
ⴷⴻⴳ ⵓⵙⵏⵉⵍⴻⵙ ⵏ Naive Bayes, ⵏⴻⴱⵖⴰ ⴰⴷ ⵏⴰⴼ ⵜⴰⵙⵏⵉⵍⴻⵙⵜ ⵉ ⵢⴻⵙⵙⴻⵎⵖⴰⵔⴻⵏ ⵜⴰⵣⵎⴻⵔⵜ ⵏ ⵜⵖⴰⵡⵙⵉⵡⵉⵏ ⵙ ⵜⵖⴰⵡⵍⴰ ⵢⴻⵜⵜⵓⵏⴻⴼⴽⴻⵏ ⵉ ⵓⴼⴻⵔⴷⵉⵙ ⵏ ⵓⵙⵎⴻⵍ X; ⴰⴽⴽⴰ, Naive Bayes ⵢⴻⵣⵎⴻⵔ ⴰⴷ ⵢⴻⵜⵜⵡⴰⵙⵏⵓⵍⴼⵓ ⴰⴽⴽⴻⵏ ⵉ ⴷⵉⵜⴻⴷⴷⵓⵏ:
ⵙ ⵓⵙⴻⵇⴷⴻⵛ ⵏ Temsalt ⵏ Bayes, ⵜⴰⵖⵓⵍⵜ ⵜⵓⵖⴰⵍ:
ⴷⴻⴳ ⵓⵙⵏⵓⵍⴼⵓⴰ, ⵢⴻⵙⵀⴻⵍ ⴰⴷ ⵏⵃⴻⵙⵙ P(Ci) ⵓⵔ ⵏⴻⵍⵍⵉ ⴰⵔⴰ ⴷ ⵡⴰⵢⴻⴹ ⴰⵏⴰⴳⴰⵔ ⴰⵣⴻⵎⵣ ⵏ ⵜⵎⴻⵣⴳⵓⵏⵜ Ci, ⵢⴻⵔⵏⴰ ⵢⴻⵙⵀⴻⵍ ⴰⴷ ⵏⵃⴻⵙⵙ P(x) ⵢⴻⵍⵍⴰⵏ ⴷ ⴰⵣⴻⵎⵣ ⵏ ⵜⴻⴷⵢⴰⵏⵜ x ⵉ ⴷⵢⴻⴹⵔⴰⵏ.
ⴰⵢⴻⵏ ⵉⵡⴻⵄⵔⴻⵏ ⴰⴷ ⵜⵉⴷⵏⴻⵃⵙⴻⴱ ⴷ P(x|Ci); ⵀⵎⵉⵍ ⵏ ⵜⴻⴷⵢⴰⵏⵜ x ⵢⴻⵜⵜⵓⵏⴻⴼⴽⴻⵏ ⵉ ⵜⵎⴻⵣⴳⵓⵏⵜ Ci. ⴰⴽⴽⴻⵏ ⴰⴷ ⵏⴻⵙⵙⴻⴼⵙⵓⵙ ⴰⵢⴰ ⵓⴳⴰⵔ, ⵢⴻⵙⵙⴻⴼⴽ ⴰⴷ ⴷⵏⵉⵏⵉ ⴱⴻⵍⵍⵉ ⴰⴽⴽ ⵉⵎⵓⵜⵜⵉⵢⴻⵏ ⵏ ⵓⵙⵎⴻⵍ ⴷ ⵉⵍⴻⵍⵍⵉⵢⴻⵏ; ⴰⴽⴽⴰ, ⵏⴻⵣⵎⴻⵔ ⴰⴷ ⵏⴰⵔⵓ:
ⵢⴻⵔⵏⴰ ⵙ ⵜⵉⴷⴻⵜⵜ ⵖⴻⴼ ⵍⵊⴰⵍ ⵏ ⵜⵎⵓⵖⵍⵉⴰ ⴰⵢ ⵖⴻⴼ ⴰⵢ ⵏⴻⵙⵙⴰⵡⴰⵍ ⵉ ⵓⵙⵏⵉⵍⴻⵙⴰ “Naive”, ⴰⵛⴽⵓ ⵓⵔ ⵏⴻⵣⵎⵉⵔ ⴰⵔⴰ ⴷⵉⵎⴰ ⴰⴷ ⵏⴻⴹⵎⴻⵏ ⴰⵣⴰⵔⵓⴳ ⵏ ⵢⵉⵎⴻⴹⵇⴰⵏ ⵏ ⵓⵙⵎⴻⵍ. ⴰⵙⵏⴰⵙ ⵏ Naive Bayes ⵢⴻⵜⵜⵓⵖⴰⵍ:
ⴷⴻⴳ ⵜⵉⴷⴻⵜ, ⵏⴻⵣⵎⴻⵔ ⴰⴷ ⵏⴻⵙⵙⴻⴼⵙⵓⵙ ⵓⴳⴰⵔ ⵜⴰⵙⴻⴽⴽⵉⵔⵜⴰ ⵙ ⵜⵓⴽⴽⵙⴰ ⵏ P(x), ⴰⵛⴽⵓ ⴷ ⵢⵉⵡⴻⵏ ⵉ ⵡⴰⴽⴽ ⵜⵉⵖⵍⴰⵎⵉⵏ:
ⵜⵓⵔⴰ, ⴰⴷ ⵏⵡⴰⵍⵉ ⴰⵎⴻⴷⵢⴰ :
| ⵜⴰⴳⵏⴰⵡⵜ | ⵜⵉⵣⵉ | ⴰⵙⵙ ⵏ ⵉⵎⴰⵍⴰⵙⵙ | ⵉⵎⴻⵏⵙⵉ |
| ------- | -------- | --------------- | ------ |
| ⵙⴼⴻⴹ | ⵜⴰⵎⴻⴷⴷⵉⵜ | ⵜⴰⴳⴰⵔⴰ ⵏ ⴷⴷⵓⵔⵜ | ⵉⵎⵙⴻⴳⴳⴰⵢⴻⵏ |
| ⴰⵙⴻⵢⵢⴻⵔ | ⵉⴹ | ⴰⵙⵙ ⵏ ⴷⴷⵓⵔⵜ | ⵜⵉⵡⵙⵉⵡⵉⵏ |
| ⴰⴷⴼⴻⵍ | ⵉⴹ | ⴰⵙⵙ ⵏ ⴷⴷⵓⵔⵜ | ⵜⵉⵡⵙⵉⵡⵉⵏ |
| ⴰⴷⴼⴻⵍ | ⵜⵏⴰⵚⴼⴰ ⵏ ⵡⴰⵙⵙ | ⴰⵙⵙ ⵏ ⴷⴷⵓⵔⵜ | ⵜⵉⵡⵙⵉⵡⵉⵏ |
| ⴰⵙⴻⵢⵢⴻⵔ | ⵜⵏⴰⵚⴼⴰ ⵏ ⵡⴰⵙⵙ | ⵜⴰⴳⴰⵔⴰ ⵏ ⴷⴷⵓⵔⵜ | ⵉⵎⵙⴻⴳⴳⴰⵢⴻⵏ |
| ⵙⴼⴻⴹ | ⵉⴹ | ⵜⴰⴳⴰⵔⴰ ⵏ ⴷⴷⵓⵔⵜ | ⵉⵎⵙⴻⴳⴳⴰⵢⴻⵏ |
| ⴰⴷⴼⴻⵍ | ⵜⴰⵎⴻⴷⴷⵉⵜ | ⵜⴰⴳⴰⵔⴰ ⵏ ⴷⴷⵓⵔⵜ | ⵜⵉⵡⵙⵉⵡⵉⵏ |
| ⵙⴼⴻⴹ | ⵉⴹ | ⴰⵙⵙ ⵏ ⴷⴷⵓⵔⵜ | ⵉⵎⵙⴻⴳⴳⴰⵢⴻⵏ |
| ⵙⴼⴻⴹ | ⵜⵏⴰⵚⴼⴰ ⵏ ⵢⵉⴹ | ⵜⴰⴳⴰⵔⴰ ⵏ ⴷⴷⵓⵔⵜ | ⵜⵉⵡⵙⵉⵡⵉⵏ |
ⴷⴰⴳⵉ, ⵏⴻⵙⵄⴰ ⵢⵉⵡⴻⵜ ⵏ ⵜⵎⴻⵣⴳⵓⵏⵜ ⵜⴰⵎⴻⵛⵟⵓⵃⵜ ⵏ ⵢⵉⵙⴻⴼⴽⴰ ⵉⴷⴻⴳ ⵍⵍⴰⵏ 3 ⵏ ⵢⵉⵎⵓⴹⴰⵏ ⵏ ⵓⵙⵎⴻⵍ: Tagnawt, Akud ⴷ Ass ⵏ ⴷⴷⵓⵔⵜ, ⴷ ⵢⵉⵡⴻⵏ ⵏ ⵢⵉⵎⵓⴹⴰⵏ ⵏ Target: “Imensi” ⵉ ⴷⵢⴻⵙⴽⴰⵏⴰⵢⴻⵏ ⵎⴰ ⵢⴻⵍⵍⴰ ⴰⵎⴷⴰⵏ ⵢⴻⵙⵙⴻⵡⵡⴰⵢ ⵏⴻⵖ ⵢⴻⵜⵜⵃⴻⵜⵜⵉⵎ ⵉⵎⴻⵏⵙⵉⵉⵏⴻⵙ . ⵏⴻⴱⵖⴰ ⴰⴷ ⵏⴰⴼ ⵜⴰⵖⵓⵍⵜ ⵏ ⵓⵙⴻⴽⵛⴻⵎ x={Ifeggid, ⵜⴰⵎⴻⴷⴷⵉⵜ, Tagara ⵏ ⴷⴷⵓⵔⵜ}:
ⵢⴻⵙⵙⴻⴼⴽ ⴰⴷ ⵏⴻⵃⵙⴻⴱ ⵜⴰⵣⵎⴻⵔⵜ ⵏ ⵜⵖⴰⵡⵙⵉⵡⵉⵏ ⵉ ⵜⵖⴻⵔⵖⴻⵔⵜ “Iseggayen” ⴷ ⵜⵖⴻⵔⵖⴻⵔⵜ “Iḍrisen” ⵙ ⵜⵎⵓⵖⵍⵉ ⵏ ⵓⵙⵎⴻⵍ x={Clear, Evening, Weekend}. ⵜⴰⴳⵔⵓⵎⵎⴰ ⵢⴻⵜⵜⵡⴰⵙⵏⴻⵏ ⴷ ⵜⵉⵏ ⵢⴻⵙⵄⴰⵏ ⴰⵣⴰⵍ ⴰⵎⴻⵇⵇⵔⴰⵏ ⵏ ⵜⵖⴰⵡⵙⵉⵡⵉⵏ.
ⵏⴻⴱⴷⴰ ⵙ ⵓⵃⴻⵙⵙ ⵏ ⵜⵖⴰⵡⵙⴰ ⵏ ⵜⵖⴰⵡⵙⴰ ⵏ ⵜⵎⴻⵣⴳⵓⵏⵜ “Cooks” :
ⵜⵓⵔⴰ ⴰⴷ ⵏⴻⵃⵙⴻⴱ ⵢⴰⵍ ⴰⵣⴻⵎⵣ ⵏ ⵜⵖⴰⵡⵙⴰ ⵙ ⵜⵉⵎⵎⴰⴷⵉⵙ:
ⵜⴰⵣⵎⴻⵔⵜ ⵏ ⵜⴻⴳⵏⴰⵡⵜ=”Iban” ⵉⵎⵉ ⵜⴰⵖⵓⵍⵜ ⴷ “Iseggayen” ⴷ ⴰⵎⴹⴰⵏ ⵏ ⵢⵉⴼⴻⵔⴷⵉⵙⴻⵏ ⵙ ⵜⴻⴳⵏⴰⵡⵜ “Iban” ⴷ ⵜⴰⵖⵓⵍⵜ “Iseggayen” ⵖⴻⴼ ⵓⵎⴹⴰⵏ ⵏ ⵢⵉⴼⴻⵔⴷⵉⵙⴻⵏ ⵙ ⵜⵖⵓⵍⵜ “Iseggayen” .
ⴰⵎ ⵡⴰⴽⴽⴻⵏ ⴷⴰⵖⴻⵏ ⵉ ⴷⵢⴻⴹⵔⴰ ⴷ ⵜⵣⴻⵎⵎⴰⵔ ⵏⵏⵉⴹⴻⵏ ⵏ ⵜⵖⴰⵡⵙⵉⵡⵉⵏ:
ⵜⵓⵔⴰ ⵉ ⵜⵎⵓⵖⵍⵉ P(Cooks) ⴷ ⴰⵎⴹⴰⵏ ⵏ ⵢⵉⴼⴻⵔⴷⵉⵙⴻⵏ ⵙ ⵜⵎⴻⵣⴳⵓⵏⵜ “Cooks” ⵖⴻⴼ ⵓⵎⴹⴰⵏ ⵏ ⵢⵉⴼⴻⵔⴷⵉⵙⴻⵏ ⵙ ⵓⵎⴰⵜⴰ:
ⵜⵓⵔⴰ ⴰⴷ ⵏⴻⵃⵙⴻⴱ ⴰⴼⴰⵔⵉⵙ ⵏ ⵜⵣⴻⵎⵎⴰⵔⴰ:
ⴷ ⴰⵢⴻⵏ ⵢⴻⵍⵍⴰⵏ ⵉ ⵜⵖⵓⵔⵉ ⵏ “Iseggayen”, ⵜⵓⵔⴰ ⵢⴻⵙⵙⴻⴼⴽ ⴰⴷ ⵏⴻⵅⴷⴻⵎ ⴰⴽⴽⴻⵏ ⵉ ⵜⵖⵓⵔⵉ ⵏ “Iḍrisen” :
ⵏⴻⵃⵙⴻⴱ ⵜⵉⵣⴻⵎⵎⴰⵔ ⵏ ⵢⴰⵍ ⵢⵉⵡⴻⵏ :
ⵓ ⵜⴰⴳⴳⴰⵔⴰ ⴰⴷ ⵏⴻⵃⵙⴻⴱ ⴰⴼⴰⵔⵉⵙⴻⵏ ⵏ ⵜⵣⴻⵎⵎⴰⵔ:
ⵜⴰⴳⴳⴰⵔⴰ, ⴰⴷ ⵏⴻⵟⵟⴻⴼ ⵜⴰⵖⵓⵍⵜ ⵙ ⵜⵖⴰⵡⵙⴰ ⵜⴰⵎⴻⵇⵇⵔⴰⵏⵜ ⴰⴽⴽ ⴷ ⵜⴰⵖⵓⵍⵜ “Cooks” :
<ⴰ ⵏⴰⵎⴻ="ⵍⴼⴰⵢⴷⴰⵜⴷ-ⵜⵎⵉⵀⵍⴰ-ⵏ-ⵓⵍⵓⴳⵔⵉⵜⴰ"></ⴰ>
ⵍⴼⴰⵢⴷⴰⵜ ⴷ ⵡⵓⴳⵓⵔⴻⵏ ⵏ algorithma
ⵍⴼⴰⵢⴷⴰⵜ :
-
ⴷ ⴰⵙⴻⴽⵍⴰⵙ ⵙ ⵜⵖⴰⵡⵍⴰ ⴰⵟⴰⵙ.
-
ⵢⴻⵙⵀⴻⵍ ⵉ ⵓⵙⴻⴹⵔⵓ.
-
ⵓⵔ ⵜⴻⵍⵍⵉ ⴰⵔⴰ ⵜⴼⴰⵣⴰ ⵏ ⵓⵙⵙⵉⵍⴻⵖ, ⵎⴰⵛⴰ ⴷ ⵉⵏⴼⴻⵔⴻⵏⵙ ⴽⴰⵏ.
-
ⵓⵔ ⵢⴻⵜⵜⵃⴻⵜⵜⵉⵎ ⴰⵔⴰ ⴰⵟⴰⵙ ⵏ ⵢⵉⵙⴰⵍⵍⴻⵏ ⴰⴽⴽⴻⵏ ⴰⴷ ⴷⵢⴻⴳ ⵉⵏⴼⴻⵔⴻⵏⵙ.
ⵜⵉⵡⵜⵉⵍⵉⵏ:
- Naive Bayes ⵢⴻⵜⵜⵡⴰⵍⵉ ⴱⴻⵍⵍⵉ ⵉⵎⵓⵜⵜⵉⵢⴻⵏ ⵏ ⵓⵙⵎⴻⵍ ⴷ ⵉⵍⴻⵍⵍⵉⵢⴻⵏ, ⴰⵢⴰ ⵓⵔ ⵢⴻⵍⵍⵉ ⴰⵔⴰ ⴷⵉⵎⴰ ⴷ ⵜⵉⴷⴻⵜ.
<ⴰ ⵉⵙⴻⵎ="ⴰⵙⵍⴻⵖⵎⵓ"></ⴰ>
- Naïf Bayes ⵢⴻⵜⵜⵡⴰⵃⴻⵜⵜⴻⵎ ⵖⴻⴼ ⵡⵓⴳⵓⵔ ⵏ ⵜⵖⴰⵡⵙⴰ ⵏ ⵜⵖⴰⵡⵙⴰ : ⴷ ⴰⵙⵎⵉ ⴰⵔⴰ ⵢⴻⴼⴽ ⵜⵖⴰⵡⵙⴰ ⵏ ⵜⵖⴰⵡⵙⴰ ⵏ ⵜⵖⴰⵡⵙⴰ ⵉ ⵓⵎⴳⵉⵔⴻⴷ ⵏ ⵓⵙⵎⴻⵍ. ⴰⵢⴰ ⴰⴷ ⵢⴻⵙⵙⵉⵡⴻⴹ ⴰⴷ ⵢⴻⵙⵙⵉⵡⴻⴹ ⴰⴽⴽ ⵍⵃⴻⵇⵇ ⵏ ⵜⵖⴰⵡⵙⵉⵡⵉⵏ P(C|x). ⵢⵉⵡⴻⵜ ⵏ ⵜⵃⵉⵍⴰ ⴰⴽⴽⴻⵏ ⵓⵔ ⴷⵢⴻⵜⵜⵉⵍⵉ ⴰⵔⴰ ⵡⴰⵢⴰ ⴷ ⴰⵙⴻⵇⴷⴻⵛ ⵏ ⵜⴼⴻⵍⵡⵉⵜ ⵜⴰⵎⴻⵥⵢⴰⵏⵜ ⵏ 1 ( ⴷⴻⴳ ⵓⵎⴹⵉⵇ ⵏ 0 ) ⵉ ⵡⴰⴽⴽ ⵉⵎⵓⵜⵜⵉⵢⴻⵏ.
ⴰⵙⵉⵍⴻⵖ
ⵀⴰⵜ-ⴰⵏ ⴷ ⴰⴼⴻⵔⴷⵉⵙ ⵏ ⵢⵉⵙⴻⴼⴽⴰ ⵏ ⵢⵉⵡⴻⵏ ⵏ ⵓⵙⵎⴻⵍ ⵏ ⵢⵉⵙⴻⴼⴽⴰ ⵉ ⴷⵏⵡⴰⵍⴰ ⴷⴻⴳ ⵓⵎⴻⴷⵢⴰ.
ⴰⵅⴻⴷⴷⵉⵎⵉⴽ ⴷ ⴰⵙⴻⴹⵔⵓ ⵏ Naive Bayes ⵙ ⵜⵉⵎⵎⴰⴷⵉⴽ ⵙ ⵓⵙⴻⵇⴷⴻⵛ ⵏ python:
import pandas as pd
dataset = pd.DataFrame()
dataset['Weather'] = ['Clear', 'Cloudy', 'Rainy', 'Rainy', 'Cloudy', 'Clear', 'Snowy', 'Clear', 'Clear']
dataset['Time'] = ['Evening', 'Night', 'Night', 'Midday', 'Midday', 'Night', 'Evening', 'Night', 'Midnight']
dataset['Day'] = ['Weekend', 'Weekday', 'Weekday', 'Weekday', 'Weekend', 'Weekend', 'Weekend', 'Weekday', 'Weekend']
dataset['Class'] = ['Cooks', 'Orders', 'Orders', 'Orders', 'Cooks', 'Cooks', 'Orders', 'Cooks', 'Orders']
def naive_bayes(weather, time, day):
# res_dict = {class1: probability of class 1, class1: probability of class 1
return res_dict
<ⴰ ⵉⵙⴻⵎ="ⵜⵉⴼⵔⴰⵜ"></ⴰ>
ⵜⵉⴼⵔⴰⵜ
def naive_bayes(x_weather, x_time, x_day):
TARGET = 'Dinner' # The name of the target variable
CLASSES = list(dataset['Dinner'].unique()) # The classes of the target variable
len_dataset = len(dataset) # The length of the dataset
res_dict = {} # res_dict = {class1:probability1, ..., class_n:probability_n}
# for each class of the target classes, we calculate the it's conditional probability
for class_name in CLASSES:
# the number of lines that belong to the class "class_name"
len_c = len(dataset[ (dataset[TARGET] == class_name) ])
# the number of lines that belong to the class "class_name" and have weather="x_weather"
n_weather = len(dataset[ (dataset[TARGET] == class_name) & (dataset['Weather'] == x_weather) ])
# the number of lines that belong to the class "class_name" and have time="x_time"
n_time = len(dataset[ (dataset[TARGET] == class_name) & (dataset['Time'] == x_time) ])
# the number of lines that belong to the class "class_name" and have day="x_day"
n_day = len(dataset[ (dataset[TARGET] == class_name) & (dataset['Day'] == x_day) ])
# We calculate the conditional probability:
# P(class|x) = P(weather|class) x P(time|class) x P(day|class) x P(class)
p = (n_weather / len_c) * (n_time / len_c) * (n_day / len_c) * (len_c / len_dataset) res_dict[class_name] = p
return res_dict