Sobes.tech
Middle — Senior

Neytral Bayes tasniflagich nima?

sobes.tech AI

AIdan javob

Naive Bayes tasniflagichi oddiy ehtimollik tasniflagich bo‘lib, Bayes teoremiga asoslangan va xususiyatlarning bir-biridan mustaqil bo‘lishi taxminiga tayanadi.

G‘oya:

  • Xususiyatlarning qiymatlarini hisobga olgan holda ob’ektning sinfga tegish ehtimolini hisoblash.
  • Barcha xususiyatlar mustaqil deb faraz qilinadi, bu hisoblashlarni soddalashtiradi.

Misol: matndagi so‘zlarga asoslangan holda elektron pochta spam yoki spam emas sifatida tasniflash.

Afzalliklar:

  • Tez va oson amalga oshiriladi.
  • Katta ma’lumotlar to‘plamlarida yaxshi ishlaydi.

Cheklovlar:

  • Xususiyatlarning mustaqilligi faraz qilinmaydi, bu aniqlikni kamaytirishi mumkin.

Python bilan sklearn yordamida misol:

from sklearn.naive_bayes import MultinomialNB
from sklearn.feature_extraction.text import CountVectorizer

texts = ["spam xabar", "muhim uchrashuv", "hoziroq xarid qiling", "loyiha yangilanishi"]
labels = [1, 0, 1, 0]  # 1 - spam, 0 - spam emas

vectorizer = CountVectorizer()
X = vectorizer.fit_transform(texts)

model = MultinomialNB()
model.fit(X, labels)

new_text = ["xarid uchrashuv"]
X_new = vectorizer.transform(new_text)
prediction = model.predict(X_new)
print(prediction)  # [1] - spam