{"id":136630,"date":"2026-02-18T23:59:42","date_gmt":"2026-02-18T22:59:42","guid":{"rendered":"https:\/\/multi.liora.io\/?p=136630"},"modified":"2026-02-25T15:35:23","modified_gmt":"2026-02-25T14:35:23","slug":"que-es-el-algoritmo-knn","status":"publish","type":"post","link":"https:\/\/liora.io\/es\/que-es-el-algoritmo-knn","title":{"rendered":"\u00bfQu\u00e9 es el algoritmo KNN?"},"content":{"rendered":"\n<p><strong>El algoritmo de las K vecinas m\u00e1s cercanas o K-nearest neighbors (kNN) es un algoritmo de Machine Learning que pertenece a los algoritmos de aprendizaje supervisado simples y f\u00e1ciles de aplicar que pueden ser utilizados para resolver problemas de clasificaci\u00f3n y de regresi\u00f3n. En este art\u00edculo veremos la definici\u00f3n de este algoritmo, su funcionamiento as\u00ed como tambi\u00e9n una aplicaci\u00f3n directa en programaci\u00f3n.<\/strong><\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-definicion-de-knn\">Definicion de KNN<\/h2>\n\n\n\n<p>Antes de concentrarnos en el <b>algoritmo KNN<\/b>, es necesario retomar las bases. \u00bfQu\u00e9 es un algoritmo de aprendizaje supervisado?<\/p>\n\n\n\n<p>En aprendizaje supervisado, un algoritmo recibe un conjunto de datos que est\u00e1n etiquetados con los valores de salida correspondientes sobre los que puede entrenarse y definir un modelo de predicci\u00f3n. Este algoritmo podr\u00e1 luego ser utilizado sobre datos nuevos para predecir sus valores de salida correspondientes.<\/p>\n\n\n\n<p>A continuaci\u00f3n, una ilustraci\u00f3n simplificada :<\/p>\n\n\n\n<p>La l\u00f3gica detr\u00e1s del algoritmo de las K vecinas m\u00e1s cercanas es una de las m\u00e1s sencillas de todos los algoritmos de Machine Learning supervisados:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Etapa 1:<\/strong> Seleccionar el n\u00famero de K vecinas<\/li>\n\n\n\n<li><strong>Etapa 2:<\/strong> Calcular la distancia<\/li>\n<\/ul>\n\n\n\n<p>Desde un punto no clasificado a otros puntos:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Etapa 3:<\/strong> tomar las K vecinas m\u00e1s cercanas seg\u00fan la distancia calculada<\/li>\n\n\n\n<li><strong>Etapa 4:<\/strong> entre las K vecinas, contar el n\u00famero de puntos en cada categor\u00eda.<\/li>\n\n\n\n<li><strong>Etapa 5:<\/strong> atribuir un nuevo punto a la categor\u00eda m\u00e1s presente entre las K vecinas<\/li>\n\n\n\n<li><strong>Etapa 6:<\/strong> El modelo est\u00e1 listo.<\/li>\n<\/ul>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/liora.io\/app\/uploads\/sites\/7\/2020\/11\/Illu-2-KNN-1024x492.jpg\" alt=\"knn\" \/><\/figure>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex is-content-justification-center\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/liora.io\/es\/formacion-data-scientist\">Aprender sobre el algoritmo KNN<\/a><\/div>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\" id=\"knn-un-ejemplo-sobre-su-uso\">KNN : un ejemplo sobre su uso.<\/h2>\n\n\n\n<p>A partir de ahora podemos analizar un ejemplo sobre el uso del algoritmo de las K vecinas. Gracias a la biblioteca <strong>Scikit-Learn<\/strong>, podemos importar la funci\u00f3n Neighbors Classifier que utilizaremos sobre un conjunto de datos IRIS.<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\" style=\"margin-top:var(--wp--preset--spacing--columns);margin-bottom:var(--wp--preset--spacing--columns)\"><img decoding=\"async\" src=\"https:\/\/liora.io\/app\/uploads\/sites\/7\/2020\/11\/Illu-3-KNN-1024x312.jpg\" alt=\"Knn\" \/><\/figure>\n\n\n\n<p>En el ejemplo, gracias al algoritmo KNN, obtenemos una excelente tasa de clasificaci\u00f3n correcta de las plantas cercana al 100%. Podemos tambi\u00e9n considerar una forma de elegir la<strong> K que hace que la clasificaci\u00f3n sea a\u00fan mejor<\/strong>. Una forma de encontrarla consiste en trazar el gr\u00e1fico del valor K y la tasa de error correspondiente al conjunto de datos :<\/p>\n\n\n\n<figure class=\"wp-block-image\" style=\"margin-top:var(--wp--preset--spacing--columns);margin-bottom:var(--wp--preset--spacing--columns)\"><img decoding=\"async\" src=\"https:\/\/liora.io\/app\/uploads\/sites\/7\/2020\/11\/Illu-4-KNN-1024x571.jpg\" alt=\"knn\" \/><\/figure>\n\n\n\n<p>As\u00ed, podemos ver que la mejor tasa de predicci\u00f3n se obtiene con una K entre 5 y 18. Por encima de este valor, podemos observar un fen\u00f3meno llamado \u201coverlifting\u201d, o sobre aprendizaje en espanol, que se produce cuando los datos de aprendizaje utilizados para construir el modelo explican demasiado bien los datos pero no logran hacer predicciones \u00fatiles para nuevos datos.<\/p>\n\n\n\n<p>Algunos usos :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Puede utilizarse en <b>tecnolog\u00edas como OCR<\/b> (Optical Character Recognizer), que intenta detectar la escritura manuscrita, las im\u00e1genes e incluso los videos.<\/li>\n\n\n\n<li>Puede utilizarse en el campo de las <b>notaciones de cr\u00e9dito<\/b>. En ese caso, intenta hacer corresponder las caracter\u00edsticas de un individuo con el grupo de personas existentes para atribuirle la cotizaci\u00f3n de cr\u00e9dito correspondiente. Obtendr\u00e1 entonces con <b>la misma nota que las personas que corresponden a las mismas caracter\u00edsticas.<\/b><\/li>\n<\/ul>\n\n\n\n<p>Se utiliza tambi\u00e9n para <b>predecir si el banco debe otorgar un pr\u00e9stamo a un particular.<\/b> Busca evaluar si el individuo dado corresponde a los mismos criterios que otras personas que han sido rechazadas anteriormente y sino, no es rechazado para el pr\u00e9stamo.<\/p>\n\n\n\n<p>Ventajas :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>El algoritmo es simple y f\u00e1cil de aplicar.<\/li>\n\n\n\n<li>No es necesario crear un modelo, configurar varios par\u00e1metros o formular hip\u00f3tesis suplementarias.<\/li>\n\n\n\n<li>El algoritmo es polivalente. Puede ser utilizado para la clasificaci\u00f3n o la regresi\u00f3n.<\/li>\n<\/ul>\n\n\n\n<p>Desventajas :<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>El algoritmo se vuelve m\u00e1s lento a medida que el n\u00famero de observaciones aumenta y las variables independientes aumentan.<\/li>\n<\/ul>\n\n\n\n<p>Al tratarse de uno de los algoritmos m\u00e1s simples de Machine Learning, es muy implementado por los desarrolladores de sistemas basados en el aprendizaje, intuitivos e inteligentes que pueden efectuar y tomar peque\u00f1as decisiones solos.<\/p>\n\n\n\n<p>Esto hace que sea a\u00fan m\u00e1s pr\u00e1ctico para el aprendizaje y el desarrollo y puede servir para toda industria que utilice sistemas, soluciones o servicios inteligentes.<\/p>\n\n\n\n<p>Existen muchos otros algoritmos de <b>Clustering <\/b>supervisado o no Supervisado que son m\u00e1s o menos utilizados seg\u00fan la situaci\u00f3n, como el de<b> K-means,<\/b> el de <b>CAH <\/b>(Clasificaci\u00f3n ascendente jer\u00e1rquica), <b>DBSCAN <\/b>(density-based spatial clustering of applications with noise), y muchos m\u00e1s que puedes descubrir en nuestro <b>blog<\/b>!<\/p>\n\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex is-content-justification-center\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/liora.io\/es\/nuestros-cursos-de-data\">Descubre nuestras formaciones<\/a><\/div>\n<\/div>\n\n\n\n<script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@type\": \"FAQPage\",\n  \"mainEntity\": [\n    {\n      \"@type\": \"Question\",\n      \"name\": \"Definicion de KNN\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"KNN (K-nearest neighbors) es un algoritmo de aprendizaje supervisado simple que puede usarse para clasificaci\u00f3n y regresi\u00f3n. Funciona en etapas: 1) Seleccionar n\u00famero K de vecinas, 2) Calcular distancia desde punto no clasificado a otros puntos, 3) Tomar las K vecinas m\u00e1s cercanas, 4) Contar puntos en cada categor\u00eda entre esas K, 5) Atribuir nuevo punto a categor\u00eda m\u00e1s presente, 6) Modelo listo.\"\n      }\n    },\n    {\n      \"@type\": \"Question\",\n      \"name\": \"KNN : un ejemplo sobre su uso.\",\n      \"acceptedAnswer\": {\n        \"@type\": \"Answer\",\n        \"text\": \"Usando Scikit-Learn (Neighbors Classifier) con dataset IRIS se obtiene excelente tasa clasificaci\u00f3n (~100%). Gr\u00e1fico valor K vs tasa error muestra mejor predicci\u00f3n con K entre 5-18. Usos: OCR (reconocimiento escritura manuscrita, im\u00e1genes, videos), notaciones cr\u00e9dito (asignar cotizaci\u00f3n seg\u00fan caracter\u00edsticas), pr\u00e9stamos bancarios (evaluar si individuo corresponde a criterios de rechazados previos). Ventajas: simple, f\u00e1cil aplicar, no requiere modelo\/configuraci\u00f3n, polivalente. Desventajas: m\u00e1s lento al aumentar observaciones y variables independientes.\"\n      }\n    }\n  ]\n}\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>El algoritmo de las K vecinas m\u00e1s cercanas o K-nearest neighbors (kNN) es un algoritmo de Machine Learning que pertenece a los algoritmos de aprendizaje supervisado simples y f\u00e1ciles de aplicar que pueden ser utilizados para resolver problemas de clasificaci\u00f3n y de regresi\u00f3n. En este art\u00edculo veremos la definici\u00f3n de este algoritmo, su funcionamiento as\u00ed [&hellip;]<\/p>\n","protected":false},"author":82,"featured_media":183670,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"editor_notices":[],"footnotes":""},"categories":[2440],"class_list":["post-136630","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-data-ia"],"acf":[],"_links":{"self":[{"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/posts\/136630","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/users\/82"}],"replies":[{"embeddable":true,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/comments?post=136630"}],"version-history":[{"count":5,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/posts\/136630\/revisions"}],"predecessor-version":[{"id":184249,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/posts\/136630\/revisions\/184249"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/media\/183670"}],"wp:attachment":[{"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/media?parent=136630"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/categories?post=136630"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}