Naive Bayes Classifier in Python (from scratch!)

Поделиться
HTML-код
  • Опубликовано: 25 фев 2021
  • Let's create a Naive Bayes classifier with barebone NumPy and Pandas! You'll learn how to deal with continuous features and other implementation details.
    #machinelearning #datascience #python
    For more videos please subscribe -
    bit.ly/normalizedNERD
    Join our discord -
    / discord
    Bayesian classifier concept video -
    • The Math Behind Bayesi...
    Source code -
    github.com/Suji04/ML_from_Scr...
    Like my work? Support me -
    www.buymeacoffee.com/normaliz...
    Data source -
    www.kaggle.com/merishnasuwal/...
    Facebook -
    / nerdywits
    Instagram -
    / normalizednerd
    Twitter -
    / normalized_nerd

Комментарии • 46

  • @HaiderAli-hp6tl
    @HaiderAli-hp6tl 2 года назад +2

    the number of subscribers to your channel does not do justice to your content. This is such quality educational content. Keep it up, man.

  • @sayantansadhu6380
    @sayantansadhu6380 3 года назад +17

    The from scratch series in this channel is the best !!

  • @secondarypemail7181
    @secondarypemail7181 2 года назад +4

    Thanks man,your effort to make algorithms from scratch is just on another level.Your effort is much appreciated👍

  • @caljohn1475
    @caljohn1475 Год назад

    You're a legend my dude, thanks so much for explaining this

  • @glennbroyne7316
    @glennbroyne7316 2 года назад

    Fantastic video, very well explained!

  • @tarabalam9962
    @tarabalam9962 11 месяцев назад

    this gave a lot of clarity , thanks

  • @cheatforlife
    @cheatforlife 2 года назад

    Thank you for opening up new horizons for me

  • @amitkumarghosh
    @amitkumarghosh 4 месяца назад

    I can't believe this man is doing this for free, thank you brother

  • @lucascojot7226
    @lucascojot7226 3 года назад +3

    Super high quality videos! I'm surprised you have 8K and not 800K... Keep it up!

  • @pietrogarofalo2957
    @pietrogarofalo2957 2 года назад

    Man, u save my life ty very much.
    Use sklearn is too easy, justify why u decide to use Naive and why u can use it is the very important thing, keep it up man .
    ( excuse me for my bad english )

  • @kushagrakumar9576
    @kushagrakumar9576 3 года назад +1

    Excellent video. Keep up the good work 🙂

  • @averyiorio4337
    @averyiorio4337 3 года назад

    amazing content and fantastic explanations

  • @jorgetaboada6500
    @jorgetaboada6500 2 года назад

    Sorry, again I do understand now, and also I apply in my work with excellent results, Thanks!

  • @sukhmanpreetsinghsandhub2042
    @sukhmanpreetsinghsandhub2042 2 года назад

    Awesome video.

  • @caljohn1475
    @caljohn1475 Год назад +1

    @normalized Nerd How do you make a prediction with this using specific values?

  • @AbhishekS-cv3cr
    @AbhishekS-cv3cr 2 месяца назад

    You can also ignore mean_radius feature, since it has some correlation with other features

  • @vishwajeetdeulkar3862
    @vishwajeetdeulkar3862 2 года назад

    Hi, I am getting error as "index 29 is out of bounds for axis 0 with size 29" for this statement likelihood[j] *= cal_gaussianLikelihood(df,features[i],x[i],Y,labels[j]), any solution?

  • @minasahebi1474
    @minasahebi1474 Год назад

    perfect!

  • @tudorjeverdan
    @tudorjeverdan 10 месяцев назад +1

    I was importing a mysql dataframe, I was importing string elements and it resolved them into objects,
    data = pd.read_sql_table("ai_learning", engine)
    columns_to_convert = ["Products", "feedback", "blog", "diagnosis"]
    data[columns_to_convert] = data[columns_to_convert].apply(pd.to_numeric, errors='coerce')
    data = data[["Products", "feedback", "blog", "diagnosis"]]
    This is how I fixed it if anybody was getting the same outputs.

  • @muhammadirsyaduddin6597
    @muhammadirsyaduddin6597 2 года назад

    Hello! Is it possible to add the multinomial in the code? Thank you.

  • @yashicasaun
    @yashicasaun Год назад +1

    When you are checking for gaussian curve, shouldn't you have filtered for different diagnosis and then check if the curve fits?
    Because now, we see the data fits gaussian. But we then change the data and only take a subset and then fitting the curve
    Thanks for the great video.

  • @dimamedvedev4124
    @dimamedvedev4124 2 месяца назад

    Great lesson. But still don't understand how we get array with posterior given certain set of features befor using np.argmax?

  • @hajraali1205
    @hajraali1205 2 года назад

    I did not understand the output, we were detecting the cancer patient, but in out put there are two matrix and accuracy data so which is which.

  • @placement10lpa36
    @placement10lpa36 Год назад

    can someone explain me the guassian distribution part

  • @LucasPiorino
    @LucasPiorino 28 дней назад +1

    What 36 and 74 means at 13:49?

  • @Mustistics
    @Mustistics 2 года назад +1

    Damn, I was hoping for a SKlearn tutorial!

  • @teetanrobotics5363
    @teetanrobotics5363 3 года назад +1

    SVMs,Random Forest and gradient boosting left in the playlist

  • @UdayKumar-yv7ej
    @UdayKumar-yv7ej 4 месяца назад

    Bro for this code how to convert string to float bro

  • @shortyTalks
    @shortyTalks Год назад

    😃Bro thx for the nice explanation. Are you using a theme for vs code, cuz all the colours in your systems are looking damn good

  • @pritammukherjee3972
    @pritammukherjee3972 3 года назад +1

    Nice video

  • @alexchristian220
    @alexchristian220 3 года назад +2

    likelihood = [1] * len(labels), post_prob = [1] * len(labels)
    what this above code actually do?
    And also how can I work this code on tennis.csv dataset?

    • @alexchristian220
      @alexchristian220 3 года назад

      bhai iska explanation bta do.

    • @NormalizedNerd
      @NormalizedNerd  3 года назад

      That's just a python shortcut.
      arr = [1] * n
      this will assign a list of n 1's to the variable 'arr'. I used this to initialize the likelihood and posterior probability lists.
      The tennis dataset contains only categorical variables so just relabel them to 0,1,2, etc. and apply approach 2 given the video.

    • @alexchristian220
      @alexchristian220 3 года назад

      @@NormalizedNerd bhai can you tell me what is the name of the python shortcut? and how likelihood = [1] * len(labels), replaced with likelihood[b].?

  • @jorgetaboada6500
    @jorgetaboada6500 2 года назад +1

    Sorry, but I do not understand who is "df" when you def a function because you have never defined. I will appreciate your explanation