Buckets:

rtrm's picture
download
raw
20.6 kB
import{s as oe,o as se}from"../chunks/scheduler.505acc25.js";import{S as re,i as le,e as V,s as l,c as d,h as ie,a as J,d as n,b as i,f as te,g as m,j as ce,k as ne,l as ue,m as s,n as p,o as c,q as de,t as u,p as f,r as me}from"../chunks/index.ccc5f2c1.js";import{C as pe,E as fe}from"../chunks/MermaidChart.svelte_svelte_type_style_lang.c4116545.js";import{C as $e}from"../chunks/CourseFloatingBanner.edb13094.js";import{Q as U}from"../chunks/Question.03127a79.js";import{F as ge}from"../chunks/FrameworkSwitchCourse.aac7137d.js";import{H as T}from"../chunks/Heading.666af0ac.js";function xe(H){let $,j,g,w,x,C,b,z,q,h,v,y;return $=new T({props:{title:"4. ¿Qué ocurre cuando instancias una de las clases TFAutoModelForXxx con un modelo del lenguaje preentrenado (como bert-base-uncased ) que corresponde a una tarea distinta de aquella para la que fue entrenado?",local:"4-qué-ocurre-cuando-instancias-una-de-las-clases-tfautomodelforxxx-con-un-modelo-del-lenguaje-preentrenado-como-bert-base-uncased--que-corresponde-a-una-tarea-distinta-de-aquella-para-la-que-fue-entrenado",headingTag:"h3"}}),g=new U({props:{choices:[{text:"Nada, pero recibes una advertencia.",explain:"Recibes una advertencia, pero eso no es todo."},{text:"La cabeza del modelo preentrenado se elimina y en su lugar se inserta una nueva cabeza adecuada para la tarea.",explain:"Correcto. Por ejemplo, cuando usamos <code>TFAutoModelForSequenceClassification</code> con <code>bert-base-uncased</code>, recibimos una advertencia al instanciar el modelo. La cabeza preentrenada no se puede utilizar para la tarea de clasificación de secuencias, por lo que es eliminada y se instancia una nueva cabeza con pesos aleatorios.",correct:!0},{text:"La cabeza del modelo preentrenado es eliminada",explain:"Se necesita hacer algo más, inténtalo de nuevo."},{text:"Nada, ya que el modelo se puede seguir ajustando para la otra tarea.",explain:"La cabeza del modelo preentrenado no fue entrenada para resolver esta tarea, ¡así que deberíamos eliminarla!"}]}}),x=new T({props:{title:"5. Los modelos TensorFlow de transformers ya son modelos Keras. ¿Qué ventajas ofrece esto?",local:"5-los-modelos-tensorflow-de-transformers-ya-son-modelos-keras-qué-ventajas-ofrece-esto",headingTag:"h3"}}),b=new U({props:{choices:[{text:"Los modelos funcionan directamente en una TPU.",explain:"¡Casi! Se necesitan unos pequeños cambios adicionales. Por ejemplo, es necesario ejecutar todo en un entorno <code>TPUStrategy</code>, incluyendo la inicialización del modelo."},{text:"Puede aprovechar los métodos existentes, como <code>compile()</code>, <code>fit()</code> y <code>predict()</code>.",explain:"¡Correcto! Una vez que tienes los datos, entrenar el modelo requiere muy poco esfuerzo.",correct:!0},{text:"Tienes la oportunidad de aprender Keras a la vez que transformadores.",explain:"Correcto, pero estamos buscando otra respuesta :)",correct:!0},{text:"Puede calcular fácilmente las métricas relacionadas con el dataset.",explain:"Keras nos ayuda con el entrenamiento y la evaluación del modelo, no con el cálculo de métricas relacionadas con el dataset."}]}}),q=new T({props:{title:"6. ¿Cómo puedes definir tu propia métrica personalizada?",local:"6-cómo-puedes-definir-tu-propia-métrica-personalizada",headingTag:"h3"}}),v=new U({props:{choices:[{text:"Creando una subclase de <code>tf.keras.metrics.Metric</code>.",explain:"¡Genial!",correct:!0},{text:"Utilizando la API funcional de Keras.",explain:"¡Inténtalo de nuevo!"},{text:"Utilizando una función cuya firma sea <code>metric_fn(y_true, y_pred)</code>.",explain:"¡Correcto!",correct:!0},{text:"Buscándolo en Google.",explain:"Esta no es la respuesta que estamos buscando, pero te podría ayudar a encontrarla.",correct:!0}]}}),{c(){d($.$$.fragment),j=l(),d(g.$$.fragment),w=l(),d(x.$$.fragment),C=l(),d(b.$$.fragment),z=l(),d(q.$$.fragment),h=l(),d(v.$$.fragment)},l(t){m($.$$.fragment,t),j=i(t),m(g.$$.fragment,t),w=i(t),m(x.$$.fragment,t),C=i(t),m(b.$$.fragment,t),z=i(t),m(q.$$.fragment,t),h=i(t),m(v.$$.fragment,t)},m(t,_){p($,t,_),s(t,j,_),p(g,t,_),s(t,w,_),p(x,t,_),s(t,C,_),p(b,t,_),s(t,z,_),p(q,t,_),s(t,h,_),p(v,t,_),y=!0},i(t){y||(u($.$$.fragment,t),u(g.$$.fragment,t),u(x.$$.fragment,t),u(b.$$.fragment,t),u(q.$$.fragment,t),u(v.$$.fragment,t),y=!0)},o(t){c($.$$.fragment,t),c(g.$$.fragment,t),c(x.$$.fragment,t),c(b.$$.fragment,t),c(q.$$.fragment,t),c(v.$$.fragment,t),y=!1},d(t){t&&(n(j),n(w),n(C),n(z),n(h)),f($,t),f(g,t),f(x,t),f(b,t),f(q,t),f(v,t)}}}function be(H){let $,j,g,w,x,C,b,z,q,h,v,y,t,_,P,S,k,E,A,L,F,N,Q,M;return $=new T({props:{title:"4. ¿Cuáles son las ventajas del método Dataset.map() ?",local:"4-cuáles-son-las-ventajas-del-método-datasetmap-",headingTag:"h3"}}),g=new U({props:{choices:[{text:"Los resultados de la función se almacenan en caché, por lo que no tardaremos nada en volver a ejecutar el código.",explain:"Esta es una de las grandes ventajas de este método. Aunque no es la única...",correct:!0},{text:"Puede aplicar multiprocesamiento para ir más rápido que si se aplicara la función a cada elemento del conjunto de datos.",explain:"Esta es una característica interesante de este método, ¡pero no es la única.",correct:!0},{text:"No carga todo el conjunto de datos en memoria, sino que guarda los resultados en cuanto se procesa un elemento.",explain:"Es una de las ventajas de este método, ¡pero hay más!",correct:!0}]}}),x=new T({props:{title:"5. ¿Qué significa padding dinámico?",local:"5-qué-significa-padding-dinámico",headingTag:"h3"}}),b=new U({props:{choices:[{text:"Es cuando se rellenan las entradas de cada lote con la longitud máxima de todo el conjunto de datos.",explain:"Sí que implica rellenar al crear el lote, pero no hasta la longitud máxima en todo el conjunto de datos."},{text:"Es cuando rellenas tus entradas cuando se crea el lote, a la longitud máxima de las frases de ese lote.",explain:'¡Correcto! La parte "dinámica" proviene del hecho de que el tamaño de cada lote se determina en el momento de la creación, y como resultado todos sus lotes pueden tener diferentes formas.',correct:!0},{text:"Es cuando se rellenan las entradas para que cada frase tenga el mismo número de tokens que la anterior en el conjunto de datos.",explain:"Incorrecto, no tiene sentido mirar el orden de las muestras del conjunto de datos ya que lo barajamos durante el entrenamiento."}]}}),q=new T({props:{title:"6. ¿Cuál es el objetivo de la función “collate”?",local:"6-cuál-es-el-objetivo-de-la-función-collate",headingTag:"h3"}}),v=new U({props:{choices:[{text:"Se asegura de que todas las secuencias del conjunto de datos tengan la misma longitud.",explain:'Una función "collate" está relacionada con el procesamiento de lotes individuales, no del conjunto de datos al completo. Además, estamos hablando de funciones "collate" genéricas, no <code>DataCollatorWithPadding</code> en especial.'},{text:"Combina todas las muestras del conjunto de datos en un lote.",explain:'¡Correcto! Puedes pasar una función "collate" como argumento a un <code>DataLoader</code>. Nosotros usamos la función <code>DataCollatorWithPadding</code>, que rellena todos los elementos de un lote para que tengan la misma longitud.',correct:!0},{text:"Preprocesa todo el conjunto de datos.",explain:'Eso sería una función de preprocesamiento, no una función "collate".'},{text:"Trunca las secuencias del conjunto de datos.",explain:'Una función "collate" está relacionada con el procesamiento de lotes individuales, no del conjunto de datos completo. Si quieres truncar, puedes utilizar el argumento <code>truncate</code> del <code>tokenizer</code>.'}]}}),t=new T({props:{title:"7. ¿Qué ocurre cuando instancias una de las clases AutoModelForXxx con un modelo del lenguaje preentrenado (como bert-base-uncased ) que corresponde a una tarea distinta de aquella para la que fue entrenado?",local:"7-qué-ocurre-cuando-instancias-una-de-las-clases-automodelforxxx-con-un-modelo-del-lenguaje-preentrenado-como-bert-base-uncased--que-corresponde-a-una-tarea-distinta-de-aquella-para-la-que-fue-entrenado",headingTag:"h3"}}),P=new U({props:{choices:[{text:"Nada, pero recibes una advertencia.",explain:"Recibes una advertencia, pero eso no es todo."},{text:"La cabeza del modelo preentrenado se elimina y en su lugar se inserta una nueva cabeza adecuada para la tarea.",explain:"Correcto. Por ejemplo, cuando usamos <code>AutoModelForSequenceClassification</code> con <code>bert-base-uncased</code>, recibimos una advertencia al instanciar el modelo. La cabeza preentrenada no se puede utilizar para la tarea de clasificación de secuencias, por lo que es eliminada y se instancia una nueva cabeza con pesos aleatorios.",correct:!0},{text:"La cabeza del modelo preentrenado es eliminada.",explain:"Se necesita hacer algo más, inténtalo de nuevo."},{text:"Nada, ya que el modelo se puede seguir ajustando para la otra tarea.",explain:"La cabeza del modelo preentrenado no fue entrenada para resolver esta tarea, ¡así que deberíamos eliminarla!"}]}}),k=new T({props:{title:"8. ¿Para qué sirve TrainingArguments ?",local:"8-para-qué-sirve-trainingarguments-",headingTag:"h3"}}),A=new U({props:{choices:[{text:"Contiene todos los hiperparámetros utilizados para el entrenamiento y la evaluación con <code>Trainer</code>.",explain:"¡Correcto!",correct:!0},{text:"Especifica el tamaño del modelo.",explain:"El tamaño del modelo viene definido por la configuración del modelo, no por la clase <code>TrainingArguments</code>."},{text:"Solo contiene los hiperparámetros utilizados para la evaluación.",explain:"En el ejemplo especificamos dónde se guardarán el modelo y sus checkpoints. ¡Inténtalo de nuevo!"},{text:"Solo contiene los hiperparámetros utilizados para el entrenamiento.",explain:"En el ejemplo también utilizamos <code>evaluation_strategy</code>, que afecta a la evaluación. ¡Inténtalo de nuevo!"}]}}),F=new T({props:{title:"9. ¿Por qué deberías utilizar la librería 🤗 Accelerate?",local:"9-por-qué-deberías-utilizar-la-librería--accelerate",headingTag:"h3"}}),Q=new U({props:{choices:[{text:"Facilita acceso a modelos más rápidos.",explain:"No, la librería 🤗 Accelerate library no proporciona modelos."},{text:"Proporciona una API de alto nivel para que no tenga que implementar mi propio bucle de entrenamiento.",explain:"Eso es lo que hicimos con <code>Trainer</code>, no con la librería 🤗 Accelerate. ¡Vuelve a intentarlo!"},{text:"Hace que nuestros bucles de entrenamiento funcionen con estrategias distribuidas.",explain:"¡Correcto! Con 🤗 Accelerate, tus bucles de entrenamiento funcionarán para múltiples GPUs y TPUs.",correct:!0},{text:"Ofrece más funciones de optimización.",explain:"No, la librería 🤗 Accelerate no proporciona ninguna función de optimización."}]}}),{c(){d($.$$.fragment),j=l(),d(g.$$.fragment),w=l(),d(x.$$.fragment),C=l(),d(b.$$.fragment),z=l(),d(q.$$.fragment),h=l(),d(v.$$.fragment),y=l(),d(t.$$.fragment),_=l(),d(P.$$.fragment),S=l(),d(k.$$.fragment),E=l(),d(A.$$.fragment),L=l(),d(F.$$.fragment),N=l(),d(Q.$$.fragment)},l(a){m($.$$.fragment,a),j=i(a),m(g.$$.fragment,a),w=i(a),m(x.$$.fragment,a),C=i(a),m(b.$$.fragment,a),z=i(a),m(q.$$.fragment,a),h=i(a),m(v.$$.fragment,a),y=i(a),m(t.$$.fragment,a),_=i(a),m(P.$$.fragment,a),S=i(a),m(k.$$.fragment,a),E=i(a),m(A.$$.fragment,a),L=i(a),m(F.$$.fragment,a),N=i(a),m(Q.$$.fragment,a)},m(a,r){p($,a,r),s(a,j,r),p(g,a,r),s(a,w,r),p(x,a,r),s(a,C,r),p(b,a,r),s(a,z,r),p(q,a,r),s(a,h,r),p(v,a,r),s(a,y,r),p(t,a,r),s(a,_,r),p(P,a,r),s(a,S,r),p(k,a,r),s(a,E,r),p(A,a,r),s(a,L,r),p(F,a,r),s(a,N,r),p(Q,a,r),M=!0},i(a){M||(u($.$$.fragment,a),u(g.$$.fragment,a),u(x.$$.fragment,a),u(b.$$.fragment,a),u(q.$$.fragment,a),u(v.$$.fragment,a),u(t.$$.fragment,a),u(P.$$.fragment,a),u(k.$$.fragment,a),u(A.$$.fragment,a),u(F.$$.fragment,a),u(Q.$$.fragment,a),M=!0)},o(a){c($.$$.fragment,a),c(g.$$.fragment,a),c(x.$$.fragment,a),c(b.$$.fragment,a),c(q.$$.fragment,a),c(v.$$.fragment,a),c(t.$$.fragment,a),c(P.$$.fragment,a),c(k.$$.fragment,a),c(A.$$.fragment,a),c(F.$$.fragment,a),c(Q.$$.fragment,a),M=!1},d(a){a&&(n(j),n(w),n(C),n(z),n(h),n(y),n(_),n(S),n(E),n(L),n(N)),f($,a),f(g,a),f(x,a),f(b,a),f(q,a),f(v,a),f(t,a),f(P,a),f(k,a),f(A,a),f(F,a),f(Q,a)}}}function qe(H){let $,j,g,w,x,C,b,z,q,h,v,y,t,_="A ver qué has aprendido en este capítulo:",P,S,k,E,A,L,F,N,Q,M,a,r,X,I,B,K,R,O,G,W;x=new ge({props:{fw:H[0]}}),b=new pe({props:{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"}}),q=new T({props:{title:"Quiz de final de capítulo",local:"quiz-de-final-de-capítulo",headingTag:"h1"}}),v=new $e({props:{chapter:3,classNames:"absolute z-10 right-0 top-0"}}),S=new T({props:{title:"1. El dataset emotion contiene mensajes de Twitter etiquetados con emociones. Búscalo en el Hub , y lee la tarjeta del dataset. ¿Cuál de estas no es una de sus emociones básicas?",local:"1-el-dataset-emotion-contiene-mensajes-de-twitter-etiquetados-con-emociones-búscalo-en-el-hub--y-lee-la-tarjeta-del-dataset-cuál-de-estas-no-es-una-de-sus-emociones-básicas",headingTag:"h3"}}),E=new U({props:{choices:[{text:"Alegría",explain:"Inténtalo de nuevo: ¡esta emoción sí está presente en ese dataset!"},{text:"Amor",explain:"Inténtalo de nuevo: ¡esta emoción sí está presente en ese dataset!"},{text:"Confusión",explain:"¡Correcto! La confusión no es una de las seis emociones básicas.",correct:!0},{text:"Sorpresa",explain:"¡Sorpresa! Inténtalo de nuevo."}]}}),L=new T({props:{title:"2. Busca el dataset ar_sarcasm en el Hub . ¿Con qué tarea es compatible?",local:"2-busca-el-dataset-arsarcasm-en-el-hub--con-qué-tarea-es-compatible",headingTag:"h3"}}),N=new U({props:{choices:[{text:"Clasificación de sentimientos",explain:"¡Correcto! Dale las gracias a las etiquetas.",correct:!0},{text:"Traducción automática",explain:"No es correcto, echa otro vistazo a la <a href='https://huggingface.co/datasets/ar_sarcasm'>tarjeta del dataset</a>."},{text:"Reconocimiento de entidades nombradas",explain:"No es correcto, echa otro vistazo a la <a href='https://huggingface.co/datasets/ar_sarcasm'>tarjeta del dataset</a>."},{text:"Responder preguntas",explain:"No es correcto, echa otro vistazo a la <a href='https://huggingface.co/datasets/ar_sarcasm'>tarjeta del dataset</a>."}]}}),M=new T({props:{title:"3. ¿Cómo se procesan un par de frases según el modelo BERT?",local:"3-cómo-se-procesan-un-par-de-frases-según-el-modelo-bert",headingTag:"h3"}}),r=new U({props:{choices:[{text:"tokens_frase_1 [SEP] tokens_frase_2",explain:"Se necesita un token especial <code>[SEP]</code> para separar las dos frases, ¡pero falta algo más!"},{text:"[CLS] tokens_frase_1 tokens_frase_2",explain:"Se necesita un token especial <code>[CLS]</code> al principio, ¡pero falta algo más!"},{text:"[CLS] tokens_frase_1 [SEP] tokens_frase_2 [SEP]",explain:"¡Correcto!",correct:!0},{text:"[CLS] tokens_frase_1 [SEP] tokens_frase_2",explain:"Se necesita un token especial <code>[CLS]</code> al principio y un token especial <code>[SEP]</code> para separar las dos frases, ¡pero falta algo más!"}]}});const Z=[be,xe],D=[];function ee(e,o){return e[0]==="pt"?0:1}return I=ee(H),B=D[I]=Z[I](H),R=new fe({props:{source:"https://github.com/huggingface/course/blob/main/chapters/es/chapter3/6.mdx"}}),{c(){$=V("meta"),j=l(),g=V("p"),w=l(),d(x.$$.fragment),C=l(),d(b.$$.fragment),z=l(),d(q.$$.fragment),h=l(),d(v.$$.fragment),y=l(),t=V("p"),t.textContent=_,P=l(),d(S.$$.fragment),k=l(),d(E.$$.fragment),A=l(),d(L.$$.fragment),F=l(),d(N.$$.fragment),Q=l(),d(M.$$.fragment),a=l(),d(r.$$.fragment),X=l(),B.c(),K=l(),d(R.$$.fragment),O=l(),G=V("p"),this.h()},l(e){const o=ie("svelte-u9bgzb",document.head);$=J(o,"META",{name:!0,content:!0}),o.forEach(n),j=i(e),g=J(e,"P",{}),te(g).forEach(n),w=i(e),m(x.$$.fragment,e),C=i(e),m(b.$$.fragment,e),z=i(e),m(q.$$.fragment,e),h=i(e),m(v.$$.fragment,e),y=i(e),t=J(e,"P",{"data-svelte-h":!0}),ce(t)!=="svelte-1i7hifw"&&(t.textContent=_),P=i(e),m(S.$$.fragment,e),k=i(e),m(E.$$.fragment,e),A=i(e),m(L.$$.fragment,e),F=i(e),m(N.$$.fragment,e),Q=i(e),m(M.$$.fragment,e),a=i(e),m(r.$$.fragment,e),X=i(e),B.l(e),K=i(e),m(R.$$.fragment,e),O=i(e),G=J(e,"P",{}),te(G).forEach(n),this.h()},h(){ne($,"name","hf:doc:metadata"),ne($,"content",ve)},m(e,o){ue(document.head,$),s(e,j,o),s(e,g,o),s(e,w,o),p(x,e,o),s(e,C,o),p(b,e,o),s(e,z,o),p(q,e,o),s(e,h,o),p(v,e,o),s(e,y,o),s(e,t,o),s(e,P,o),p(S,e,o),s(e,k,o),p(E,e,o),s(e,A,o),p(L,e,o),s(e,F,o),p(N,e,o),s(e,Q,o),p(M,e,o),s(e,a,o),p(r,e,o),s(e,X,o),D[I].m(e,o),s(e,K,o),p(R,e,o),s(e,O,o),s(e,G,o),W=!0},p(e,[o]){const ae={};o&1&&(ae.fw=e[0]),x.$set(ae);let Y=I;I=ee(e),I!==Y&&(me(),c(D[Y],1,1,()=>{D[Y]=null}),de(),B=D[I],B||(B=D[I]=Z[I](e),B.c()),u(B,1),B.m(K.parentNode,K))},i(e){W||(u(x.$$.fragment,e),u(b.$$.fragment,e),u(q.$$.fragment,e),u(v.$$.fragment,e),u(S.$$.fragment,e),u(E.$$.fragment,e),u(L.$$.fragment,e),u(N.$$.fragment,e),u(M.$$.fragment,e),u(r.$$.fragment,e),u(B),u(R.$$.fragment,e),W=!0)},o(e){c(x.$$.fragment,e),c(b.$$.fragment,e),c(q.$$.fragment,e),c(v.$$.fragment,e),c(S.$$.fragment,e),c(E.$$.fragment,e),c(L.$$.fragment,e),c(N.$$.fragment,e),c(M.$$.fragment,e),c(r.$$.fragment,e),c(B),c(R.$$.fragment,e),W=!1},d(e){e&&(n(j),n(g),n(w),n(C),n(z),n(h),n(y),n(t),n(P),n(k),n(A),n(F),n(Q),n(a),n(X),n(K),n(O),n(G)),n($),f(x,e),f(b,e),f(q,e),f(v,e),f(S,e),f(E,e),f(L,e),f(N,e),f(M,e),f(r,e),D[I].d(e),f(R,e)}}}const ve='{"title":"Quiz de final de capítulo","local":"quiz-de-final-de-capítulo","sections":[{"title":"1. El dataset emotion contiene mensajes de Twitter etiquetados con emociones. Búscalo en el Hub , y lee la tarjeta del dataset. ¿Cuál de estas no es una de sus emociones básicas?","local":"1-el-dataset-emotion-contiene-mensajes-de-twitter-etiquetados-con-emociones-búscalo-en-el-hub--y-lee-la-tarjeta-del-dataset-cuál-de-estas-no-es-una-de-sus-emociones-básicas","sections":[],"depth":3},{"title":"2. Busca el dataset ar_sarcasm en el Hub . ¿Con qué tarea es compatible?","local":"2-busca-el-dataset-arsarcasm-en-el-hub--con-qué-tarea-es-compatible","sections":[],"depth":3},{"title":"3. ¿Cómo se procesan un par de frases según el modelo BERT?","local":"3-cómo-se-procesan-un-par-de-frases-según-el-modelo-bert","sections":[],"depth":3},{"title":"4. ¿Cuáles son las ventajas del método Dataset.map() ?","local":"4-cuáles-son-las-ventajas-del-método-datasetmap-","sections":[],"depth":3},{"title":"5. ¿Qué significa padding dinámico?","local":"5-qué-significa-padding-dinámico","sections":[],"depth":3},{"title":"6. ¿Cuál es el objetivo de la función “collate”?","local":"6-cuál-es-el-objetivo-de-la-función-collate","sections":[],"depth":3},{"title":"7. ¿Qué ocurre cuando instancias una de las clases AutoModelForXxx con un modelo del lenguaje preentrenado (como bert-base-uncased ) que corresponde a una tarea distinta de aquella para la que fue entrenado?","local":"7-qué-ocurre-cuando-instancias-una-de-las-clases-automodelforxxx-con-un-modelo-del-lenguaje-preentrenado-como-bert-base-uncased--que-corresponde-a-una-tarea-distinta-de-aquella-para-la-que-fue-entrenado","sections":[],"depth":3},{"title":"8. ¿Para qué sirve TrainingArguments ?","local":"8-para-qué-sirve-trainingarguments-","sections":[],"depth":3},{"title":"9. ¿Por qué deberías utilizar la librería 🤗 Accelerate?","local":"9-por-qué-deberías-utilizar-la-librería--accelerate","sections":[],"depth":3},{"title":"4. ¿Qué ocurre cuando instancias una de las clases TFAutoModelForXxx con un modelo del lenguaje preentrenado (como bert-base-uncased ) que corresponde a una tarea distinta de aquella para la que fue entrenado?","local":"4-qué-ocurre-cuando-instancias-una-de-las-clases-tfautomodelforxxx-con-un-modelo-del-lenguaje-preentrenado-como-bert-base-uncased--que-corresponde-a-una-tarea-distinta-de-aquella-para-la-que-fue-entrenado","sections":[],"depth":3},{"title":"5. Los modelos TensorFlow de transformers ya son modelos Keras. ¿Qué ventajas ofrece esto?","local":"5-los-modelos-tensorflow-de-transformers-ya-son-modelos-keras-qué-ventajas-ofrece-esto","sections":[],"depth":3},{"title":"6. ¿Cómo puedes definir tu propia métrica personalizada?","local":"6-cómo-puedes-definir-tu-propia-métrica-personalizada","sections":[],"depth":3}],"depth":1}';function _e(H,$,j){let g="pt";return se(()=>{const w=new URLSearchParams(window.location.search);j(0,g=w.get("fw")||"pt")}),[g]}class Pe extends re{constructor($){super(),le(this,$,_e,qe,oe,{})}}export{Pe as component};

Xet Storage Details

Size:
20.6 kB
·
Xet hash:
b9a5af0681259e905af57d92c0291cb6c82357184d39dd18ede9cf4f7b4c1069

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.