{"id":4506,"date":"2023-07-10T13:36:46","date_gmt":"2023-07-10T13:36:46","guid":{"rendered":"https:\/\/statorials.org\/pt\/controle-de-trem-r\/"},"modified":"2023-07-10T13:36:46","modified_gmt":"2023-07-10T13:36:46","slug":"controle-de-trem-r","status":"publish","type":"post","link":"https:\/\/statorials.org\/pt\/controle-de-trem-r\/","title":{"rendered":"R: como usar o traincontrol para controlar os par\u00e2metros de treinamento"},"content":{"rendered":"<p><\/p>\n<hr>\n<p><span style=\"color: #000000;\">Para avaliar at\u00e9 que ponto um modelo \u00e9 capaz de se ajustar a um conjunto de dados, precisamos analisar o seu desempenho em observa\u00e7\u00f5es nunca antes vistas.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Uma das maneiras mais comuns de conseguir isso \u00e9 usar <a href=\"https:\/\/statorials.org\/pt\/validacao-cruzada-k-fold\/\" target=\"_blank\" rel=\"noopener noreferrer\">a valida\u00e7\u00e3o cruzada k-fold<\/a> , que usa a seguinte abordagem:<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>1.<\/strong> Divida aleatoriamente um conjunto de dados em <em>k<\/em> grupos, ou \u201cdobras\u201d, de tamanho aproximadamente igual.<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>2.<\/strong> Escolha uma das dobras como conjunto de conten\u00e7\u00e3o. Ajuste o modelo \u00e0s dobras k-1 restantes. Calcule o teste MSE nas observa\u00e7\u00f5es da camada que foi tensionada.<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>3.<\/strong> Repita esse processo <em>k<\/em> vezes, cada vez usando um conjunto diferente como conjunto de exclus\u00e3o.<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>4.<\/strong> Calcule o MSE geral do teste como a m\u00e9dia dos <em>k<\/em> MSEs do teste.<\/span><\/p>\n<p> <span style=\"color: #000000;\">A maneira mais f\u00e1cil de realizar a valida\u00e7\u00e3o cruzada k-fold em R \u00e9 usar as fun\u00e7\u00f5es <strong>trainControl()<\/strong> e <strong>train()<\/strong> da biblioteca <strong>caret<\/strong> em R.<\/span><\/p>\n<p> <span style=\"color: #000000;\">A fun\u00e7\u00e3o <strong>trainControl()<\/strong> \u00e9 usada para especificar os par\u00e2metros de treinamento (por exemplo, tipo de valida\u00e7\u00e3o cruzada a ser usada, n\u00famero de dobras a serem usadas, etc.) e a fun\u00e7\u00e3o <strong>train()<\/strong> \u00e9 usada para realmente ajustar o modelo aos dados. .<\/span><\/p>\n<p> <span style=\"color: #000000;\">O exemplo a seguir mostra como usar as fun\u00e7\u00f5es <strong>trainControl()<\/strong> e <strong>train()<\/strong> na pr\u00e1tica.<\/span><\/p>\n<h2> <span style=\"color: #000000;\"><strong>Exemplo: como usar trainControl() em R<\/strong><\/span><\/h2>\n<p> <span style=\"color: #000000;\">Suponha que temos o seguinte conjunto de dados em R:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#create data frame<\/span>\ndf &lt;- data.frame(y=c(6, 8, 12, 14, 14, 15, 17, 22, 24, 23),\n                 x1=c(2, 5, 4, 3, 4, 6, 7, 5, 8, 9),\n                 x2=c(14, 12, 12, 13, 7, 8, 7, 4, 6, 5))\n\n<span style=\"color: #008080;\">#view data frame\n<\/span>df\n\ny x1 x2\n6 2 14\n8 5 12\n12 4 12\n14 3 13\n14 4 7\n15 6 8\n17 7 7\n22 5 4\n24 8 6\n23 9 5\n<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Agora suponha que usamos a fun\u00e7\u00e3o <a href=\"https:\/\/statorials.org\/pt\/funcao-lm-em-r\/\" target=\"_blank\" rel=\"noopener\">lm()<\/a> para ajustar um <a href=\"https:\/\/statorials.org\/pt\/regressao-linear-multipla\/\" target=\"_blank\" rel=\"noopener\">modelo de regress\u00e3o linear m\u00faltipla<\/a> a este conjunto de dados, usando <strong>x1<\/strong> e <strong>x2<\/strong> como vari\u00e1veis preditoras e <strong>y<\/strong> como vari\u00e1vel de resposta:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#fit multiple linear regression model to data<\/span>\nfit &lt;- lm(y ~ x1 + x2, data=df)\n\n<span style=\"color: #008080;\">#view model summary\n<\/span>summary(fit)\n\nCall:\nlm(formula = y ~ x1 + x2, data = df)\n\nResiduals:\n    Min 1Q Median 3Q Max \n-3.6650 -1.9228 -0.3684 1.2783 5.0208 \n\nCoefficients:\n            Estimate Std. Error t value Pr(&gt;|t|)  \n(Intercept) 21.2672 6.9927 3.041 0.0188 *\nx1 0.7803 0.6942 1.124 0.2981  \nx2 -1.1253 0.4251 -2.647 0.0331 *\n---\nSignificant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1\n\nResidual standard error: 3.093 on 7 degrees of freedom\nMultiple R-squared: 0.801, Adjusted R-squared: 0.7441 \nF-statistic: 14.09 on 2 and 7 DF, p-value: 0.003516\n<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Usando os coeficientes na sa\u00edda do modelo, podemos escrever o modelo de regress\u00e3o ajustado:<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>y = 21,2672 + 0,7803*(x <sub>1<\/sub> ) \u2013 1,1253(x <sub>2<\/sub> )<\/strong><\/span><\/p>\n<p> <span style=\"color: #000000;\">Para ter uma ideia do desempenho deste modelo em <a href=\"https:\/\/statorials.org\/pt\/observacao-em-estatisticas\/\" target=\"_blank\" rel=\"noopener\">observa\u00e7\u00f5es<\/a> invis\u00edveis, podemos usar a valida\u00e7\u00e3o cruzada k-fold.<\/span><\/p>\n<p> <span style=\"color: #000000;\">O c\u00f3digo a seguir mostra como usar a fun\u00e7\u00e3o <strong>trainControl()<\/strong> do pacote <strong>circunflexo<\/strong> para especificar a valida\u00e7\u00e3o cruzada k-fold ( <strong>method=&#8221;cv&#8221;<\/strong> ) que usa 5 dobras ( <strong>number=5<\/strong> ).<\/span><\/p>\n<p> <span style=\"color: #000000;\">Em seguida, passamos esta fun\u00e7\u00e3o <strong>trainControl()<\/strong> para a fun\u00e7\u00e3o <strong>train()<\/strong> para realmente realizar a valida\u00e7\u00e3o cruzada k-fold:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\"><span style=\"color: #000000;\"><span style=\"color: #008000;\">library<\/span> (caret)<\/span>\n\n#specify the cross-validation method<\/span>\nctrl &lt;- trainControl(method = \" <span style=\"color: #ff0000;\">cv<\/span> \", number = <span style=\"color: #008000;\">5<\/span> )\n\n<span style=\"color: #008080;\">#fit a regression model and use k-fold CV to evaluate performance\n<\/span>model &lt;- train(y ~ x1 + x2, data = df, method = \" <span style=\"color: #ff0000;\">lm<\/span> \", trControl = ctrl)\n\n<span style=\"color: #008080;\">#view summary of k-fold CV               \n<\/span><span style=\"color: #008000;\">print<\/span> (model)\n\nLinear Regression \n\n10 samples\n 2 predictors\n\nNo pre-processing\nResampling: Cross-Validated (5 fold) \nSummary of sample sizes: 8, 8, 8, 8, 8 \nResampling results:\n\n  RMSE Rsquared MAE     \n  3.612302 1 3.232153\n\nTuning parameter 'intercept' was held constant at a value of TRUE\n<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">A partir do resultado podemos ver que o modelo foi ajustado <strong>5<\/strong> vezes usando um tamanho de amostra de <strong>8<\/strong> observa\u00e7\u00f5es cada vez.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Cada vez, o modelo foi usado para prever os valores das <strong>2<\/strong> observa\u00e7\u00f5es retidas e as seguintes m\u00e9tricas foram calculadas a cada vez:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\"><strong>RMSE:<\/strong> raiz do erro quadr\u00e1tico m\u00e9dio. Isso mede a diferen\u00e7a m\u00e9dia entre as previs\u00f5es feitas pelo modelo e as observa\u00e7\u00f5es reais. Quanto menor o RMSE, mais precisamente um modelo pode prever as observa\u00e7\u00f5es reais.<\/span><\/li>\n<li> <span style=\"color: #000000;\"><strong>MAE:<\/strong> O erro absoluto m\u00e9dio. Esta \u00e9 a diferen\u00e7a m\u00e9dia absoluta entre as previs\u00f5es feitas pelo modelo e as observa\u00e7\u00f5es reais. Quanto menor o MAE, mais precisamente um modelo pode prever as observa\u00e7\u00f5es reais.<\/span><\/li>\n<\/ul>\n<p> <span style=\"color: #000000;\">A m\u00e9dia dos valores RMSE e MAE dos cinco componentes \u00e9 exibida no resultado:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\">REQM: <strong>3,612302<\/strong><\/span><\/li>\n<li> <span style=\"color: #000000;\">MAE: <strong>3.232153<\/strong><\/span><\/li>\n<\/ul>\n<p> <span style=\"color: #000000;\">Essas m\u00e9tricas nos d\u00e3o uma ideia do desempenho do modelo em novos dados.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Na pr\u00e1tica, normalmente ajustamos v\u00e1rios modelos diferentes e comparamos essas m\u00e9tricas para determinar qual modelo tem melhor desempenho em dados n\u00e3o vistos.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Por exemplo, poder\u00edamos ajustar um <a href=\"https:\/\/statorials.org\/pt\/quando-usar-regressao-polinomial\/\" target=\"_blank\" rel=\"noopener\">modelo de regress\u00e3o polinomial<\/a> e realizar uma valida\u00e7\u00e3o cruzada K-fold nele para ver como as m\u00e9tricas RMSE e MAE se comparam ao modelo de regress\u00e3o linear m\u00faltipla.<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>Nota n\u00ba 1:<\/strong> neste exemplo, optamos por usar k = 5 dobras, mas voc\u00ea pode escolher qualquer n\u00famero de dobras que desejar. Na pr\u00e1tica, normalmente escolhemos entre 5 e 10 camadas, pois este \u00e9 o n\u00famero ideal de camadas que produz taxas de erro de teste confi\u00e1veis.<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>Nota #2<\/strong> : A fun\u00e7\u00e3o <strong>trainControl()<\/strong> aceita muitos argumentos potenciais. Voc\u00ea pode encontrar a documenta\u00e7\u00e3o completa para esta fun\u00e7\u00e3o <a href=\"https:\/\/search.r-project.org\/CRAN\/refmans\/caret\/html\/trainControl.html\" target=\"_blank\" rel=\"noopener\">aqui<\/a> .<\/span><\/p>\n<h2> <span style=\"color: #000000;\"><strong>Recursos adicionais<\/strong><\/span><\/h2>\n<p> <span style=\"color: #000000;\">Os tutoriais a seguir fornecem informa\u00e7\u00f5es adicionais sobre modelos de treinamento:<\/span><\/p>\n<p> <span style=\"color: #000000;\"><a href=\"https:\/\/statorials.org\/pt\/validacao-cruzada-k-fold\/\" target=\"_blank\" rel=\"noopener\">Introdu\u00e7\u00e3o \u00e0 valida\u00e7\u00e3o cruzada K-Fold<\/a><br \/> <a href=\"https:\/\/statorials.org\/pt\/deixe-uma-unica-validacao-cruzada\/\" target=\"_blank\" rel=\"noopener\">Introdu\u00e7\u00e3o \u00e0 valida\u00e7\u00e3o cruzada Leave-One-Out<\/a><br \/> <a href=\"https:\/\/statorials.org\/pt\/overfitting-de-aprendizado-de-maquina\/\" target=\"_blank\" rel=\"noopener\">O que \u00e9 overfitting no aprendizado de m\u00e1quina?<\/a><\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Para avaliar at\u00e9 que ponto um modelo \u00e9 capaz de se ajustar a um conjunto de dados, precisamos analisar o seu desempenho em observa\u00e7\u00f5es nunca antes vistas. Uma das maneiras mais comuns de conseguir isso \u00e9 usar a valida\u00e7\u00e3o cruzada k-fold , que usa a seguinte abordagem: 1. Divida aleatoriamente um conjunto de dados em [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11],"tags":[],"class_list":["post-4506","post","type-post","status-publish","format-standard","hentry","category-guia"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>A: Como usar o trainControl para controlar os par\u00e2metros de treinamento - Estatoriais<\/title>\n<meta name=\"description\" content=\"Este tutorial explica como usar a fun\u00e7\u00e3o traincontrol() em R para controlar os par\u00e2metros usados para treinar modelos, com um exemplo.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/statorials.org\/pt\/controle-de-trem-r\/\" \/>\n<meta property=\"og:locale\" content=\"pt_PT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"A: Como usar o trainControl para controlar os par\u00e2metros de treinamento - Estatoriais\" \/>\n<meta property=\"og:description\" content=\"Este tutorial explica como usar a fun\u00e7\u00e3o traincontrol() em R para controlar os par\u00e2metros usados para treinar modelos, com um exemplo.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/statorials.org\/pt\/controle-de-trem-r\/\" \/>\n<meta property=\"og:site_name\" content=\"Statorials\" \/>\n<meta property=\"article:published_time\" content=\"2023-07-10T13:36:46+00:00\" \/>\n<meta name=\"author\" content=\"Dr. benjamim anderson\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Dr. benjamim anderson\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo estimado de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/statorials.org\/pt\/controle-de-trem-r\/\",\"url\":\"https:\/\/statorials.org\/pt\/controle-de-trem-r\/\",\"name\":\"A: Como usar o trainControl para controlar os par\u00e2metros de treinamento - Estatoriais\",\"isPartOf\":{\"@id\":\"https:\/\/statorials.org\/pt\/#website\"},\"datePublished\":\"2023-07-10T13:36:46+00:00\",\"dateModified\":\"2023-07-10T13:36:46+00:00\",\"author\":{\"@id\":\"https:\/\/statorials.org\/pt\/#\/schema\/person\/e08f98e8db95e0aa9c310e1b27c9c666\"},\"description\":\"Este tutorial explica como usar a fun\u00e7\u00e3o traincontrol() em R para controlar os par\u00e2metros usados para treinar modelos, com um exemplo.\",\"breadcrumb\":{\"@id\":\"https:\/\/statorials.org\/pt\/controle-de-trem-r\/#breadcrumb\"},\"inLanguage\":\"pt-PT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/statorials.org\/pt\/controle-de-trem-r\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/statorials.org\/pt\/controle-de-trem-r\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Lar\",\"item\":\"https:\/\/statorials.org\/pt\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"R: como usar o traincontrol para controlar os par\u00e2metros de treinamento\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/statorials.org\/pt\/#website\",\"url\":\"https:\/\/statorials.org\/pt\/\",\"name\":\"Statorials\",\"description\":\"O seu guia para a literacia estat\u00edstica!\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/statorials.org\/pt\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"pt-PT\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/statorials.org\/pt\/#\/schema\/person\/e08f98e8db95e0aa9c310e1b27c9c666\",\"name\":\"Dr. benjamim anderson\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\/\/statorials.org\/pt\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/statorials.org\/pt\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg\",\"contentUrl\":\"https:\/\/statorials.org\/pt\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg\",\"caption\":\"Dr. benjamim anderson\"},\"description\":\"Ol\u00e1, sou Benjamin, um professor aposentado de estat\u00edstica que se tornou professor dedicado na Statorials. Com vasta experi\u00eancia e conhecimento na \u00e1rea de estat\u00edstica, estou empenhado em compartilhar meu conhecimento para capacitar os alunos por meio de Statorials. Saber mais\",\"sameAs\":[\"https:\/\/statorials.org\/pt\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"A: Como usar o trainControl para controlar os par\u00e2metros de treinamento - Estatoriais","description":"Este tutorial explica como usar a fun\u00e7\u00e3o traincontrol() em R para controlar os par\u00e2metros usados para treinar modelos, com um exemplo.","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:\/\/statorials.org\/pt\/controle-de-trem-r\/","og_locale":"pt_PT","og_type":"article","og_title":"A: Como usar o trainControl para controlar os par\u00e2metros de treinamento - Estatoriais","og_description":"Este tutorial explica como usar a fun\u00e7\u00e3o traincontrol() em R para controlar os par\u00e2metros usados para treinar modelos, com um exemplo.","og_url":"https:\/\/statorials.org\/pt\/controle-de-trem-r\/","og_site_name":"Statorials","article_published_time":"2023-07-10T13:36:46+00:00","author":"Dr. benjamim anderson","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"Dr. benjamim anderson","Tempo estimado de leitura":"4 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/statorials.org\/pt\/controle-de-trem-r\/","url":"https:\/\/statorials.org\/pt\/controle-de-trem-r\/","name":"A: Como usar o trainControl para controlar os par\u00e2metros de treinamento - Estatoriais","isPartOf":{"@id":"https:\/\/statorials.org\/pt\/#website"},"datePublished":"2023-07-10T13:36:46+00:00","dateModified":"2023-07-10T13:36:46+00:00","author":{"@id":"https:\/\/statorials.org\/pt\/#\/schema\/person\/e08f98e8db95e0aa9c310e1b27c9c666"},"description":"Este tutorial explica como usar a fun\u00e7\u00e3o traincontrol() em R para controlar os par\u00e2metros usados para treinar modelos, com um exemplo.","breadcrumb":{"@id":"https:\/\/statorials.org\/pt\/controle-de-trem-r\/#breadcrumb"},"inLanguage":"pt-PT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/statorials.org\/pt\/controle-de-trem-r\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/statorials.org\/pt\/controle-de-trem-r\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Lar","item":"https:\/\/statorials.org\/pt\/"},{"@type":"ListItem","position":2,"name":"R: como usar o traincontrol para controlar os par\u00e2metros de treinamento"}]},{"@type":"WebSite","@id":"https:\/\/statorials.org\/pt\/#website","url":"https:\/\/statorials.org\/pt\/","name":"Statorials","description":"O seu guia para a literacia estat\u00edstica!","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/statorials.org\/pt\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"pt-PT"},{"@type":"Person","@id":"https:\/\/statorials.org\/pt\/#\/schema\/person\/e08f98e8db95e0aa9c310e1b27c9c666","name":"Dr. benjamim anderson","image":{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/statorials.org\/pt\/#\/schema\/person\/image\/","url":"https:\/\/statorials.org\/pt\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg","contentUrl":"https:\/\/statorials.org\/pt\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg","caption":"Dr. benjamim anderson"},"description":"Ol\u00e1, sou Benjamin, um professor aposentado de estat\u00edstica que se tornou professor dedicado na Statorials. Com vasta experi\u00eancia e conhecimento na \u00e1rea de estat\u00edstica, estou empenhado em compartilhar meu conhecimento para capacitar os alunos por meio de Statorials. Saber mais","sameAs":["https:\/\/statorials.org\/pt"]}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"_links":{"self":[{"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/posts\/4506","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/comments?post=4506"}],"version-history":[{"count":0,"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/posts\/4506\/revisions"}],"wp:attachment":[{"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/media?parent=4506"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/categories?post=4506"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/tags?post=4506"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}