{"id":6024,"date":"2026-04-24T12:40:47","date_gmt":"2026-04-24T15:40:47","guid":{"rendered":"https:\/\/thiagorossi.com.br\/blog\/?p=6024"},"modified":"2026-04-24T12:49:19","modified_gmt":"2026-04-24T15:49:19","slug":"nlp-com-rubix-ml","status":"publish","type":"post","link":"https:\/\/thiagorossi.com.br\/blog\/nlp-com-rubix-ml\/","title":{"rendered":"NLP com Rubix ML"},"content":{"rendered":"<span class=\"span-reading-time rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Tempo de leitura: <\/span> <span class=\"rt-time\"> 5<\/span> <span class=\"rt-label rt-postfix\">minutos<\/span><\/span>\n<p class=\"has-medium-font-size wp-block-paragraph\">NLP com Rubix ML: Seja bem-vindo ao d\u00e9cimo terceiro cap\u00edtulo da nossa jornada t\u00e9cnica. J\u00e1 aprendemos a salvar o c\u00e9rebro da nossa IA e a coloc\u00e1-la para rodar em servidores de alta performance como os da Hostinger. Agora, vamos entrar em uma das \u00e1reas mais fascinantes e humanas da Intelig\u00eancia Artificial: o <strong>NLP Avan\u00e7ado (Processamento de Linguagem Natural)<\/strong>.<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Como desenvolvedor web e especialista em <strong>Rubix ML<\/strong>, sei que lidar com textos brutos \u00e9 um dos maiores desafios de um software. Um computador n\u00e3o entende o &#8220;sentimento&#8221; de uma frase ou o contexto de um curr\u00edculo apenas lendo caracteres. Ele precisa de estrutura. Neste artigo, vamos descobrir como o PHP pode interpretar a linguagem humana, identificar inten\u00e7\u00f5es e realizar an\u00e1lises sem\u00e2nticas que elevar\u00e3o o n\u00edvel de intelig\u00eancia do seu blog ou da nossa solu\u00e7\u00e3o exemplo de recrutamento e sele\u00e7\u00e3o.<\/p>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading has-large-font-size\">NLP Avan\u00e7ado: Processamento de Linguagem Natural e An\u00e1lise Sem\u00e2ntica de Textos com Rubix ML<\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">NLP com Rubix ML: O Processamento de Linguagem Natural (NLP) \u00e9 a disciplina que permite \u00e0s m\u00e1quinas ler, entender e derivar significado das linguagens humanas. No n\u00edvel avan\u00e7ado, n\u00e3o estamos apenas contando palavras; estamos buscando a <strong>sem\u00e2ntica<\/strong>, ou seja, o significado por tr\u00e1s do texto.<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">No ecossistema <strong>Rubix ML<\/strong>, o NLP deixa de ser uma &#8220;caixa preta&#8221; para se tornar uma s\u00e9rie de transforma\u00e7\u00f5es matem\u00e1ticas que convertem frases em vetores de alta dimensionalidade.<\/p>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading has-large-font-size\">1. Por que o NLP Avan\u00e7ado \u00e9 o Diferencial do Programador Moderno?<\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">No seu hub t\u00e9cnico ou em plataformas de recrutamento, o texto \u00e9 o dado predominante. Um sistema comum busca por &#8220;PHP&#8221; e encontra resultados exatos. Um sistema com <strong>NLP Avan\u00e7ado<\/strong> entende que um candidato que escreveu &#8220;Especialista em Laravel e Symfony&#8221; possui uma afinidade sem\u00e2ntica alt\u00edssima com uma vaga que pede &#8220;Desenvolvedor PHP S\u00eanior&#8221;, mesmo que as palavras exatas n\u00e3o sejam id\u00eanticas.<\/p>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Exemplos de aplicabilidade em problemas reais:<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li class=\"has-medium-font-size\"><strong>An\u00e1lise de Sentimento:<\/strong> Identificar se um coment\u00e1rio no seu blog \u00e9 um elogio construtivo ou um ataque (Spam\/Hate Speech).<\/li>\n\n\n\n<li class=\"has-medium-font-size\"><strong>Extra\u00e7\u00e3o de Entidades:<\/strong> Identificar automaticamente nomes de tecnologias, cidades (como S\u00e3o Jos\u00e9 do Rio Preto) e anos de experi\u00eancia em um texto corrido.<\/li>\n\n\n\n<li class=\"has-medium-font-size\"><strong>Agrupamento Tem\u00e1tico:<\/strong> Organizar automaticamente os artigos do blog em categorias baseadas no conte\u00fado real, e n\u00e3o apenas em tags manuais.<\/li>\n\n\n\n<li class=\"has-medium-font-size\"><strong>Busca Sem\u00e2ntica:<\/strong> Encontrar documentos pelo &#8220;conceito&#8221; e n\u00e3o apenas pela palavra-chave.<\/li>\n<\/ul>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading has-large-font-size\">2. A Ci\u00eancia por tr\u00e1s do Texto: De Palavras a Vetores<\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Para que o Rubix ML entenda um texto, precisamos passar por um processo chamado <strong>Vetoriza\u00e7\u00e3o<\/strong>. Existem duas t\u00e9cnicas principais que voc\u00ea deve dominar:<\/p>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">A. TF-IDF (Term Frequency-Inverse Document Frequency)<\/h3>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Esta t\u00e9cnica pontua as palavras com base na sua import\u00e2ncia. Palavras como &#8220;o&#8221;, &#8220;a&#8221;, &#8220;de&#8221; (stop words) recebem pontua\u00e7\u00e3o baixa. Palavras raras e espec\u00edficas como &#8220;Polimorfismo&#8221; ou &#8220;Multitenancy&#8221; recebem pontua\u00e7\u00e3o alta.<\/p>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">B. Word Embeddings (O Pr\u00f3ximo N\u00edvel)<\/h3>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Embeddings s\u00e3o representa\u00e7\u00f5es onde palavras com significados semelhantes ficam &#8220;perto&#8221; uma da outra em um espa\u00e7o geom\u00e9trico. \u00c9 aqui que a m\u00e1gica da sem\u00e2ntica acontece: o modelo entende que &#8220;Vaga&#8221; e &#8220;Oportunidade&#8221; s\u00e3o conceitos vizinhos.<\/p>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading has-large-font-size\">3. M\u00e3o na Massa: Analisando o Perfil de Candidatos<\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Vamos construir um exemplo pr\u00e1tico de <strong>Classifica\u00e7\u00e3o de Sentimento\/Inten\u00e7\u00e3o<\/strong>. Imagine que queremos classificar automaticamente se a &#8220;Bio&#8221; de um candidato demonstra um perfil <strong>T\u00e9cnico<\/strong>, <strong>Gestor<\/strong> ou <strong>Acad\u00eamico<\/strong>.<\/p>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Passo 1: Preparando o Dataset de Texto<\/h3>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">PHP<\/p>\n\n\n\n<pre class=\"wp-block-code has-medium-font-size\"><code>use Rubix\\ML\\Datasets\\Labeled;\n\n$samples = &#91;\n    &#91;'Desenvolvedor Full Stack com 10 anos de experi\u00eancia em PHP e Laravel.'],\n    &#91;'L\u00edder de equipe focado em metodologias \u00e1geis, Scrum e gest\u00e3o de projetos.'],\n    &#91;'Pesquisador doutorando em intelig\u00eancia artificial com publica\u00e7\u00f5es na UFRGS.'],\n    &#91;'Especialista em arquitetura de sistemas e infraestrutura Linux.'],\n    &#91;'Gerente de TI com foco em redu\u00e7\u00e3o de custos e KPIs de performance.'],\n];\n\n$labels = &#91;'T\u00e9cnico', 'Gestor', 'Acad\u00eamico', 'T\u00e9cnico', 'Gestor'];\n\n$dataset = new Labeled($samples, $labels);\n<\/code><\/pre>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Passo 2: O Pipeline de NLP Avan\u00e7ado<\/h3>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Para processar texto, usamos o <code>WordCountVectorizer<\/code> combinado com o <code>TfIdfTransformer<\/code>.<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">PHP<\/p>\n\n\n\n<pre class=\"wp-block-code has-medium-font-size\"><code>use Rubix\\ML\\Pipeline;\nuse Rubix\\ML\\Transformers\\WordCountVectorizer;\nuse Rubix\\ML\\Transformers\\TfIdfTransformer;\nuse Rubix\\ML\\Transformers\\StopWordFilter;\nuse Rubix\\ML\\Tokenizers\\Whitespace;\nuse Rubix\\ML\\Classifiers\\ComplementNB;\n\n$estimator = new Pipeline(&#91;\n    \/\/ 1. Filtra palavras comuns que n\u00e3o agregam valor (o, a, de...)\n    new StopWordFilter('portuguese'),\n    \/\/ 2. Transforma o texto em contagem de palavras\n    new WordCountVectorizer(1000, new Whitespace()),\n    \/\/ 3. Aplica o peso de import\u00e2ncia TF-IDF\n    new TfIdfTransformer(),\n], new ComplementNB()); \/\/ Naive Bayes \u00e9 excelente para textos!\n\n$estimator-&gt;train($dataset);\n<\/code><\/pre>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading has-large-font-size\">4. An\u00e1lise Sem\u00e2ntica e Similaridade de Cosseno<\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Um dos &#8220;pulos do gato&#8221; no NLP avan\u00e7ado com Rubix ML \u00e9 o uso da <strong>Similaridade de Cosseno<\/strong>. Se voc\u00ea tem dois curr\u00edculos, o modelo calcula o \u00e2ngulo entre os vetores de cada um. Se o \u00e2ngulo for pequeno, os textos s\u00e3o semanticamente similares.<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Isso \u00e9 perfeito para uma solu\u00e7\u00e3o de recrutamento e solu\u00e7\u00e3o: quando uma empresa posta uma vaga, voc\u00ea pode calcular a similaridade entre a descri\u00e7\u00e3o da vaga e todos os curr\u00edculos do banco de dados, ordenando os melhores candidatos instantaneamente.<\/p>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading has-large-font-size\">5. Lidando com a L\u00edngua Portuguesa: Desafios e Solu\u00e7\u00f5es<\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">O portugu\u00eas \u00e9 uma l\u00edngua complexa, cheia de conjuga\u00e7\u00f5es e acentua\u00e7\u00f5es. Para um NLP profissional:<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li class=\"has-medium-font-size\"><strong>Stemming:<\/strong> Reduzir a palavra ao seu radical (ex: &#8220;programador&#8221;, &#8220;programa\u00e7\u00e3o&#8221;, &#8220;programado&#8221; viram apenas &#8220;program&#8221;).<\/li>\n\n\n\n<li class=\"has-medium-font-size\"><strong>Normaliza\u00e7\u00e3o:<\/strong> Remover acentos e converter tudo para min\u00fasculas.<\/li>\n\n\n\n<li class=\"has-medium-font-size\"><strong>Stop Words Personalizadas:<\/strong> No seu blog, palavras como &#8220;artigo&#8221; ou &#8220;post&#8221; podem ser t\u00e3o comuns que perdem o sentido. Adicione-as ao seu filtro customizado.<\/li>\n<\/ol>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading has-large-font-size\">6. Boas Pr\u00e1ticas para NLP de Alta Performance<\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Como desenvolvedor web s\u00eanior, voc\u00ea deve se preocupar com a efici\u00eancia:<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li class=\"has-medium-font-size\"><strong>Limite o Vocabul\u00e1rio:<\/strong> N\u00e3o tente mapear todas as palavras da l\u00edngua portuguesa. Use o par\u00e2metro <code>maxVocabulary<\/code> no <code>WordCountVectorizer<\/code> para focar nas 5.000 ou 10.000 palavras mais importantes.<\/li>\n\n\n\n<li class=\"has-medium-font-size\"><strong>N-Grams:<\/strong> Em vez de analisar palavras soltas, analise pares ou trios. &#8220;Banco de Dados&#8221; tem um significado muito diferente de &#8220;Banco&#8221; e &#8220;Dados&#8221; separadamente. Use <code>new WordCountVectorizer(1000, new Whitespace(), 2)<\/code>.<\/li>\n\n\n\n<li class=\"has-medium-font-size\"><strong>Persist\u00eancia:<\/strong> Como vimos no Artigo 11, salve seu modelo de NLP. Treinar vetores de texto consome muita mem\u00f3ria RAM; carreg\u00e1-los do disco (<code>.rbx<\/code>) \u00e9 muito mais r\u00e1pido.<\/li>\n<\/ol>\n\n\n\n<div style=\"height:35px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading has-large-font-size\">Conclus\u00e3o: O PHP que Compreende o Mundo<\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Dominar o <strong>NLP Avan\u00e7ado com Rubix ML<\/strong> coloca voc\u00ea em um patamar diferenciado de desenvolvimento. Voc\u00ea deixa de construir formul\u00e1rios est\u00e1ticos para criar interfaces que &#8220;entendem&#8221; o que o usu\u00e1rio digita. Seja para organizar o conte\u00fado do seu blog de forma inteligente ou para revolucionar o matching de talentos em um processo de recrutamento e sele\u00e7\u00e3o, o processamento de linguagem natural \u00e9 a chave.<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">O PHP provou ser uma linguagem capaz de lidar com a complexidade sem\u00e2ntica, e com as ferramentas certas, o limite \u00e9 a sua criatividade.<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">No pr\u00f3ximo artigo, entraremos em um tema vital para a integridade de qualquer SaaS: <strong>&#8220;Detec\u00e7\u00e3o de Anomalias: Usando IA para seguran\u00e7a e identifica\u00e7\u00e3o de fraudes.&#8221;<\/strong><\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Mas antes de dominar o Rubix ML, se este for o seu caso, entendemos que toda jornada tem um in\u00edcio. Vamos entender quais s\u00e3o os conhecimentos b\u00e1sicos necess\u00e1rios para aproveitar ao m\u00e1ximo esta poderosa biblioteca. Para iniciar seus estudos do Rubix ML, voc\u00ea precisar\u00e1 dominar as seguintes tecnologias e\/ou framework:<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><a href=\"\/blog\/categoria\/php\" target=\"_blank\" rel=\" noreferrer noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"758\" height=\"426\" src=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/11\/Capa-PHP.png\" alt=\"Capa Curso PHP\" class=\"wp-image-2835\" srcset=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/11\/Capa-PHP.png 758w, https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/11\/Capa-PHP-300x169.png 300w\" sizes=\"auto, (max-width: 758px) 100vw, 758px\" \/><\/a><figcaption class=\"wp-element-caption\">PHP<\/figcaption><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><a href=\"\/blog\/categoria\/sql\" target=\"_blank\" rel=\" noreferrer noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"758\" height=\"426\" src=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/05\/Capa-Artigos-2.webp\" alt=\"SQL\" class=\"wp-image-942\" srcset=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/05\/Capa-Artigos-2.webp 758w, https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/05\/Capa-Artigos-2-300x169.webp 300w\" sizes=\"auto, (max-width: 758px) 100vw, 758px\" \/><\/a><figcaption class=\"wp-element-caption\">SQL<\/figcaption><\/figure>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><a href=\"\/blog\/categoria\/laravel\" target=\"_blank\" rel=\" noreferrer noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"758\" height=\"426\" src=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/11\/Laravel.webp\" alt=\"Laravel\" class=\"wp-image-1642\" srcset=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/11\/Laravel.webp 758w, https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/11\/Laravel-300x169.webp 300w\" sizes=\"auto, (max-width: 758px) 100vw, 758px\" \/><\/a><figcaption class=\"wp-element-caption\">Laravel<\/figcaption><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><a href=\"\/blog\/categoria\/cakephp\" target=\"_blank\" rel=\" noreferrer noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"758\" height=\"426\" src=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2026\/04\/capa-cakephp.png\" alt=\"CakePHP\" class=\"wp-image-5819\" srcset=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2026\/04\/capa-cakephp.png 758w, https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2026\/04\/capa-cakephp-300x169.png 300w\" sizes=\"auto, (max-width: 758px) 100vw, 758px\" \/><\/a><figcaption class=\"wp-element-caption\">CakePHP<\/figcaption><\/figure>\n<\/div>\n<\/div>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">E se voc\u00ea gosta do nosso conte\u00fado, n\u00e3o deixe de contribuir adquirindo os servi\u00e7os e produtos dos nossos apoiadores e empresas que somos associados.<\/p>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/hostinger.com.br\/?REFERRALCODE=1THIAGO62\" target=\"_blank\" rel=\" noreferrer noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"250\" src=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/03\/hostinger.png\" alt=\"Hospedagem Hostinger\" class=\"wp-image-92\"\/><\/a><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/amzn.to\/3SNDYlc\" target=\"_blank\" rel=\" noreferrer noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"250\" src=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/08\/ofertas-amazon.webp\" alt=\"Ofertas Amazon\" class=\"wp-image-1308\"\/><\/a><\/figure>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/amzn.to\/3SNKmt0\" target=\"_blank\" rel=\" noreferrer noopener\"><img loading=\"lazy\" decoding=\"async\" width=\"300\" height=\"250\" src=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/08\/amazonprime.webp\" alt=\"Amazon Prime\" class=\"wp-image-1307\"\/><\/a><\/figure>\n<\/div>\n<\/div>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\"><strong>Dica de Especialista:<\/strong> Quer surpreender mesmo? Combine o NLP com o que aprendemos no Artigo 08 (Clustering). Voc\u00ea pode agrupar milhares de curr\u00edculos em &#8220;nuvens de compet\u00eancias&#8221; automaticamente, sem nunca ter criado as categorias manualmente!<\/p>\n","protected":false},"excerpt":{"rendered":"<p><span class=\"span-reading-time rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Tempo de leitura: <\/span> <span class=\"rt-time\"> 5<\/span> <span class=\"rt-label rt-postfix\">minutos<\/span><\/span>NLP com Rubix ML: Seja bem-vindo ao d\u00e9cimo terceiro cap\u00edtulo da nossa jornada t\u00e9cnica. J\u00e1&#8230;<\/p>\n","protected":false},"author":1,"featured_media":5935,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[98],"tags":[],"class_list":["post-6024","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-rubix-ml","wpcat-98-id"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>NLP com Rubix ML - BLOG THIAGO ROSSI<\/title>\n<meta name=\"description\" content=\"NLP com Rubix ML: O Processamento de Linguagem Natural (NLP) \u00e9 a disciplina que permite \u00e0s m\u00e1quinas ler, entender e derivar significado das..\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/thiagorossi.com.br\/blog\/nlp-com-rubix-ml\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"NLP com Rubix ML - BLOG THIAGO ROSSI\" \/>\n<meta property=\"og:description\" content=\"NLP com Rubix ML: O Processamento de Linguagem Natural (NLP) \u00e9 a disciplina que permite \u00e0s m\u00e1quinas ler, entender e derivar significado das..\" \/>\n<meta property=\"og:url\" content=\"https:\/\/thiagorossi.com.br\/blog\/nlp-com-rubix-ml\/\" \/>\n<meta property=\"og:site_name\" content=\"BLOG THIAGO ROSSI\" \/>\n<meta property=\"article:published_time\" content=\"2026-04-24T15:40:47+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-04-24T15:49:19+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2026\/04\/RubixML.png\" \/>\n\t<meta property=\"og:image:width\" content=\"758\" \/>\n\t<meta property=\"og:image:height\" content=\"426\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Thiago Rossi\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Thiago Rossi\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/nlp-com-rubix-ml\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/nlp-com-rubix-ml\\\/\"},\"author\":{\"name\":\"Thiago Rossi\",\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/#\\\/schema\\\/person\\\/5f28286948ec2afdeb2e044a2196cd87\"},\"headline\":\"NLP com Rubix ML\",\"datePublished\":\"2026-04-24T15:40:47+00:00\",\"dateModified\":\"2026-04-24T15:49:19+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/nlp-com-rubix-ml\\\/\"},\"wordCount\":1145,\"publisher\":{\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/nlp-com-rubix-ml\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/RubixML.png\",\"articleSection\":[\"Rubix ML\"],\"inLanguage\":\"pt-BR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/nlp-com-rubix-ml\\\/\",\"url\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/nlp-com-rubix-ml\\\/\",\"name\":\"NLP com Rubix ML - BLOG THIAGO ROSSI\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/nlp-com-rubix-ml\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/nlp-com-rubix-ml\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/RubixML.png\",\"datePublished\":\"2026-04-24T15:40:47+00:00\",\"dateModified\":\"2026-04-24T15:49:19+00:00\",\"description\":\"NLP com Rubix ML: O Processamento de Linguagem Natural (NLP) \u00e9 a disciplina que permite \u00e0s m\u00e1quinas ler, entender e derivar significado das..\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/nlp-com-rubix-ml\\\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/nlp-com-rubix-ml\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/nlp-com-rubix-ml\\\/#primaryimage\",\"url\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/RubixML.png\",\"contentUrl\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/04\\\/RubixML.png\",\"width\":758,\"height\":426,\"caption\":\"Rubix ML\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/nlp-com-rubix-ml\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"NLP com Rubix ML\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/\",\"name\":\"THIAGO ROSSI\",\"description\":\"Mais de 20 anos de experi\u00eancia no mercado de TI!\",\"publisher\":{\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/#organization\"},\"alternateName\":\"TR | CURSO WEB DEV\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/#organization\",\"name\":\"THIAGO ROSSI\",\"alternateName\":\"TR | CURSO WEB DEV\",\"url\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/04\\\/new-logo.webp\",\"contentUrl\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/04\\\/new-logo.webp\",\"width\":300,\"height\":300,\"caption\":\"THIAGO ROSSI\"},\"image\":{\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/linkedin.com\\\/in\\\/thiagox86\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/#\\\/schema\\\/person\\\/5f28286948ec2afdeb2e044a2196cd87\",\"name\":\"Thiago Rossi\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/bb28b4665f4162bab9fbef8db5a7f00597f79ab90ece9a67189bb6bce78d5786?s=96&d=retro&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/bb28b4665f4162bab9fbef8db5a7f00597f79ab90ece9a67189bb6bce78d5786?s=96&d=retro&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/bb28b4665f4162bab9fbef8db5a7f00597f79ab90ece9a67189bb6bce78d5786?s=96&d=retro&r=g\",\"caption\":\"Thiago Rossi\"},\"description\":\"Com mais de 20 anos de jornada na tecnologia, minha trajet\u00f3ria evoluiu do ensino t\u00e9cnico \u00e0 arquitetura de sistemas complexos. Hoje, foco minha expertise no desenvolvimento de solu\u00e7\u00f5es de Intelig\u00eancia Artificial nativa e an\u00e1lise de dados p\u00fablicos, utilizando o ecossistema PHP para transformar dados brutos em transpar\u00eancia e efici\u00eancia. Como autor e desenvolvedor, acredito na democratiza\u00e7\u00e3o do conhecimento. Essa vis\u00e3o resultou em uma biblioteca de mais de 530 artigos gratuitos, cobrindo desde a base do WebDev e Infraestrutura at\u00e9 os bastidores da ind\u00fastria de Jogos e IA. No universo de Game Design, sou autor do livro \\\"GDD \u2013 O Guia Definitivo\\\" e documento ativamente meus processos atrav\u00e9s de DevLogs, unindo rigor t\u00e9cnico e criatividade em projetos desenvolvidos com GDevelop 5. Meu compromisso \u00e9 conectar engenharia de ponta com as reais oportunidades do mercado de tecnologia.\",\"sameAs\":[\"https:\\\/\\\/thiagorossi.com.br\\\/blog\",\"https:\\\/\\\/instagram.com\\\/thiagorossix86\",\"https:\\\/\\\/linkedin.com\\\/in\\\/thiagox86\"],\"url\":\"https:\\\/\\\/thiagorossi.com.br\\\/blog\\\/author\\\/thiagorossi\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"NLP com Rubix ML - BLOG THIAGO ROSSI","description":"NLP com Rubix ML: O Processamento de Linguagem Natural (NLP) \u00e9 a disciplina que permite \u00e0s m\u00e1quinas ler, entender e derivar significado das..","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:\/\/thiagorossi.com.br\/blog\/nlp-com-rubix-ml\/","og_locale":"pt_BR","og_type":"article","og_title":"NLP com Rubix ML - BLOG THIAGO ROSSI","og_description":"NLP com Rubix ML: O Processamento de Linguagem Natural (NLP) \u00e9 a disciplina que permite \u00e0s m\u00e1quinas ler, entender e derivar significado das..","og_url":"https:\/\/thiagorossi.com.br\/blog\/nlp-com-rubix-ml\/","og_site_name":"BLOG THIAGO ROSSI","article_published_time":"2026-04-24T15:40:47+00:00","article_modified_time":"2026-04-24T15:49:19+00:00","og_image":[{"width":758,"height":426,"url":"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2026\/04\/RubixML.png","type":"image\/png"}],"author":"Thiago Rossi","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"Thiago Rossi","Est. tempo de leitura":"8 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/thiagorossi.com.br\/blog\/nlp-com-rubix-ml\/#article","isPartOf":{"@id":"https:\/\/thiagorossi.com.br\/blog\/nlp-com-rubix-ml\/"},"author":{"name":"Thiago Rossi","@id":"https:\/\/thiagorossi.com.br\/blog\/#\/schema\/person\/5f28286948ec2afdeb2e044a2196cd87"},"headline":"NLP com Rubix ML","datePublished":"2026-04-24T15:40:47+00:00","dateModified":"2026-04-24T15:49:19+00:00","mainEntityOfPage":{"@id":"https:\/\/thiagorossi.com.br\/blog\/nlp-com-rubix-ml\/"},"wordCount":1145,"publisher":{"@id":"https:\/\/thiagorossi.com.br\/blog\/#organization"},"image":{"@id":"https:\/\/thiagorossi.com.br\/blog\/nlp-com-rubix-ml\/#primaryimage"},"thumbnailUrl":"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2026\/04\/RubixML.png","articleSection":["Rubix ML"],"inLanguage":"pt-BR"},{"@type":"WebPage","@id":"https:\/\/thiagorossi.com.br\/blog\/nlp-com-rubix-ml\/","url":"https:\/\/thiagorossi.com.br\/blog\/nlp-com-rubix-ml\/","name":"NLP com Rubix ML - BLOG THIAGO ROSSI","isPartOf":{"@id":"https:\/\/thiagorossi.com.br\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/thiagorossi.com.br\/blog\/nlp-com-rubix-ml\/#primaryimage"},"image":{"@id":"https:\/\/thiagorossi.com.br\/blog\/nlp-com-rubix-ml\/#primaryimage"},"thumbnailUrl":"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2026\/04\/RubixML.png","datePublished":"2026-04-24T15:40:47+00:00","dateModified":"2026-04-24T15:49:19+00:00","description":"NLP com Rubix ML: O Processamento de Linguagem Natural (NLP) \u00e9 a disciplina que permite \u00e0s m\u00e1quinas ler, entender e derivar significado das..","breadcrumb":{"@id":"https:\/\/thiagorossi.com.br\/blog\/nlp-com-rubix-ml\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/thiagorossi.com.br\/blog\/nlp-com-rubix-ml\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/thiagorossi.com.br\/blog\/nlp-com-rubix-ml\/#primaryimage","url":"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2026\/04\/RubixML.png","contentUrl":"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2026\/04\/RubixML.png","width":758,"height":426,"caption":"Rubix ML"},{"@type":"BreadcrumbList","@id":"https:\/\/thiagorossi.com.br\/blog\/nlp-com-rubix-ml\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/thiagorossi.com.br\/blog\/"},{"@type":"ListItem","position":2,"name":"NLP com Rubix ML"}]},{"@type":"WebSite","@id":"https:\/\/thiagorossi.com.br\/blog\/#website","url":"https:\/\/thiagorossi.com.br\/blog\/","name":"THIAGO ROSSI","description":"Mais de 20 anos de experi\u00eancia no mercado de TI!","publisher":{"@id":"https:\/\/thiagorossi.com.br\/blog\/#organization"},"alternateName":"TR | CURSO WEB DEV","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/thiagorossi.com.br\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Organization","@id":"https:\/\/thiagorossi.com.br\/blog\/#organization","name":"THIAGO ROSSI","alternateName":"TR | CURSO WEB DEV","url":"https:\/\/thiagorossi.com.br\/blog\/","logo":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/thiagorossi.com.br\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/04\/new-logo.webp","contentUrl":"https:\/\/thiagorossi.com.br\/blog\/wp-content\/uploads\/2024\/04\/new-logo.webp","width":300,"height":300,"caption":"THIAGO ROSSI"},"image":{"@id":"https:\/\/thiagorossi.com.br\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/linkedin.com\/in\/thiagox86"]},{"@type":"Person","@id":"https:\/\/thiagorossi.com.br\/blog\/#\/schema\/person\/5f28286948ec2afdeb2e044a2196cd87","name":"Thiago Rossi","image":{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/secure.gravatar.com\/avatar\/bb28b4665f4162bab9fbef8db5a7f00597f79ab90ece9a67189bb6bce78d5786?s=96&d=retro&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/bb28b4665f4162bab9fbef8db5a7f00597f79ab90ece9a67189bb6bce78d5786?s=96&d=retro&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/bb28b4665f4162bab9fbef8db5a7f00597f79ab90ece9a67189bb6bce78d5786?s=96&d=retro&r=g","caption":"Thiago Rossi"},"description":"Com mais de 20 anos de jornada na tecnologia, minha trajet\u00f3ria evoluiu do ensino t\u00e9cnico \u00e0 arquitetura de sistemas complexos. Hoje, foco minha expertise no desenvolvimento de solu\u00e7\u00f5es de Intelig\u00eancia Artificial nativa e an\u00e1lise de dados p\u00fablicos, utilizando o ecossistema PHP para transformar dados brutos em transpar\u00eancia e efici\u00eancia. Como autor e desenvolvedor, acredito na democratiza\u00e7\u00e3o do conhecimento. Essa vis\u00e3o resultou em uma biblioteca de mais de 530 artigos gratuitos, cobrindo desde a base do WebDev e Infraestrutura at\u00e9 os bastidores da ind\u00fastria de Jogos e IA. No universo de Game Design, sou autor do livro \"GDD \u2013 O Guia Definitivo\" e documento ativamente meus processos atrav\u00e9s de DevLogs, unindo rigor t\u00e9cnico e criatividade em projetos desenvolvidos com GDevelop 5. Meu compromisso \u00e9 conectar engenharia de ponta com as reais oportunidades do mercado de tecnologia.","sameAs":["https:\/\/thiagorossi.com.br\/blog","https:\/\/instagram.com\/thiagorossix86","https:\/\/linkedin.com\/in\/thiagox86"],"url":"https:\/\/thiagorossi.com.br\/blog\/author\/thiagorossi\/"}]}},"_links":{"self":[{"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/posts\/6024","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/comments?post=6024"}],"version-history":[{"count":6,"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/posts\/6024\/revisions"}],"predecessor-version":[{"id":6031,"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/posts\/6024\/revisions\/6031"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/media\/5935"}],"wp:attachment":[{"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/media?parent=6024"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/categories?post=6024"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/thiagorossi.com.br\/blog\/wp-json\/wp\/v2\/tags?post=6024"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}