{"id":133802,"date":"2026-01-28T12:52:21","date_gmt":"2026-01-28T11:52:21","guid":{"rendered":"https:\/\/multi.liora.io\/?p=133802"},"modified":"2026-08-24T18:41:33","modified_gmt":"2026-08-24T17:41:33","slug":"pytorch-saber-todo-sobre-el-marco-de-trabajo-de-deep-learning-de-facebook","status":"publish","type":"post","link":"https:\/\/liora.io\/es\/pytorch-saber-todo-sobre-el-marco-de-trabajo-de-deep-learning-de-facebook","title":{"rendered":"PyTorch: saber todo sobre el marco de trabajo de Deep Learning de Facebook"},"content":{"rendered":"\n<p><strong>Al ser el lenguaje Python uno de los m\u00e1s utilizados, contiene muchos frameworks y muchos los desarrolla exclusivamente para la Data Science. En este art\u00edculo, vamos a hablar detalladamente de uno de ellos. PyTorch.<\/strong><\/p>\n\n\n<p>La popularidad de <a href=\"https:\/\/liora.io\/es\/data-science-definicion-problematica-y-casos-de-uso\">la Data Science<\/a> no ha dejado de crecer en los \u00faltimos a\u00f1os, y con ella una explosi\u00f3n de recursos puestos a disposici\u00f3n de los programadores: ya no es necesario escribir todo el c\u00f3digo a mano. Entornos de programaci\u00f3n como PyTorch, llamados \u201cframeworks\u201d o marcos de trabajo, permiten utilizar modelos complejos en muy pocas l\u00edneas.<\/p>\n\n\n<h2 class=\"wp-block-heading\" id=\"la-historia-de-pytorch\">La historia de PyTorch<\/h2>\n\n\n<p>Los <strong>frameworks permiten dar un marco y herramientas para facilitar la programaci\u00f3n<\/strong>. Por lo general <strong>se desarrollan en \u201copen source\u201d<\/strong>, es decir que cualquier puede modificar y acceder al c\u00f3digo, lo que permite fiabilidad, transparencia y un mantenimiento continuo.<\/p>\n\n\n<p>PyTorch no es ninguna excepci\u00f3n. Basado en la antigua biblioteca Torch, <strong>PyTorch fue lanzado oficialmente en 2016<\/strong><strong>por un equipo del laboratorio de investigaci\u00f3n de Facebook<\/strong>, y desde entonces se ha desarrollado en open source. El objetivo de este framework es permitir <strong>la implementaci\u00f3n y el entrenamiento de modelos de Deep Learning<\/strong> de manera sencilla y eficiente. Su fusi\u00f3n en 2018 con Caffe2 (otro framework de Python) permiti\u00f3 mejorar a\u00fan m\u00e1s sus rendimientos.<\/p>\n\n\n<p>En la actualidad un 17 % de los desarrolladores de Python utiliza PyTorch (<a href=\"https:\/\/www.jetbrains.com\/lp\/python-developers-survey-2020\/\">estudio de la Python Foundation 2020<\/a>) y tambi\u00e9n se usa en muchas empresas como Tesla, Uber, etc.<\/p>\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex is-content-justification-center wp-container-core-buttons-is-layout-5ee10de4\" style=\"margin-top:32px;margin-bottom:32px\"><div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/liora.io\/en\/courses\/data-ai\/deep-learning\">Aprender a utilizar<\/a><\/div><\/div>\n\n\n<h3 class=\"wp-block-heading\" id=\"pytorch-vs-keras-vs-tensorflow\">Pytorch vs Keras vs Tensorflow<\/h3>\n\n\n<p>Es dif\u00edcil presentar PyTorch sin hablar de sus alternativas, todas ellas creadas con pocos a\u00f1os de intervalo, y pr\u00e1cticamente con el mismo objetivo, pero con m\u00e9todos diferentes.<\/p>\n\n\n<p>Keras fue desarrollado en marzo de 2015 por Fran\u00e7ois Chollet, investigador de Google. Este framework se hizo r\u00e1pidamente popular gracias a su <strong>API f\u00e1cil de usar<\/strong>, inspirada en gran medida en scikit-learn, la biblioteca de <a href=\"https:\/\/liora.io\/es\/machine-learning-definicion-funcionamiento-usos\">Machine Learning<\/a> est\u00e1ndar de <a href=\"https:\/\/liora.io\/es\/un-zoom-en-el-lenguaje-mas-popular\">Python<\/a>.<\/p>\n\n\n<p>Varios meses despu\u00e9s, en noviembre de 2015, Google public\u00f3 una primera versi\u00f3n de TensorFlow y r\u00e1pidamente se convirti\u00f3 en <strong>el framework de referencia de Deep Learning<\/strong>, ya que permite utilizar Keras. Tensorflow tambi\u00e9n ha puesto a punto una serie de funcionalidades de aprendizaje profundo que los investigadores necesitaban para <strong>crear f\u00e1cilmente<\/strong> redes neuronales complejas.<\/p>\n\n\n<p>Por tanto Keras era muy f\u00e1cil de usar, pero no tenia alguna funcionalidades b\u00e1sicas o algunas personalizaciones necesarias para los modelos punteros. Por el contrario, Tensorflow daba acceso a sus funciones, pero no se parec\u00eda al estilo habitual de Python y ten\u00eda una documentaci\u00f3n muy complicada para los principiantes.<\/p>\n\n\n<p><strong>PyTorch resolvi\u00f3 esos problemas<\/strong> creando una API a la vez accesible y f\u00e1cil de personalizar, que permit\u00eda crear nuevos tipos de redes, optimizadores y arquitecturas in\u00e9ditas.<\/p>\n\n\n<p>Dicho esto, <strong>las recientes evoluciones de esos frameworks han acercado much\u00edsimo<\/strong><strong>sus<\/strong><strong>modos de funcionamiento<\/strong>. Antes de ponernos con los detalles t\u00e9cnicos de PyTorch, aqu\u00ed tienes una <strong>tabla recapitulativa de las diferencias<\/strong> entre estas herramientas. Puesto que Keras y Tensorflow funcionan ahora juntos, conviene presentarlos conjuntamente.<\/p>\n\n\n<figure class=\"aligncenter size-full wp-block-image\" style=\"margin-top:32px;margin-bottom:32px\"><img alt=\"tableau keras\" decoding=\"async\" height=\"601\" loading=\"lazy\" sizes=\"(max-width: 800px) 100vw, 800px\" src=\"https:\/\/liora.io\/app\/uploads\/sites\/7\/2021\/09\/Schema-tableau-Keras-TensorFlow-PyTorch-1024x601.png\" srcset=\"https:\/\/liora.io\/app\/uploads\/sites\/7\/2021\/09\/Schema-tableau-Keras-TensorFlow-PyTorch-1024x601.png 1024w, https:\/\/liora.io\/app\/uploads\/sites\/7\/2021\/09\/Schema-tableau-Keras-TensorFlow-PyTorch-300x176.png 300w, https:\/\/liora.io\/app\/uploads\/sites\/7\/2021\/09\/Schema-tableau-Keras-TensorFlow-PyTorch-768x451.png 768w, https:\/\/liora.io\/app\/uploads\/sites\/7\/2021\/09\/Schema-tableau-Keras-TensorFlow-PyTorch-1536x902.png 1536w, https:\/\/liora.io\/app\/uploads\/sites\/7\/2021\/09\/Schema-tableau-Keras-TensorFlow-PyTorch.png 2039w\" style=\"width:100%;max-width:748px;height:auto\" width=\"1024\"\/><\/figure>\n\n\n<h2 class=\"wp-block-heading\" id=\"uso-de-pytorch-para-el-deep-learning\">Uso de PyTorch para el Deep Learning<\/h2>\n\n\n<p>Hemos hablado de la complejidad de los modelos y de las redes sin hablar de la velocidad de ejecuci\u00f3n de los algoritmos. En efecto, <strong>PyTorch fue dise\u00f1ado para minimizar ese tiempo y utilizar mejor las especificidades del hardware<\/strong>.<\/p>\n\n\n<p>PyTorch representa los datos en forma de tablas multidimensionales, similares a las tablas NumPy, llamadas \u201c<strong>tensores<\/strong>\u201d. Los tensores almacenan los inputs de la red neuronal, los par\u00e1metros de los hidden layers y los outputs. A partir de esos tensores, PyTorch puede llevar, de manera oculta y eficaz, 4 etapas para entrenar la red:<\/p>\n\n\n<ul class=\"wp-block-list\">\n<li aria-level=\"1\">Montar una gr\u00e1fico a partir de los tensores de la red neuronal, lo que permite una estructura din\u00e1mica, es posible modificarla (n\u00famero de nudos, conexiones entre ellos, etc.) durante el aprendizaje.<\/li>\n<li aria-level=\"1\"><strong>Efectuar las predicciones<\/strong> de la red (\u201cforward pass\u201d).<\/li>\n<li aria-level=\"1\"><strong>Calcular la p\u00e9rdidas<\/strong> o error respecto a las predicciones<\/li>\n<li aria-level=\"1\">Atravesar la red en el sentido inverso: \u201c<strong>backpropagation<\/strong>\u201d, y ajustar los tensores para que la red haga predicciones m\u00e1s precisas basadas en la p\u00e9rdida\/error calculado.<\/li>\n<\/ul>\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\" style=\"margin-top:32px;margin-bottom:32px\"><div class=\"wp-block-embed__wrapper\" style=\"position:relative;width:100%;padding-top:56.25%;overflow:hidden\"><iframe allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" allowfullscreen=\"\" frameborder=\"0\" height=\"315\" loading=\"lazy\" referrerpolicy=\"strict-origin-when-cross-origin\" src=\"https:\/\/www.youtube.com\/embed\/Ka4AnSXxF2g?rel=0\" style=\"position:absolute;inset:0;width:100%;height:100%;border:0\" title=\"YouTube video Ka4AnSXxF2g\" width=\"560\"><\/iframe><\/div><\/figure>\n\n\n<p>Esta funci\u00f3n de PyTorch llamada \u201c<strong>Autograd<\/strong>\u201d est\u00e1 muy optimizada, y es <strong>compatible con el uso de GPU y data parallelism<\/strong>, lo que acelera considerablemente los c\u00e1lculos. Adem\u00e1s, permite un uso en todas las clouds, mientras que Tensorflow, por ejemplo, solo est\u00e1 optimizado para GoogleCloud y sus TPU.<\/p>\n\n\n<p>Recientemente, y en colaboraci\u00f3n con AWS (Amazon Web Services), PyTorch ha desvelado 2 nuevas funcionalidades. La primera, bautizada TorchServe, permite gestionar eficazmente el despliegue de redes neuronales ya entrenadas. La segunda, TorchElastic, permite usar PyTorch en cl\u00fasteres Kubernetes a la vez que resiste a las aver\u00edas.<\/p>\n\n\n<p>Estos 3 frameworks tienen as\u00ed pues su propia especificidad. En particular <strong>PyTorch est\u00e1 muy adaptado para las redes neuronales complejas y profundas<\/strong>. Para descubrir PyTorch, la p\u00e1gina web oficial propone <a href=\"https:\/\/pytorch.org\/tutorials\/\">tutoriales<\/a>.<\/p>\n\n\n<p>Para profundizar la pr\u00e1ctica de ese framework, <a href=\"https:\/\/liora.io\/en\/courses\/data-ai\/data-scientist\">nuestro curso de Data Scientist<\/a> propone m\u00f3dulos de ense\u00f1anza dedicados al Deep Learning con PyTorch.<\/p>\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex is-content-justification-center wp-container-core-buttons-is-layout-5ee10de4\" style=\"margin-top:32px;margin-bottom:32px\"><div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/liora.io\/en\/courses\/data-ai\/data-scientist\">Explora el programa de Data Scientist<\/a><\/div><\/div>\n\n\n<h3 class=\"wp-block-heading\" id=\"por-que-utilizar-pytorch\">\u00bfPor qu\u00e9 utilizar PyTorch?<\/h3>\n\n\n<p>PyTorch es una biblioteca de <strong>aprendizaje autom\u00e1tico<\/strong> bastante reciente, pero dispone de un gran n\u00famero de <strong>manuales y de tutoriales<\/strong> en los que se pueden encontrar ejemplos. Dispone tambi\u00e9n de una comunidad que se desarrolla a pasos agigantados.<\/p>\n\n\n<p>PyTorch cuenta con una <strong>interfaz muy sencilla<\/strong> para la creaci\u00f3n de redes neuronales aunque haya que trabajar directamente con los tensores sin necesitar una biblioteca de mayor nivel como Keras para Theano o Tensorflow.<\/p>\n\n\n<p>Al contrario que otras herramientas de aprendizaje autom\u00e1tico como Tensorflow, PyTorch funciona con <strong>gr\u00e1ficos din\u00e1micos<\/strong> en vez de est\u00e1ticos. Eso significa que en el momento de la ejecuci\u00f3n, las funciones se pueden modificar y que el <strong>c\u00e1lculo de los gradientes variar\u00e1 con ellas<\/strong>. Sin embargo, en Tensorflow, primero hay que definir el gr\u00e1fico de c\u00e1lculo, y despu\u00e9s utilizar la sesi\u00f3n para calcular los resultados del tensor, lo que hace que la depuraci\u00f3n del c\u00f3digo sea m\u00e1s dif\u00edcil y la puesta en marcha m\u00e1s tediosa.<\/p>\n\n\n<p>PyTorch es compatible con las <strong>tarjetas gr\u00e1ficas<\/strong> (GPU). Utiliza internamente <a href=\"https:\/\/fr.wikipedia.org\/wiki\/Compute_Unified_Device_Architecture\">CUDA<\/a>, una API que conecta la CPU con la GPU y que <strong>fue desarrollada por NVIDIA<\/strong>.<\/p>\n\n\n<h3 class=\"wp-block-heading\" id=\"ventajas-de-pytorch\"><strong>Ventajas de PyTorch<\/strong><\/h3>\n\n\n<p>Aunque PyTorch presenta <strong>muchas ventajas<\/strong>, aqu\u00ed nos concentraremos solo en algunas.<\/p>\n\n\n<ol class=\"wp-block-list\">\n<li aria-level=\"1\"><strong>PyTorch y Python<\/strong><\/li>\n<\/ol>\n\n\n<p>La mayor\u00eda de los trabajos vinculados al aprendizaje autom\u00e1tico y la inteligencia artificial se efect\u00faa con ayuda de Python. Sin embargo, PyTorch y Python son de la <strong>misma familia<\/strong>, lo que significa que los desarrolladores de Python deber\u00edan sentirse <strong>m\u00e1s a gusto<\/strong> cuando escriben c\u00f3digo con PyTorch que con otros frameworks de Deep Learning.<\/p>\n\n\n<ol class=\"wp-block-list\">\n<li aria-level=\"1\"><strong>F\u00e1cil de aprender<\/strong><\/li>\n<\/ol>\n\n\n<p>Como el lenguaje Python, se considera que PyTorch es relativamente m\u00e1s f\u00e1cil de aprender respecto a otros frameworks. La raz\u00f3n principal se debe a su sintaxis f\u00e1cil e intuitiva.<\/p>\n\n\n<ol class=\"wp-block-list\">\n<li aria-level=\"1\"><strong>Comunidad activa<\/strong><\/li>\n<\/ol>\n\n\n<p>Aunque PyTorch sea un framework relativamente reciente, ha desarrollado muy r\u00e1pidamente una comunidad dedicada de desarrolladores. Adem\u00e1s, su documentaci\u00f3n est\u00e1 muy bien organizada y es \u00fatil para los principiantes.<\/p>\n\n\n<ol class=\"wp-block-list\">\n<li aria-level=\"1\"><strong>Depuraci\u00f3n f\u00e1cil<\/strong><\/li>\n<\/ol>\n\n\n<p>PyTorch est\u00e1 profundamente integrado en Python, hasta tal punto que muchas herramientas de depuraci\u00f3n de Python se pueden utilizar f\u00e1cilmente con \u00e9l.<\/p>\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex is-content-justification-center wp-container-core-buttons-is-layout-5ee10de4\" style=\"margin-top:32px;margin-bottom:32px\"><div class=\"wp-block-button\"><a class=\"wp-block-button__link wp-element-button\" href=\"https:\/\/liora.io\/en\/courses\/data-ai\/machine-learning-engineer\">Da el siguiente paso con Machine Learning Engineer<\/a><\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Al ser el lenguaje Python uno de los m\u00e1s utilizados, contiene muchos frameworks y muchos los desarrolla exclusivamente para la Data Science. En este art\u00edculo, vamos a hablar detalladamente de uno de ellos. PyTorch.<\/p>\n","protected":false},"author":85,"featured_media":99798,"comment_status":"open","ping_status":"open","sticky":false,"template":"elementor_theme","format":"standard","meta":{"_acf_changed":false,"editor_notices":[],"footnotes":""},"categories":[2440],"class_list":["post-133802","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\/133802","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\/85"}],"replies":[{"embeddable":true,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/comments?post=133802"}],"version-history":[{"count":4,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/posts\/133802\/revisions"}],"predecessor-version":[{"id":185418,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/posts\/133802\/revisions\/185418"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/media\/99798"}],"wp:attachment":[{"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/media?parent=133802"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/liora.io\/es\/wp-json\/wp\/v2\/categories?post=133802"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}