k-Nearest Neighbors (kNN) הוא אחד מאלגוריתמי-הלמידה הפשוטים והוותיקים ביותר, המשמש הן לסיווג והן לרגרסיה. הרעיון הבסיסי שלו כמעט אינטואיטיבי: כדי לסווג דוגמה חדשה, האלגוריתם מוצא את k הדוגמאות הדומות-לה-ביותר ("השכנים הקרובים") במאגר-הנתונים הקיים, לפי מדד-מרחק כלשהו (למשל מרחק אוקלידי), ומחליט על התווית לפי הצבעת-הרוב שלהן. ברגרסיה, במקום הצבעת-רוב, לוקחים את הממוצע של ערכי-השכנים. בניגוד לרוב אלגוריתמי למידת-המכונה, kNN אינו "לומד" מודל כללי מראש — הוא שומר את כל נתוני-האימון, ומבצע את כל החישוב בזמן-הסיווג עצמו.
השורשים הרעיוניים של kNN מתועדים כבר בדוח מ-1951 מאת אוולין פיקס (Evelyn Fix) וג׳וזף הודג׳ס (Joseph Hodges), שנכתב עבור חיל-האוויר האמריקאי ומעולם לא פורסם רשמית באותה תקופה — ולכן נותר כמעט לא-ידוע במשך שנים. השיטה זכתה להכרה רחבה ולביסוס תיאורטי-פורמלי רק ב-1967, כשתומאס קאבר (Thomas Cover) ופיטר הארט (Peter Hart) פרסמו את המאמר "Nearest Neighbor Pattern Classification", שהוכיח מבחינה מתמטית שהשגיאה של הכלל אינה גדולה בהרבה מהשגיאה התיאורטית-האופטימלית האפשרית.
בחירת הפרמטר k משפיעה מהותית על ההתנהגות: k קטן מדי (למשל 1) הופך את המודל רגיש-מאוד לרעש בודד בנתונים, בעוד k גדול מדי מטשטש הבדלים אמיתיים בין קבוצות. מכיוון שהאלגוריתם משווה מרחקים בין נקודות, הוא רגיש מאוד לסקאלה של המדדים השונים — לכן מקובל לנרמל את הנתונים לפני שימוש בו. חישוב-המרחק מכל דוגמת-אימון הופך את kNN לאיטי יחסית על מאגרי-נתונים גדולים מאוד, בהשוואה למודלים שמסתפקים בפרמטרים קבועים מראש.
למרות פשטותו, kNN עדיין נמצא בשימוש כשיטת-בסיס (Baseline) בבעיות סיווג רבות, ובתחומים כמו זיהוי-כתב-יד וסינון תוכן. הוא גם מהווה את הרעיון העקרוני שעליו מבוססים כלים מודרניים כמו חיפוש-במאגר-וקטורי (Vector Search) — המשמש היום, למשל, במנועי-המלצות ובמערכות שמאתרות עבור מודל-שפה-גדול את המידע הרלוונטי-ביותר לשאלה שנשאלה.