Sobes.tech
Middle — Senior

Ի՞նչ է նուրբ բայեսական դասակարգիչը։

sobes.tech AI

Պատասխան AI-ից

Naive Bayes դասակարգիչը պարզ հավանական դասակարգիչ է, որը հիմնված է Bayes-ի տեսության կիրառման վրա և ենթադրում է հատկանիշների անկախություն միմյանցից:

Նպատակը՝

  • Հաշվել այն հավանականությունը, որ օբյեկտը պատկանում է դասին, հաշվի առնելով հատկանիշների արժեքները:
  • Ենթադրում է, որ բոլոր հատկանիշները անկախ են, ինչը պարզեցնում է հաշվարկները:

Օրինակ՝ էլեկտրոնային նամակների դասակարգում որպես սպամ կամ ոչ սպամ՝ տեքստում բառերի հիման վրա:

Առավելություններ՝

  • Արագ և հեշտ է իրականացնել:
  • Լավ է աշխատում մեծ տվյալների հավաքածուների վրա:

Մեկուսացումներ՝

  • Հատկանիշների անկախության ենթադրությունը հաճախ չի կատարվում, ինչը կարող է նվազեցնել ճշգրտությունը:

Python-ում sklearn օգտագործելով՝

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

texts = ["spam հաղորդագրություն", "կարևոր հանդիպում", "գնել հիմա", "ծրագիր թարմացում"]
labels = [1, 0, 1, 0]  # 1 - սպամ, 0 - ոչ սպամ

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

մոդել = MultinomialNB()
մոդել.fit(X, labels)

new_text = ["գնել հանդիպում"]
X_new = vectorizer.transform(new_text)
նախատեսում = մոդել.predict(X_new)
print(նախատեսում)  # Ցուցադրում է [1] - սպամ