Coding Challenge 187: Bayes Theorem @TheCodingTrain
Coding Challenge 187: Bayes Theorem  @TheCodingTrain
Uploaded October 2025 | Updated September 2026, 1 week ago
In this coding challenge, I struggle my way through implementing a Naive Bayes text classifier in JavaScript using p5.js. I explain Bayes' theorem, demonstrate word frequency analysis, implement Laplacian smoothing, and build a working sentiment classifier that runs entirely in the browser. Code: thecodingtrain.com/challenges/187-bayesian-text-classification

πŸš€ Watch this video ad-free on Nebula nebula.tv/videos/codingtrain-coding-challenge-187-bayes-classifier

p5.js Web Editor Sketches:
πŸ•ΉοΈ Text Classifier - Initial Version: editor.p5js.org/codingtrain/sketches/RZ8a1z4DN
πŸ•ΉοΈ Text Classifier - Refactored Version: editor.p5js.org/codingtrain/sketches/P3ngrAANX
πŸ•ΉοΈ Text Classifier - File Loading Version: editor.p5js.org/codingtrain/sketches/WowR2Q9xg

πŸŽ₯ Previous: youtu.be/5iSAvzU2WYY?list=PLRqwX-V7Uu6ZiZxtDDRCi6uhfTH4FilpH
πŸŽ₯ All: youtube.com/playlist?list=PLRqwX-V7Uu6ZiZxtDDRCi6uhfTH4FilpH

References:
πŸ““ Naive Bayes Classifier: en.wikipedia.org/wiki/Naive_Bayes_classifier
πŸ““ Laplacian Smoothing: en.wikipedia.org/wiki/Additive_smoothing

Videos:
πŸš‚ youtu.be/unm0BLor8aE
πŸš‚ youtu.be/7DG3kCDx53c?list=PLRqwX-V7Uu6YEypLuls7iidwHMdCM6o2w
πŸ“Ί youtu.be/HZGCoVF3YvM
πŸš‚ youtu.be/0Ad5Frf8NBM

Live Stream Archives:
πŸ”΄ youtube.com/live/TsBDm0P0qaA

Related Coding Challenges:
πŸš‚ youtu.be/unm0BLor8aE
πŸš‚ youtu.be/eGFJ8vugIWA

Timestamps:
0:00:00 Hello!
0:03:34 Explaining Bayes' Theorem
0:12:07 What is Naive Bayes?
0:13:49 Setting up the Classifier in p5.js
0:15:41 Coding the train() function
0:22:14 Coding the classify() Function
0:24:45 Revising the train() function
0:29:06 Implementing Probability Calculations
0:33:24 Laplacian (Additive) Smoothing
0:42:21 Ignoring the enominator (Normalization)
0:45:36 Quick User Interface
0:49:42 Final thoughts and next steps.

Editing by Mathieu Blanchette
Animations by Jason Heglund
Music from Epidemic Sound

πŸš‚ Website: thecodingtrain.com
πŸ‘Ύ Share Your Creation! thecodingtrain.com/guides/passenger-showcase-guide
🚩 Suggest Topics: github.com/CodingTrain/Suggestion-Box
πŸ’‘ GitHub: github.com/CodingTrain
πŸ’¬ Discord: thecodingtrain.com/discord
πŸ’– Membership: youtube.com/thecodingtrain/join
πŸ›’ Store: standard.tv/codingtrain
πŸ–‹οΈ Twitter: twitter.com/thecodingtrain
πŸ“Έ Instagram: instagram.com/the.coding.train

πŸŽ₯ youtube.com/playlist?list=PLRqwX-V7Uu6ZiZxtDDRCi6uhfTH4FilpH
πŸŽ₯ youtube.com/playlist?list=PLRqwX-V7Uu6Zy51Q-x9tMWIv9cueOFTFA

πŸ”— p5.js: p5js.org
πŸ”— p5.js Web Editor: editor.p5js.org
πŸ”— Processing: processing.org

πŸ“„ Code of Conduct: github.com/CodingTrain/Code-of-Conduct

This description was auto-generated. If you see a problem, please open an issue: github.com/CodingTrain/thecodingtrain.com/issues/new

#bayestheorem #textclassification #naivebayes #sentimentanalysis #naturallanguageprocessing #machinelearning #wordfrequency #laplaciansmoothing #javascript #p5js
Coding Challenge 187: Bayes TheoremWhat’s new in Nature of Code?Coding Train Live: Side Project Saturday! (Live from the Attic)Machine Learning and the Computer Mouse (from the 2021 Computer Mouse Conference)Coding Challenge 176: Buffons Needleml5.js: Training a Convolutional Neural Network for Image ClassificationCoding Challenge 164: Bending Time SlitscanSaturday Side Project Spooktacular!3.2 Angular Motion - Nature of CodeDiscord Bots 2: Discord Developer PortalCoding a Fractal Tree in 60 Seconds #programming #shortsReviewing the new Coding Train Passenger Showcase!
The Coding Train |

Coding Challenge 187: Bayes Theorem

SHARE TO X SHARE TO REDDIT SHARE TO FACEBOOK WALLPAPER