Buckets:
| <meta charset="utf-8" /><meta name="hf:doc:metadata" content="{"title":"Fine-Tuning Eficiente en Parámetros (PEFT)","local":"fine-tuning-eficiente-en-parámetros-peft","sections":[{"title":"Métodos Disponibles","local":"métodos-disponibles","sections":[{"title":"1️⃣ LoRA (Adaptación de Bajo Rango)","local":"1-lora-adaptación-de-bajo-rango","sections":[],"depth":3},{"title":"2️⃣ Prompt Tuning","local":"2-prompt-tuning","sections":[],"depth":3}],"depth":2},{"title":"Recursos","local":"recursos","sections":[],"depth":2}],"depth":1}"> | |
| <link href="/docs/smol-course/pr_296/es/_app/immutable/assets/0.e3b0c442.css" rel="modulepreload"> | |
| <link rel="modulepreload" href="/docs/smol-course/pr_296/es/_app/immutable/entry/start.cd6905d6.js"> | |
| <link rel="modulepreload" href="/docs/smol-course/pr_296/es/_app/immutable/chunks/scheduler.f38f3a0e.js"> | |
| <link rel="modulepreload" href="/docs/smol-course/pr_296/es/_app/immutable/chunks/singletons.114ea3ca.js"> | |
| <link rel="modulepreload" href="/docs/smol-course/pr_296/es/_app/immutable/chunks/paths.88e2d765.js"> | |
| <link rel="modulepreload" href="/docs/smol-course/pr_296/es/_app/immutable/entry/app.d412b8f0.js"> | |
| <link rel="modulepreload" href="/docs/smol-course/pr_296/es/_app/immutable/chunks/preload-helper.6811d58e.js"> | |
| <link rel="modulepreload" href="/docs/smol-course/pr_296/es/_app/immutable/chunks/index.a03143fc.js"> | |
| <link rel="modulepreload" href="/docs/smol-course/pr_296/es/_app/immutable/nodes/0.c409a4e3.js"> | |
| <link rel="modulepreload" href="/docs/smol-course/pr_296/es/_app/immutable/chunks/each.e59479a4.js"> | |
| <link rel="modulepreload" href="/docs/smol-course/pr_296/es/_app/immutable/nodes/10.ccf6ac68.js"> | |
| <link rel="modulepreload" href="/docs/smol-course/pr_296/es/_app/immutable/chunks/CopyLLMTxtMenu.1ddc8e76.js"> | |
| <link rel="modulepreload" href="/docs/smol-course/pr_296/es/_app/immutable/chunks/MermaidChart.svelte_svelte_type_style_lang.36c7bd5b.js"><!-- HEAD_svelte-u9bgzb_START --><meta name="hf:doc:metadata" content="{"title":"Fine-Tuning Eficiente en Parámetros (PEFT)","local":"fine-tuning-eficiente-en-parámetros-peft","sections":[{"title":"Métodos Disponibles","local":"métodos-disponibles","sections":[{"title":"1️⃣ LoRA (Adaptación de Bajo Rango)","local":"1-lora-adaptación-de-bajo-rango","sections":[],"depth":3},{"title":"2️⃣ Prompt Tuning","local":"2-prompt-tuning","sections":[],"depth":3}],"depth":2},{"title":"Recursos","local":"recursos","sections":[],"depth":2}],"depth":1}"><!-- HEAD_svelte-u9bgzb_END --> <p></p> <div class="items-center shrink-0 min-w-[100px] max-sm:min-w-[50px] justify-end ml-auto flex" style="float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"><div class="inline-flex rounded-md max-sm:rounded-sm"><button class="inline-flex items-center gap-1 h-7 max-sm:h-7 px-2 max-sm:px-1.5 text-sm font-medium text-gray-800 border border-r-0 rounded-l-md max-sm:rounded-l-sm border-gray-200 bg-white hover:shadow-inner dark:border-gray-850 dark:bg-gray-950 dark:text-gray-200 dark:hover:bg-gray-800" aria-live="polite"><span class="inline-flex items-center justify-center rounded-md p-0.5 max-sm:p-0 hover:text-gray-800 dark:hover:text-gray-200"><svg class="sm:size-3.5 size-3" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg></span> <span>Copy page</span></button> <button class="inline-flex items-center justify-center w-6 max-sm:w-5 h-7 max-sm:h-7 disabled:pointer-events-none text-sm text-gray-500 hover:text-gray-700 dark:hover:text-white rounded-r-md max-sm:rounded-r-sm border border-l transition border-gray-200 bg-white hover:shadow-inner dark:border-gray-850 dark:bg-gray-950 dark:text-gray-200 dark:hover:bg-gray-800" aria-haspopup="menu" aria-expanded="false" aria-label="Open copy menu"><svg class="transition-transform text-gray-400 overflow-visible sm:size-3.5 size-3 rotate-0" width="1em" height="1em" viewBox="0 0 12 7" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1L6 6L11 1" stroke="currentColor"></path></svg></button></div> </div> <h1 class="relative group"><a id="fine-tuning-eficiente-en-parámetros-peft" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#fine-tuning-eficiente-en-parámetros-peft"><span><svg class="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg></span></a> <span>Fine-Tuning Eficiente en Parámetros (PEFT)</span></h1> <p data-svelte-h="svelte-1po15mm">A medida que los modelos de lenguaje se hacen más grandes, el <em>fine-tuning</em> tradicional se vuelve cada vez más complicado. Afinar completamente un modelo con 1.7 mil millones de parámetros, por ejemplo, requiere una memoria de GPU significativa, hace costoso almacenar copias separadas del modelo y puede ocasionar un olvido catastrófico de las capacidades originales del modelo. Los métodos de <em>fine-tuning</em> eficiente en parámetros (<em>Parameter-Efficient Fine-Tuning</em> o PEFT) abordan estos problemas modificando solo un subconjunto pequeño de los parámetros del modelo, mientras que la mayor parte del modelo permanece congelada.</p> <p data-svelte-h="svelte-1m04tfd">El <em>fine-tuning</em> tradicional actualiza todos los parámetros del modelo durante el entrenamiento, lo cual resulta poco práctico para modelos grandes. Los métodos PEFT introducen enfoques para adaptar modelos utilizando una fracción mínima de parámetros entrenables, generalmente menos del 1% del tamaño original del modelo. Esta reducción dramática permite:</p> <ul data-svelte-h="svelte-1b3bd8"><li>Realizar <em>fine-tuning</em> en hardware de consumo con memoria de GPU limitada.</li> <li>Almacenar eficientemente múltiples adaptaciones de tareas específicas.</li> <li>Mejorar la generalización en escenarios con pocos datos.</li> <li>Entrenamientos y ciclos de iteración más rápidos.</li></ul> <h2 class="relative group"><a id="métodos-disponibles" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#métodos-disponibles"><span><svg class="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg></span></a> <span>Métodos Disponibles</span></h2> <p data-svelte-h="svelte-15g3b3m">En este módulo, se cubrirán dos métodos populares de PEFT:</p> <h3 class="relative group"><a id="1-lora-adaptación-de-bajo-rango" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#1-lora-adaptación-de-bajo-rango"><span><svg class="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg></span></a> <span>1️⃣ LoRA (Adaptación de Bajo Rango)</span></h3> <p data-svelte-h="svelte-17wuvwq">LoRA se ha convertido en el método PEFT más adoptado, ofreciendo una solución sofisticada para la adaptación eficiente de modelos. En lugar de modificar el modelo completo, <strong>LoRA inyecta matrices entrenables en las capas de atención del modelo.</strong> Este enfoque, por lo general, reduce los parámetros entrenables en aproximadamente un 90%, manteniendo un rendimiento comparable al <em>fine-tuning</em> completo. Exploraremos LoRA en la sección <a href="./lora_adapters">LoRA (Adaptación de Bajo Rango)</a>.</p> <h3 class="relative group"><a id="2-prompt-tuning" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#2-prompt-tuning"><span><svg class="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg></span></a> <span>2️⃣ Prompt Tuning</span></h3> <p data-svelte-h="svelte-1nzmha8">El <em>prompt tuning</em> ofrece un enfoque <strong>aún más ligero</strong> al <strong>añadir tokens entrenables a la entrada</strong> en lugar de modificar los pesos del modelo. Aunque es menos popular que LoRA, puede ser útil para adaptar rápidamente un modelo a nuevas tareas o dominios. Exploraremos el <em>prompt tuning</em> en la sección <a href="./prompt_tuning">Prompt Tuning</a>.</p> <h2 class="relative group"><a id="recursos" class="header-link block pr-1.5 text-lg no-hover:hidden with-hover:absolute with-hover:p-1.5 with-hover:opacity-0 with-hover:group-hover:opacity-100 with-hover:right-full" href="#recursos"><span><svg class="" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 256"><path d="M167.594 88.393a8.001 8.001 0 0 1 0 11.314l-67.882 67.882a8 8 0 1 1-11.314-11.315l67.882-67.881a8.003 8.003 0 0 1 11.314 0zm-28.287 84.86l-28.284 28.284a40 40 0 0 1-56.567-56.567l28.284-28.284a8 8 0 0 0-11.315-11.315l-28.284 28.284a56 56 0 0 0 79.196 79.197l28.285-28.285a8 8 0 1 0-11.315-11.314zM212.852 43.14a56.002 56.002 0 0 0-79.196 0l-28.284 28.284a8 8 0 1 0 11.314 11.314l28.284-28.284a40 40 0 0 1 56.568 56.567l-28.285 28.285a8 8 0 0 0 11.315 11.314l28.284-28.284a56.065 56.065 0 0 0 0-79.196z" fill="currentColor"></path></svg></span></a> <span>Recursos</span></h2> <ul data-svelte-h="svelte-1u1u4nw"><li><a href="https://huggingface.co/docs/peft" rel="nofollow">Documentación de PEFT</a></li> <li><a href="https://huggingface.co/papers/2106.09685" rel="nofollow">Artículo de LoRA</a></li> <li><a href="https://huggingface.co/papers/2305.14314" rel="nofollow">Artículo de QLoRA</a></li> <li><a href="https://huggingface.co/papers/2104.08691" rel="nofollow">Artículo de <em>Prompt Tuning</em></a></li> <li><a href="https://huggingface.co/blog/peft" rel="nofollow">Guía de PEFT en Hugging Face</a></li> <li><a href="https://www.philschmid.de/fine-tune-llms-in-2024-with-trl" rel="nofollow">Cómo hacer <em>Fine-Tuning</em> de LLMs en 2024 con Hugging Face</a></li> <li><a href="https://huggingface.co/docs/trl/index" rel="nofollow">TRL</a></li></ul> <a class="!text-gray-400 !no-underline text-sm flex items-center not-prose mt-4" href="https://github.com/huggingface/smol-course/blob/main/units/es/unit3/0.md" target="_blank"><svg class="mr-1" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M31,16l-7,7l-1.41-1.41L28.17,16l-5.58-5.59L24,9l7,7z"></path><path d="M1,16l7-7l1.41,1.41L3.83,16l5.58,5.59L8,23l-7-7z"></path><path d="M12.419,25.484L17.639,6.552l1.932,0.518L14.351,26.002z"></path></svg> <span data-svelte-h="svelte-zjs2n5"><span class="underline">Update</span> on GitHub</span></a> <p></p> | |
| <script> | |
| { | |
| __sveltekit_fiigkd = { | |
| assets: "/docs/smol-course/pr_296/es", | |
| base: "/docs/smol-course/pr_296/es", | |
| env: {} | |
| }; | |
| const element = document.currentScript.parentElement; | |
| const data = [null,null]; | |
| Promise.all([ | |
| import("/docs/smol-course/pr_296/es/_app/immutable/entry/start.cd6905d6.js"), | |
| import("/docs/smol-course/pr_296/es/_app/immutable/entry/app.d412b8f0.js") | |
| ]).then(([kit, app]) => { | |
| kit.start(app, element, { | |
| node_ids: [0, 10], | |
| data, | |
| form: null, | |
| error: null | |
| }); | |
| }); | |
| } | |
| </script> | |
Xet Storage Details
- Size:
- 15.1 kB
- Xet hash:
- 64addd76bf9d1b8b53ee1b161a4a2b46a1921eba1cc207492f997bf2a7b2af00
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.