{"id":26804,"date":"2019-12-04T21:20:00","date_gmt":"2019-12-04T21:20:00","guid":{"rendered":"https:\/\/building.nubank.com\/introducing-fklearn-nubanks-machine-learning-library-part-ii\/"},"modified":"2024-03-20T17:45:49","modified_gmt":"2024-03-20T17:45:49","slug":"apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii","status":"publish","type":"post","link":"https:\/\/building.nubank.com\/pt-br\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\/","title":{"rendered":"Apresentando fklearn: A biblioteca de aprendizado de m\u00e1quina do Nubank (Parte II)"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><em>Leia a Parte I da s\u00e9rie <\/em><a href=\"https:\/\/building.nubank.com\/introducing-fklearn-nubanks-machine-learning-library-part-i-2\/\"><em>aqui<\/em><\/a><em>.<\/em><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Na primeira parte dessa s\u00e9rie, falamos sobre os princ\u00edpios da fklearn e como ela pode ser \u00fatil para construir pipelines de aprendizado de m\u00e1quina usando fun\u00e7\u00f5es puras. No entanto, os benef\u00edcios mais significativos do uso da fklearn surgem ao fazer an\u00e1lise e valida\u00e7\u00e3o de modelos, como veremos a seguir.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Valida\u00e7\u00e3o extens\u00edvel<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Para modelos que entram em produ\u00e7\u00e3o, a valida\u00e7\u00e3o geralmente exige muito mais do que apenas descobrir o valor de alguma m\u00e9trica em um conjunto de valida\u00e7\u00e3o ou comparar uma m\u00e9trica com um benchmark. Muitas vezes queremos responder a perguntas como:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Como esperamos que o modelo funcione ao longo do tempo, como seis meses ap\u00f3s ter sido treinado?<\/li>\n\n\n\n<li>Mais dados ajudariam a melhorar o desempenho?<\/li>\n\n\n\n<li>Com que frequ\u00eancia devo retrein\u00e1-lo?<\/li>\n\n\n\n<li>\u00c9 melhor usar mais dados ou apenas dados recentes?<\/li>\n\n\n\n<li>Ele funciona igualmente bem em todos os segmentos de usu\u00e1rios?<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Todas essas perguntas podem parecer muito diferentes, mas podem ser respondidas pelo mesmo algoritmo de valida\u00e7\u00e3o de modelo generalizado.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Algoritmo de valida\u00e7\u00e3o de modelo generalizado do fklearn: Primeiro, os dados s\u00e3o divididos em partes, uma fun\u00e7\u00e3o de treinamento \u00e9 aplicada a algum subconjunto de dados, as previs\u00f5es s\u00e3o feitas em outro subconjunto e, em seguida, uma fun\u00e7\u00e3o de avalia\u00e7\u00e3o \u00e9 aplicada \u00e0s previs\u00f5es.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Na fklearn, esse algoritmo \u00e9 implementado pela fun\u00e7\u00e3o validadora:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A <strong>fun\u00e7\u00e3o <\/strong><strong><em>validator<\/em><\/strong> em fklearn (dentro de fklearn.validation.validator) implementa o algoritmo de valida\u00e7\u00e3o generalizado descrito aqui.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>A fun\u00e7\u00e3o<strong> <\/strong><strong><em>train_fn<\/em><\/strong> \u00e9 de aprendizagem, exatamente como definimos na \u00faltima postagem do blog.<\/li>\n\n\n\n<li>A fun\u00e7\u00e3o <strong><em>split_fn<\/em><\/strong> controla como os dados ser\u00e3o divididos em conjuntos de treinamento e teste. Ela recebe <em>DataFrames<\/em> e retorna listas de \u00edndices de treinamento e teste.<\/li>\n\n\n\n<li>A fun\u00e7\u00e3o <strong><em>eval_fn<\/em><\/strong> define quais m\u00e9tricas ser\u00e3o computadas nos conjuntos de teste. Mais sobre fun\u00e7\u00f5es de avalia\u00e7\u00e3o posteriormente.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">O validador retorna um conjunto de registros contendo os resultados de todas as avalia\u00e7\u00f5es feitas nos conjuntos de teste. A an\u00e1lise pode ent\u00e3o ser feita extraindo os dados desses registros (a fklearn fornece fun\u00e7\u00f5es auxiliares para fazer isso).<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Simplesmente <strong>trocando<\/strong> as fun\u00e7\u00f5es de divis\u00e3o e avalia\u00e7\u00e3o, podemos simular e avaliar muitos <strong>cen\u00e1rios da vida real<\/strong> diferentes, o que nos ajuda a responder a essas quest\u00f5es.&nbsp;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Vejamos um exemplo, usando a fun\u00e7\u00e3o de aprendizagem (<em>learner<\/em>) que definimos na Parte 1, quando tentamos responder a estas duas quest\u00f5es:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Temos dois segmentos de usu\u00e1rios diferentes, A e B. Qual a diferen\u00e7a de desempenho do modelo entre os dois segmentos?<\/li>\n\n\n\n<li>Esperamos que este modelo continue funcionando por alguns meses ap\u00f3s ser treinado. Qual \u00e9 a redu\u00e7\u00e3o de desempenho esperada 3, 6 ou 9 meses ap\u00f3s o treinamento?<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">Um exemplo completo de treinamento e avalia\u00e7\u00e3o.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Vamos examinar este exemplo mais detalhadamente.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/bit.ly\/jobs-at-nu\">Confira nossas oportunidades de trabalho&nbsp;<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Fun\u00e7\u00f5es de divis\u00e3o<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">No exemplo acima, ap\u00f3s definirmos a fun\u00e7\u00e3o de aprendizagem, definimos duas fun\u00e7\u00f5es de divis\u00e3o:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Uma <strong>fun\u00e7\u00e3o de divis\u00e3o de valida\u00e7\u00e3o cruzada K-fold<\/strong>. Ela divide os dados aleatoriamente em k conjuntos separados, e \u00e9 utilizada para realizar valida\u00e7\u00e3o cruzada padr\u00e3o. A valida\u00e7\u00e3o cruzada \u00e9 \u00fatil para obter uma estimativa b\u00e1sica do desempenho da generaliza\u00e7\u00e3o do modelo ao mesmo tempo em que ele \u00e9 treinado.<\/li>\n\n\n\n<li>Uma <strong>fun\u00e7\u00e3o de divis\u00e3o de valida\u00e7\u00e3o de estabilidade<\/strong>. Ela funciona dividindo os dados com base no par\u00e2metro <em>time_column<\/em>. O modelo ser\u00e1 treinado usando dados at\u00e9 <em>training_time_limit<\/em>, e validado na divis\u00e3o mensal de dados depois disso. A avalia\u00e7\u00e3o da estabilidade \u00e9 \u00fatil para estimar como o modelo ir\u00e1 generalizar depois de um tempo, al\u00e9m do per\u00edodo de treinamento.<\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\">A fklearn vem pr\u00e9-empacotada com muitas fun\u00e7\u00f5es de divis\u00e3o para casos de uso comuns (voc\u00ea pode encontrar uma lista completa e descri\u00e7\u00f5es de quando elas s\u00e3o \u00fateis <a href=\"https:\/\/fklearn.readthedocs.io\/en\/latest\/api.html#splitters-fklearn-validation-splitters\">aqui<\/a>). A maioria das fun\u00e7\u00f5es de divis\u00e3o s\u00e3o projetadas para simular situa\u00e7\u00f5es da vida real, onde normalmente os modelos s\u00e3o treinados com dados de um per\u00edodo de tempo, mas aplicados no futuro. A valida\u00e7\u00e3o cruzada simples muitas vezes \u00e9 insuficiente para modelos reais.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Avalia\u00e7\u00e3o personaliz\u00e1vel<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Muitas vezes isso surge na avalia\u00e7\u00e3o de modelos: m\u00e9tricas \u00fanicas e globais muitas vezes n\u00e3o contam a hist\u00f3ria completa. Podemos querer isolar os efeitos da ordena\u00e7\u00e3o e calibra\u00e7\u00e3o do modelo ou examinar o desempenho em subgrupos espec\u00edficos de nossa popula\u00e7\u00e3o. Tamb\u00e9m podemos estar interessados na evolu\u00e7\u00e3o de uma m\u00e9trica espec\u00edfica, em vez de apenas numa estimativa pontual.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Para isso, precisamos avaliar simultaneamente m\u00faltiplas m\u00e9tricas, divididas em dimens\u00f5es (por exemplo: tempo e segmento de cliente). A fklearn possibilita isso ao nos permitir definir \u201c\u00e1rvores de avalia\u00e7\u00e3o\u201d, combinando fun\u00e7\u00f5es de avalia\u00e7\u00e3o individuais. Olhando novamente para o nosso exemplo, veja como definimos a fun\u00e7\u00e3o de avalia\u00e7\u00e3o:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Exemplo de defini\u00e7\u00e3o de uma \u00e1rvore de avalia\u00e7\u00e3o.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Esse trecho de c\u00f3digo leva \u00e0 \u00e1rvore de avalia\u00e7\u00e3o mostrada abaixo:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Representa\u00e7\u00e3o em \u00e1rvore da fun\u00e7\u00e3o de avalia\u00e7\u00e3o definida acima.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Depois que <em>final_eval_fn<\/em> \u00e9 aplicada aos dados, toda a \u00e1rvore de avalia\u00e7\u00e3o \u00e9 executada, e todos os resultados s\u00e3o retornados no registro. Isso significa que as correla\u00e7\u00f5es R2 e de Spearman ser\u00e3o calculadas primeiro para todos, e depois separadamente para cada segmento de usu\u00e1rio. Essas \u201c\u00e1rvores de avalia\u00e7\u00e3o\u201d podem ser muito poderosas, permitindo que os cientistas de dados automatizem an\u00e1lises recorrentes.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Analisando resultados<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Como voc\u00ea deve ter notado, a maioria das opera\u00e7\u00f5es da fklearn retorna <strong>registros<\/strong>. Esses registros concentram informa\u00e7\u00f5es valiosas, sejam par\u00e2metros de modelo, metadados de conjuntos de dados ou resultados de valida\u00e7\u00e3o. A fklearn pode ser muito detalhada com os registros, assim como nos arrependemos de n\u00e3o salvar as informa\u00e7\u00f5es com frequ\u00eancia.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A fklearn tamb\u00e9m fornece fun\u00e7\u00f5es \u00fateis para extrair dados desses registros (eles podem ficar enormes), e \u00e9 f\u00e1cil criar gr\u00e1ficos de avalia\u00e7\u00e3o usando apenas os registros. Isso nos permite criar um c\u00f3digo de avalia\u00e7\u00e3o gen\u00e9rico que recebe registros de execu\u00e7\u00f5es de treinamento e gera pain\u00e9is com o desempenho do modelo, agilizando o processo de itera\u00e7\u00e3o. Aqui est\u00e1 um exemplo de extra\u00e7\u00e3o de dados dos registros:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Exemplo de uso dos extratores da fklearn para obter resultados de registros.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Gr\u00e1fico da curva de estabilidade da amostra, ap\u00f3s extrair os dados dos registros. Ele mostra o desempenho do modelo (correla\u00e7\u00e3o de Spearman entre previs\u00e3o e meta) ao longo do tempo, dividido por segmento. Tamb\u00e9m seria poss\u00edvel plotar a R2 a partir dos mesmos dados.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Felicidade funcional<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Como uma observa\u00e7\u00e3o final sobre o assunto valida\u00e7\u00e3o, observe que a fun\u00e7\u00e3o de aprendizagem que definimos ser\u00e1 usada repetidamente dentro dessas chamadas do validador, treinando v\u00e1rios modelos. Ficamos tranquilos em saber que \u00e9 uma fun\u00e7\u00e3o pura, ent\u00e3o nada que aconte\u00e7a dentro da valida\u00e7\u00e3o pode alterar a defini\u00e7\u00e3o do nosso modelo. Al\u00e9m disso, ao validar nosso modelo, todas as etapas do nosso pipeline est\u00e3o sendo aplicadas de forma consistente a todos os datafolds. <strong>Em \u00faltima an\u00e1lise, isso significa que o nosso modelo final, que vai para produ\u00e7\u00e3o, corresponde com precis\u00e3o aos modelos que passam por todos esses cen\u00e1rios de valida\u00e7\u00e3o.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Isso vale para <strong>ajustes<\/strong> ou <strong>sele\u00e7\u00e3o de recursos<\/strong>. Para ambos, a fklearn fornece fun\u00e7\u00f5es com ideia semelhante ao validador: voc\u00ea define como dividir os dados, como avaliar o desempenho do modelo e reutilizar a fun\u00e7\u00e3o de aprendizagem.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Qual \u00e9 o pr\u00f3ximo passo?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Esta postagem conclui nossa breve introdu\u00e7\u00e3o \u00e0 biblioteca fklearn. Para mais exemplos dos recursos de valida\u00e7\u00e3o de modelo da fklearn e outras ferramentas poderosas, verifique a documenta\u00e7\u00e3o<a href=\"https:\/\/fklearn.readthedocs.io\/en\/latest\/examples\/regression.html#Avaliar\">aqui<\/a>. Tamb\u00e9m esperamos que isso deixe voc\u00ea animado para<a href=\"https:\/\/github.com\/nubank\/fklearn\">tentar aprender fklearn sozinho<\/a>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/bit.ly\/jobs-at-nu\">Confira nossas oportunidades de trabalho&nbsp;<\/a><\/p>\n\n\n","protected":false},"excerpt":{"rendered":"<p>Benef\u00edcios de usar a fklearn para fazer an\u00e1lises e valida\u00e7\u00e3o de modelos<\/p>\n","protected":false},"author":178110060,"featured_media":21626,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_wpcom_ai_launchpad_first_post":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[2503,2502],"tags":[2504,3078,2540],"class_list":["post-26804","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-data-analytics","category-data-science-machine-learning-pt-br","tag-ciencia-de-dados","tag-fklearn-pt-br","tag-machine-learning-pt-br"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Fklearn: Nubank\u2019s machine learning library (Part II) - Building Nubank<\/title>\n<meta name=\"description\" content=\"Benef\u00edcios de usar a fklearn para fazer an\u00e1lises e valida\u00e7\u00e3o de modelos\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/building.nubank.com\/pt-br\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Fklearn: Nubank\u2019s machine learning library (Part II) - Building Nubank\" \/>\n<meta property=\"og:description\" content=\"Benef\u00edcios de usar a fklearn para fazer an\u00e1lises e valida\u00e7\u00e3o de modelos\" \/>\n<meta property=\"og:url\" content=\"https:\/\/building.nubank.com\/pt-br\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\/\" \/>\n<meta property=\"og:site_name\" content=\"Building Nubank\" \/>\n<meta property=\"article:published_time\" content=\"2019-12-04T21:20:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-03-20T17:45:49+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/i0.wp.com\/building.nubank.com\/wp-content\/uploads\/2020\/04\/fklearn-nubank-machine-learning-library-Header.jpg?fit=1440%2C600&ssl=1\" \/>\n\t<meta property=\"og:image:width\" content=\"1440\" \/>\n\t<meta property=\"og:image:height\" content=\"600\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Lucas Estevam - Director of Data Science\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Lucas Estevam - Director of Data Science\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"14 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\\\/\"},\"author\":{\"name\":\"Lucas Estevam - Director of Data Science\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/#\\\/schema\\\/person\\\/56d8f32ed78416e0568e09af1be3f6de\"},\"headline\":\"Apresentando fklearn: A biblioteca de aprendizado de m\u00e1quina do Nubank (Parte II)\",\"datePublished\":\"2019-12-04T21:20:00+00:00\",\"dateModified\":\"2024-03-20T17:45:49+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\\\/\"},\"wordCount\":1371,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/building.nubank.com\\\/wp-content\\\/uploads\\\/2020\\\/04\\\/fklearn-nubank-machine-learning-library-Header.jpg?fit=1440%2C600&ssl=1\",\"keywords\":[\"ci\u00eancia de dados\",\"fklearn\",\"machine learning\"],\"articleSection\":[\"Data &amp; Analytics\",\"Data science &amp; Machine Learning\"],\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\\\/\",\"url\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\\\/\",\"name\":\"Fklearn: Nubank\u2019s machine learning library (Part II) - Building Nubank\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/i0.wp.com\\\/building.nubank.com\\\/wp-content\\\/uploads\\\/2020\\\/04\\\/fklearn-nubank-machine-learning-library-Header.jpg?fit=1440%2C600&ssl=1\",\"datePublished\":\"2019-12-04T21:20:00+00:00\",\"dateModified\":\"2024-03-20T17:45:49+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/#\\\/schema\\\/person\\\/56d8f32ed78416e0568e09af1be3f6de\"},\"description\":\"Benef\u00edcios de usar a fklearn para fazer an\u00e1lises e valida\u00e7\u00e3o de modelos\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\\\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\\\/#primaryimage\",\"url\":\"https:\\\/\\\/i0.wp.com\\\/building.nubank.com\\\/wp-content\\\/uploads\\\/2020\\\/04\\\/fklearn-nubank-machine-learning-library-Header.jpg?fit=1440%2C600&ssl=1\",\"contentUrl\":\"https:\\\/\\\/i0.wp.com\\\/building.nubank.com\\\/wp-content\\\/uploads\\\/2020\\\/04\\\/fklearn-nubank-machine-learning-library-Header.jpg?fit=1440%2C600&ssl=1\",\"width\":1440,\"height\":600},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Apresentando fklearn: A biblioteca de aprendizado de m\u00e1quina do Nubank (Parte II)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/#website\",\"url\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/\",\"name\":\"Building Nubank\",\"description\":\"We make the extraordinary happen\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/#\\\/schema\\\/person\\\/56d8f32ed78416e0568e09af1be3f6de\",\"name\":\"Lucas Estevam - Director of Data Science\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/51820345b99d37bf5757c8974c4306c1f6415116c9d053613f7abc8afb30f77a?s=96&d=identicon&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/51820345b99d37bf5757c8974c4306c1f6415116c9d053613f7abc8afb30f77a?s=96&d=identicon&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/51820345b99d37bf5757c8974c4306c1f6415116c9d053613f7abc8afb30f77a?s=96&d=identicon&r=g\",\"caption\":\"Lucas Estevam - Director of Data Science\"},\"description\":\"Lucas is the Director of Data Science at Nubank, where he's worked for the past four years. He currently leads multi-functional teams of Data Scientists, Analysts, and Engineers, focusing mainly on improving Nubank\u2019s credit business by using data in innovative ways. He studied Computer Engineering and Operations Research.\",\"url\":\"https:\\\/\\\/building.nubank.com\\\/pt-br\\\/author\\\/estevam\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Fklearn: Nubank\u2019s machine learning library (Part II) - Building Nubank","description":"Benef\u00edcios de usar a fklearn para fazer an\u00e1lises e valida\u00e7\u00e3o de modelos","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/building.nubank.com\/pt-br\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\/","og_locale":"pt_BR","og_type":"article","og_title":"Fklearn: Nubank\u2019s machine learning library (Part II) - Building Nubank","og_description":"Benef\u00edcios de usar a fklearn para fazer an\u00e1lises e valida\u00e7\u00e3o de modelos","og_url":"https:\/\/building.nubank.com\/pt-br\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\/","og_site_name":"Building Nubank","article_published_time":"2019-12-04T21:20:00+00:00","article_modified_time":"2024-03-20T17:45:49+00:00","og_image":[{"width":1440,"height":600,"url":"https:\/\/i0.wp.com\/building.nubank.com\/wp-content\/uploads\/2020\/04\/fklearn-nubank-machine-learning-library-Header.jpg?fit=1440%2C600&ssl=1","type":"image\/jpeg"}],"author":"Lucas Estevam - Director of Data Science","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"Lucas Estevam - Director of Data Science","Est. tempo de leitura":"14 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/building.nubank.com\/pt-br\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\/#article","isPartOf":{"@id":"https:\/\/building.nubank.com\/pt-br\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\/"},"author":{"name":"Lucas Estevam - Director of Data Science","@id":"https:\/\/building.nubank.com\/pt-br\/#\/schema\/person\/56d8f32ed78416e0568e09af1be3f6de"},"headline":"Apresentando fklearn: A biblioteca de aprendizado de m\u00e1quina do Nubank (Parte II)","datePublished":"2019-12-04T21:20:00+00:00","dateModified":"2024-03-20T17:45:49+00:00","mainEntityOfPage":{"@id":"https:\/\/building.nubank.com\/pt-br\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\/"},"wordCount":1371,"commentCount":0,"image":{"@id":"https:\/\/building.nubank.com\/pt-br\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/building.nubank.com\/wp-content\/uploads\/2020\/04\/fklearn-nubank-machine-learning-library-Header.jpg?fit=1440%2C600&ssl=1","keywords":["ci\u00eancia de dados","fklearn","machine learning"],"articleSection":["Data &amp; Analytics","Data science &amp; Machine Learning"],"inLanguage":"pt-BR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/building.nubank.com\/pt-br\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/building.nubank.com\/pt-br\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\/","url":"https:\/\/building.nubank.com\/pt-br\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\/","name":"Fklearn: Nubank\u2019s machine learning library (Part II) - Building Nubank","isPartOf":{"@id":"https:\/\/building.nubank.com\/pt-br\/#website"},"primaryImageOfPage":{"@id":"https:\/\/building.nubank.com\/pt-br\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\/#primaryimage"},"image":{"@id":"https:\/\/building.nubank.com\/pt-br\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\/#primaryimage"},"thumbnailUrl":"https:\/\/i0.wp.com\/building.nubank.com\/wp-content\/uploads\/2020\/04\/fklearn-nubank-machine-learning-library-Header.jpg?fit=1440%2C600&ssl=1","datePublished":"2019-12-04T21:20:00+00:00","dateModified":"2024-03-20T17:45:49+00:00","author":{"@id":"https:\/\/building.nubank.com\/pt-br\/#\/schema\/person\/56d8f32ed78416e0568e09af1be3f6de"},"description":"Benef\u00edcios de usar a fklearn para fazer an\u00e1lises e valida\u00e7\u00e3o de modelos","breadcrumb":{"@id":"https:\/\/building.nubank.com\/pt-br\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/building.nubank.com\/pt-br\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/building.nubank.com\/pt-br\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\/#primaryimage","url":"https:\/\/i0.wp.com\/building.nubank.com\/wp-content\/uploads\/2020\/04\/fklearn-nubank-machine-learning-library-Header.jpg?fit=1440%2C600&ssl=1","contentUrl":"https:\/\/i0.wp.com\/building.nubank.com\/wp-content\/uploads\/2020\/04\/fklearn-nubank-machine-learning-library-Header.jpg?fit=1440%2C600&ssl=1","width":1440,"height":600},{"@type":"BreadcrumbList","@id":"https:\/\/building.nubank.com\/pt-br\/apresentando-fklearn-a-biblioteca-de-aprendizado-de-maquina-do-nubank-parte-ii\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/building.nubank.com\/pt-br\/"},{"@type":"ListItem","position":2,"name":"Apresentando fklearn: A biblioteca de aprendizado de m\u00e1quina do Nubank (Parte II)"}]},{"@type":"WebSite","@id":"https:\/\/building.nubank.com\/pt-br\/#website","url":"https:\/\/building.nubank.com\/pt-br\/","name":"Building Nubank","description":"We make the extraordinary happen","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/building.nubank.com\/pt-br\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Person","@id":"https:\/\/building.nubank.com\/pt-br\/#\/schema\/person\/56d8f32ed78416e0568e09af1be3f6de","name":"Lucas Estevam - Director of Data Science","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/secure.gravatar.com\/avatar\/51820345b99d37bf5757c8974c4306c1f6415116c9d053613f7abc8afb30f77a?s=96&d=identicon&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/51820345b99d37bf5757c8974c4306c1f6415116c9d053613f7abc8afb30f77a?s=96&d=identicon&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/51820345b99d37bf5757c8974c4306c1f6415116c9d053613f7abc8afb30f77a?s=96&d=identicon&r=g","caption":"Lucas Estevam - Director of Data Science"},"description":"Lucas is the Director of Data Science at Nubank, where he's worked for the past four years. He currently leads multi-functional teams of Data Scientists, Analysts, and Engineers, focusing mainly on improving Nubank\u2019s credit business by using data in innovative ways. He studied Computer Engineering and Operations Research.","url":"https:\/\/building.nubank.com\/pt-br\/author\/estevam\/"}]}},"jetpack_shortlink":"https:\/\/wp.me\/pbKBB5-6Yk","jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/i0.wp.com\/building.nubank.com\/wp-content\/uploads\/2020\/04\/fklearn-nubank-machine-learning-library-Header.jpg?fit=1440%2C600&ssl=1","_links":{"self":[{"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/posts\/26804","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/users\/178110060"}],"replies":[{"embeddable":true,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/comments?post=26804"}],"version-history":[{"count":3,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/posts\/26804\/revisions"}],"predecessor-version":[{"id":28743,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/posts\/26804\/revisions\/28743"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/media\/21626"}],"wp:attachment":[{"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/media?parent=26804"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/categories?post=26804"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/building.nubank.com\/pt-br\/wp-json\/wp\/v2\/tags?post=26804"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}