Latest commit

History

23 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Sistema de Recomendação de Produtos

technology Gotechnology Pythontechnology Nginxtechnology Postgrestechnology SKLearntechnology Pandas

Este repositório contém a implementação de um sistema de recomendação de produtos utilizando Machine Learning. O projeto foi desenvolvido para demonstrar como integrar sistemas transacionais com modelos de machine learning que realizam inferências em tempo real, oferecendo soluções práticas e eficientes para recomendação, seja para produtos em um e-commerce ou filmes em um sistema de streaming de vídeo.

O sistema combina uma estrutura modular que separa as responsabilidades de frontend, backend e machine learning, que permite explorar a interação entre diferentes componentes. Ele também exemplifica como conectar APIs ao modelo treinado.

Com este repositório, espera-se fornecer um exemplo claro e funcional de como aplicar técnicas de machine learning para melhorar a experiência do usuário e aumentar a eficiência de negócios baseados em dados.

Arquitetura

Architecture

⚠ AVISO SOBRE A ARQUITETURA: O desenho da solução apresentado neste repositório tem como objetivo exemplificar uma das várias abordagens possíveis para integrar aplicações transacionais com mecanismos de machine learning. Além dessa abordagem, também existem opções como inferências em batch ou micro-batch, que podem ser mais adequadas dependendo do caso de uso e dos requisitos específicos.

Componentes da Arquitetura

ComponenteDescrição
Front-EndResponsável por exibir os produtos, categorias e recomendações para os usuários.
Item API ClusterAPI que gerencia os dados de produtos (leitura e escrita) no banco de dados.
Recommendation APIAPI que utiliza o modelo de machine learning para fornecer produtos recomendados.

Executando

A aplicação está configurada para ser executada com Docker Compose. Siga os seguintes passos:

  1. Clone o repositório
git clone https://github.com/Waelson/recommendation.git
cd recommendation
  1. Suba toda a stack
docker-compose up --build
  1. Acessando a aplicação
  • Digite a URL http://localhost:8080 no seu browser
  • Navegue nas categorias e depois clique em um produto para visualizar as recomendações sendo feitas em tempo real pela aplicação Recommendation API.

Como a aplicação se parece

Application in Action

Abordagem de Machine Learning Utilizada

⚠ AVISO: O modelo demonstrado neste repositório é apenas para testes e fins didáticos. Ele não deve ser utilizado em ambiente produtivo, pois não atende aos requisitos de segurança, escalabilidade e desempenho necessários para aplicações reais.

Para o treinamento do modelo de recomendação, utilizamos a abordagem de Filtragem Baseada em Conteúdo (Content-Based Filtering). Essa técnica analisa os atributos dos produtos, como descrições, categorias, preços e outras informações estruturadas, para identificar similaridades e oferecer recomendações.

Como Funciona

  1. Representação dos Dados: Os produtos são representados como vetores numéricos em um espaço multidimensional, utilizando técnicas como TF-IDF para processar texto e normalização para atributos numéricos.
  2. Cálculo de Similaridade: A similaridade entre os produtos é calculada usando métricas como a Similaridade de Cosseno, permitindo identificar itens semelhantes ao produto selecionado.
  3. Inferência: Com base no produto consultado, o modelo retorna os itens mais similares, ordenados por relevância.

Vantagens da Abordagem

  • Independência do Comportamento do Usuário: A recomendação é baseada nos atributos dos produtos, não dependendo de histórico de interações.
  • Escalabilidade: Fácil de escalar para novos produtos, desde que as características estejam disponíveis.
  • Explicabilidade: As recomendações podem ser facilmente explicadas com base nas similaridades entre os atributos.

About

Este repositório implementa um sistema de recomendação de produtos utilizando Machine Learning com enfoque em integração prática. Ideal para fins didáticos, ele demonstra a interação entre sistemas transacionais e modelos de inferência em tempo real, aplicável em contextos de e-commerce.

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Latest commit

History

23 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Sistema de Recomendação de Produtos

technology Gotechnology Pythontechnology Nginxtechnology Postgrestechnology SKLearntechnology Pandas

Este repositório contém a implementação de um sistema de recomendação de produtos utilizando Machine Learning. O projeto foi desenvolvido para demonstrar como integrar sistemas transacionais com modelos de machine learning que realizam inferências em tempo real, oferecendo soluções práticas e eficientes para recomendação, seja para produtos em um e-commerce ou filmes em um sistema de streaming de vídeo.

O sistema combina uma estrutura modular que separa as responsabilidades de frontend, backend e machine learning, que permite explorar a interação entre diferentes componentes. Ele também exemplifica como conectar APIs ao modelo treinado.

Com este repositório, espera-se fornecer um exemplo claro e funcional de como aplicar técnicas de machine learning para melhorar a experiência do usuário e aumentar a eficiência de negócios baseados em dados.

Arquitetura

Architecture

⚠ AVISO SOBRE A ARQUITETURA: O desenho da solução apresentado neste repositório tem como objetivo exemplificar uma das várias abordagens possíveis para integrar aplicações transacionais com mecanismos de machine learning. Além dessa abordagem, também existem opções como inferências em batch ou micro-batch, que podem ser mais adequadas dependendo do caso de uso e dos requisitos específicos.

Componentes da Arquitetura

ComponenteDescrição
Front-EndResponsável por exibir os produtos, categorias e recomendações para os usuários.
Item API ClusterAPI que gerencia os dados de produtos (leitura e escrita) no banco de dados.
Recommendation APIAPI que utiliza o modelo de machine learning para fornecer produtos recomendados.

Executando

A aplicação está configurada para ser executada com Docker Compose. Siga os seguintes passos:

  1. Clone o repositório
git clone https://github.com/Waelson/recommendation.git
cd recommendation
  1. Suba toda a stack
docker-compose up --build
  1. Acessando a aplicação
  • Digite a URL http://localhost:8080 no seu browser
  • Navegue nas categorias e depois clique em um produto para visualizar as recomendações sendo feitas em tempo real pela aplicação Recommendation API.

Como a aplicação se parece

Application in Action

Abordagem de Machine Learning Utilizada

⚠ AVISO: O modelo demonstrado neste repositório é apenas para testes e fins didáticos. Ele não deve ser utilizado em ambiente produtivo, pois não atende aos requisitos de segurança, escalabilidade e desempenho necessários para aplicações reais.

Para o treinamento do modelo de recomendação, utilizamos a abordagem de Filtragem Baseada em Conteúdo (Content-Based Filtering). Essa técnica analisa os atributos dos produtos, como descrições, categorias, preços e outras informações estruturadas, para identificar similaridades e oferecer recomendações.

Como Funciona

  1. Representação dos Dados: Os produtos são representados como vetores numéricos em um espaço multidimensional, utilizando técnicas como TF-IDF para processar texto e normalização para atributos numéricos.
  2. Cálculo de Similaridade: A similaridade entre os produtos é calculada usando métricas como a Similaridade de Cosseno, permitindo identificar itens semelhantes ao produto selecionado.
  3. Inferência: Com base no produto consultado, o modelo retorna os itens mais similares, ordenados por relevância.

Vantagens da Abordagem

  • Independência do Comportamento do Usuário: A recomendação é baseada nos atributos dos produtos, não dependendo de histórico de interações.
  • Escalabilidade: Fácil de escalar para novos produtos, desde que as características estejam disponíveis.
  • Explicabilidade: As recomendações podem ser facilmente explicadas com base nas similaridades entre os atributos.

About

Este repositório implementa um sistema de recomendação de produtos utilizando Machine Learning com enfoque em integração prática. Ideal para fins didáticos, ele demonstra a interação entre sistemas transacionais e modelos de inferência em tempo real, aplicável em contextos de e-commerce.

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

23 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Sistema de Recomendação de Produtos

technology Gotechnology Pythontechnology Nginxtechnology Postgrestechnology SKLearntechnology Pandas

Este repositório contém a implementação de um sistema de recomendação de produtos utilizando Machine Learning. O projeto foi desenvolvido para demonstrar como integrar sistemas transacionais com modelos de machine learning que realizam inferências em tempo real, oferecendo soluções práticas e eficientes para recomendação, seja para produtos em um e-commerce ou filmes em um sistema de streaming de vídeo.

O sistema combina uma estrutura modular que separa as responsabilidades de frontend, backend e machine learning, que permite explorar a interação entre diferentes componentes. Ele também exemplifica como conectar APIs ao modelo treinado.

Com este repositório, espera-se fornecer um exemplo claro e funcional de como aplicar técnicas de machine learning para melhorar a experiência do usuário e aumentar a eficiência de negócios baseados em dados.

Arquitetura

Architecture

⚠ AVISO SOBRE A ARQUITETURA: O desenho da solução apresentado neste repositório tem como objetivo exemplificar uma das várias abordagens possíveis para integrar aplicações transacionais com mecanismos de machine learning. Além dessa abordagem, também existem opções como inferências em batch ou micro-batch, que podem ser mais adequadas dependendo do caso de uso e dos requisitos específicos.

Componentes da Arquitetura

ComponenteDescrição
Front-EndResponsável por exibir os produtos, categorias e recomendações para os usuários.
Item API ClusterAPI que gerencia os dados de produtos (leitura e escrita) no banco de dados.
Recommendation APIAPI que utiliza o modelo de machine learning para fornecer produtos recomendados.

Executando

A aplicação está configurada para ser executada com Docker Compose. Siga os seguintes passos:

  1. Clone o repositório
git clone https://github.com/Waelson/recommendation.git
cd recommendation
  1. Suba toda a stack
docker-compose up --build
  1. Acessando a aplicação
  • Digite a URL http://localhost:8080 no seu browser
  • Navegue nas categorias e depois clique em um produto para visualizar as recomendações sendo feitas em tempo real pela aplicação Recommendation API.

Como a aplicação se parece

Application in Action

Abordagem de Machine Learning Utilizada

⚠ AVISO: O modelo demonstrado neste repositório é apenas para testes e fins didáticos. Ele não deve ser utilizado em ambiente produtivo, pois não atende aos requisitos de segurança, escalabilidade e desempenho necessários para aplicações reais.

Para o treinamento do modelo de recomendação, utilizamos a abordagem de Filtragem Baseada em Conteúdo (Content-Based Filtering). Essa técnica analisa os atributos dos produtos, como descrições, categorias, preços e outras informações estruturadas, para identificar similaridades e oferecer recomendações.

Como Funciona

  1. Representação dos Dados: Os produtos são representados como vetores numéricos em um espaço multidimensional, utilizando técnicas como TF-IDF para processar texto e normalização para atributos numéricos.
  2. Cálculo de Similaridade: A similaridade entre os produtos é calculada usando métricas como a Similaridade de Cosseno, permitindo identificar itens semelhantes ao produto selecionado.
  3. Inferência: Com base no produto consultado, o modelo retorna os itens mais similares, ordenados por relevância.

Vantagens da Abordagem

  • Independência do Comportamento do Usuário: A recomendação é baseada nos atributos dos produtos, não dependendo de histórico de interações.
  • Escalabilidade: Fácil de escalar para novos produtos, desde que as características estejam disponíveis.
  • Explicabilidade: As recomendações podem ser facilmente explicadas com base nas similaridades entre os atributos.

About

Este repositório implementa um sistema de recomendação de produtos utilizando Machine Learning com enfoque em integração prática. Ideal para fins didáticos, ele demonstra a interação entre sistemas transacionais e modelos de inferência em tempo real, aplicável em contextos de e-commerce.

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

23 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Sistema de Recomendação de Produtos

technology Gotechnology Pythontechnology Nginxtechnology Postgrestechnology SKLearntechnology Pandas

Este repositório contém a implementação de um sistema de recomendação de produtos utilizando Machine Learning. O projeto foi desenvolvido para demonstrar como integrar sistemas transacionais com modelos de machine learning que realizam inferências em tempo real, oferecendo soluções práticas e eficientes para recomendação, seja para produtos em um e-commerce ou filmes em um sistema de streaming de vídeo.

O sistema combina uma estrutura modular que separa as responsabilidades de frontend, backend e machine learning, que permite explorar a interação entre diferentes componentes. Ele também exemplifica como conectar APIs ao modelo treinado.

Com este repositório, espera-se fornecer um exemplo claro e funcional de como aplicar técnicas de machine learning para melhorar a experiência do usuário e aumentar a eficiência de negócios baseados em dados.

Arquitetura

Architecture

⚠ AVISO SOBRE A ARQUITETURA: O desenho da solução apresentado neste repositório tem como objetivo exemplificar uma das várias abordagens possíveis para integrar aplicações transacionais com mecanismos de machine learning. Além dessa abordagem, também existem opções como inferências em batch ou micro-batch, que podem ser mais adequadas dependendo do caso de uso e dos requisitos específicos.

Componentes da Arquitetura

ComponenteDescrição
Front-EndResponsável por exibir os produtos, categorias e recomendações para os usuários.
Item API ClusterAPI que gerencia os dados de produtos (leitura e escrita) no banco de dados.
Recommendation APIAPI que utiliza o modelo de machine learning para fornecer produtos recomendados.

Executando

A aplicação está configurada para ser executada com Docker Compose. Siga os seguintes passos:

  1. Clone o repositório
git clone https://github.com/Waelson/recommendation.git
cd recommendation
  1. Suba toda a stack
docker-compose up --build
  1. Acessando a aplicação
  • Digite a URL http://localhost:8080 no seu browser
  • Navegue nas categorias e depois clique em um produto para visualizar as recomendações sendo feitas em tempo real pela aplicação Recommendation API.

Como a aplicação se parece

Application in Action

Abordagem de Machine Learning Utilizada

⚠ AVISO: O modelo demonstrado neste repositório é apenas para testes e fins didáticos. Ele não deve ser utilizado em ambiente produtivo, pois não atende aos requisitos de segurança, escalabilidade e desempenho necessários para aplicações reais.

Para o treinamento do modelo de recomendação, utilizamos a abordagem de Filtragem Baseada em Conteúdo (Content-Based Filtering). Essa técnica analisa os atributos dos produtos, como descrições, categorias, preços e outras informações estruturadas, para identificar similaridades e oferecer recomendações.

Como Funciona

  1. Representação dos Dados: Os produtos são representados como vetores numéricos em um espaço multidimensional, utilizando técnicas como TF-IDF para processar texto e normalização para atributos numéricos.
  2. Cálculo de Similaridade: A similaridade entre os produtos é calculada usando métricas como a Similaridade de Cosseno, permitindo identificar itens semelhantes ao produto selecionado.
  3. Inferência: Com base no produto consultado, o modelo retorna os itens mais similares, ordenados por relevância.

Vantagens da Abordagem

  • Independência do Comportamento do Usuário: A recomendação é baseada nos atributos dos produtos, não dependendo de histórico de interações.
  • Escalabilidade: Fácil de escalar para novos produtos, desde que as características estejam disponíveis.
  • Explicabilidade: As recomendações podem ser facilmente explicadas com base nas similaridades entre os atributos.

About

Este repositório implementa um sistema de recomendação de produtos utilizando Machine Learning com enfoque em integração prática. Ideal para fins didáticos, ele demonstra a interação entre sistemas transacionais e modelos de inferência em tempo real, aplicável em contextos de e-commerce.

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Latest commit

History

23 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Sistema de Recomendação de Produtos

technology Gotechnology Pythontechnology Nginxtechnology Postgrestechnology SKLearntechnology Pandas

Este repositório contém a implementação de um sistema de recomendação de produtos utilizando Machine Learning. O projeto foi desenvolvido para demonstrar como integrar sistemas transacionais com modelos de machine learning que realizam inferências em tempo real, oferecendo soluções práticas e eficientes para recomendação, seja para produtos em um e-commerce ou filmes em um sistema de streaming de vídeo.

O sistema combina uma estrutura modular que separa as responsabilidades de frontend, backend e machine learning, que permite explorar a interação entre diferentes componentes. Ele também exemplifica como conectar APIs ao modelo treinado.

Com este repositório, espera-se fornecer um exemplo claro e funcional de como aplicar técnicas de machine learning para melhorar a experiência do usuário e aumentar a eficiência de negócios baseados em dados.

Arquitetura

Architecture

⚠ AVISO SOBRE A ARQUITETURA: O desenho da solução apresentado neste repositório tem como objetivo exemplificar uma das várias abordagens possíveis para integrar aplicações transacionais com mecanismos de machine learning. Além dessa abordagem, também existem opções como inferências em batch ou micro-batch, que podem ser mais adequadas dependendo do caso de uso e dos requisitos específicos.

Componentes da Arquitetura

ComponenteDescrição
Front-EndResponsável por exibir os produtos, categorias e recomendações para os usuários.
Item API ClusterAPI que gerencia os dados de produtos (leitura e escrita) no banco de dados.
Recommendation APIAPI que utiliza o modelo de machine learning para fornecer produtos recomendados.

Executando

A aplicação está configurada para ser executada com Docker Compose. Siga os seguintes passos:

  1. Clone o repositório
git clone https://github.com/Waelson/recommendation.git
cd recommendation
  1. Suba toda a stack
docker-compose up --build
  1. Acessando a aplicação
  • Digite a URL http://localhost:8080 no seu browser
  • Navegue nas categorias e depois clique em um produto para visualizar as recomendações sendo feitas em tempo real pela aplicação Recommendation API.

Como a aplicação se parece

Application in Action

Abordagem de Machine Learning Utilizada

⚠ AVISO: O modelo demonstrado neste repositório é apenas para testes e fins didáticos. Ele não deve ser utilizado em ambiente produtivo, pois não atende aos requisitos de segurança, escalabilidade e desempenho necessários para aplicações reais.

Para o treinamento do modelo de recomendação, utilizamos a abordagem de Filtragem Baseada em Conteúdo (Content-Based Filtering). Essa técnica analisa os atributos dos produtos, como descrições, categorias, preços e outras informações estruturadas, para identificar similaridades e oferecer recomendações.

Como Funciona

  1. Representação dos Dados: Os produtos são representados como vetores numéricos em um espaço multidimensional, utilizando técnicas como TF-IDF para processar texto e normalização para atributos numéricos.
  2. Cálculo de Similaridade: A similaridade entre os produtos é calculada usando métricas como a Similaridade de Cosseno, permitindo identificar itens semelhantes ao produto selecionado.
  3. Inferência: Com base no produto consultado, o modelo retorna os itens mais similares, ordenados por relevância.

Vantagens da Abordagem

  • Independência do Comportamento do Usuário: A recomendação é baseada nos atributos dos produtos, não dependendo de histórico de interações.
  • Escalabilidade: Fácil de escalar para novos produtos, desde que as características estejam disponíveis.
  • Explicabilidade: As recomendações podem ser facilmente explicadas com base nas similaridades entre os atributos.

About

Este repositório implementa um sistema de recomendação de produtos utilizando Machine Learning com enfoque em integração prática. Ideal para fins didáticos, ele demonstra a interação entre sistemas transacionais e modelos de inferência em tempo real, aplicável em contextos de e-commerce.

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

23 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Sistema de Recomendação de Produtos

technology Gotechnology Pythontechnology Nginxtechnology Postgrestechnology SKLearntechnology Pandas

Este repositório contém a implementação de um sistema de recomendação de produtos utilizando Machine Learning. O projeto foi desenvolvido para demonstrar como integrar sistemas transacionais com modelos de machine learning que realizam inferências em tempo real, oferecendo soluções práticas e eficientes para recomendação, seja para produtos em um e-commerce ou filmes em um sistema de streaming de vídeo.

O sistema combina uma estrutura modular que separa as responsabilidades de frontend, backend e machine learning, que permite explorar a interação entre diferentes componentes. Ele também exemplifica como conectar APIs ao modelo treinado.

Com este repositório, espera-se fornecer um exemplo claro e funcional de como aplicar técnicas de machine learning para melhorar a experiência do usuário e aumentar a eficiência de negócios baseados em dados.

Arquitetura

Architecture

⚠ AVISO SOBRE A ARQUITETURA: O desenho da solução apresentado neste repositório tem como objetivo exemplificar uma das várias abordagens possíveis para integrar aplicações transacionais com mecanismos de machine learning. Além dessa abordagem, também existem opções como inferências em batch ou micro-batch, que podem ser mais adequadas dependendo do caso de uso e dos requisitos específicos.

Componentes da Arquitetura

ComponenteDescrição
Front-EndResponsável por exibir os produtos, categorias e recomendações para os usuários.
Item API ClusterAPI que gerencia os dados de produtos (leitura e escrita) no banco de dados.
Recommendation APIAPI que utiliza o modelo de machine learning para fornecer produtos recomendados.

Executando

A aplicação está configurada para ser executada com Docker Compose. Siga os seguintes passos:

  1. Clone o repositório
git clone https://github.com/Waelson/recommendation.git
cd recommendation
  1. Suba toda a stack
docker-compose up --build
  1. Acessando a aplicação
  • Digite a URL http://localhost:8080 no seu browser
  • Navegue nas categorias e depois clique em um produto para visualizar as recomendações sendo feitas em tempo real pela aplicação Recommendation API.

Como a aplicação se parece

Application in Action

Abordagem de Machine Learning Utilizada

⚠ AVISO: O modelo demonstrado neste repositório é apenas para testes e fins didáticos. Ele não deve ser utilizado em ambiente produtivo, pois não atende aos requisitos de segurança, escalabilidade e desempenho necessários para aplicações reais.

Para o treinamento do modelo de recomendação, utilizamos a abordagem de Filtragem Baseada em Conteúdo (Content-Based Filtering). Essa técnica analisa os atributos dos produtos, como descrições, categorias, preços e outras informações estruturadas, para identificar similaridades e oferecer recomendações.

Como Funciona

  1. Representação dos Dados: Os produtos são representados como vetores numéricos em um espaço multidimensional, utilizando técnicas como TF-IDF para processar texto e normalização para atributos numéricos.
  2. Cálculo de Similaridade: A similaridade entre os produtos é calculada usando métricas como a Similaridade de Cosseno, permitindo identificar itens semelhantes ao produto selecionado.
  3. Inferência: Com base no produto consultado, o modelo retorna os itens mais similares, ordenados por relevância.

Vantagens da Abordagem

  • Independência do Comportamento do Usuário: A recomendação é baseada nos atributos dos produtos, não dependendo de histórico de interações.
  • Escalabilidade: Fácil de escalar para novos produtos, desde que as características estejam disponíveis.
  • Explicabilidade: As recomendações podem ser facilmente explicadas com base nas similaridades entre os atributos.

About

Este repositório implementa um sistema de recomendação de produtos utilizando Machine Learning com enfoque em integração prática. Ideal para fins didáticos, ele demonstra a interação entre sistemas transacionais e modelos de inferência em tempo real, aplicável em contextos de e-commerce.

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Latest commit

History

23 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Sistema de Recomendação de Produtos

technology Gotechnology Pythontechnology Nginxtechnology Postgrestechnology SKLearntechnology Pandas

Este repositório contém a implementação de um sistema de recomendação de produtos utilizando Machine Learning. O projeto foi desenvolvido para demonstrar como integrar sistemas transacionais com modelos de machine learning que realizam inferências em tempo real, oferecendo soluções práticas e eficientes para recomendação, seja para produtos em um e-commerce ou filmes em um sistema de streaming de vídeo.

O sistema combina uma estrutura modular que separa as responsabilidades de frontend, backend e machine learning, que permite explorar a interação entre diferentes componentes. Ele também exemplifica como conectar APIs ao modelo treinado.

Com este repositório, espera-se fornecer um exemplo claro e funcional de como aplicar técnicas de machine learning para melhorar a experiência do usuário e aumentar a eficiência de negócios baseados em dados.

Arquitetura

Architecture

⚠ AVISO SOBRE A ARQUITETURA: O desenho da solução apresentado neste repositório tem como objetivo exemplificar uma das várias abordagens possíveis para integrar aplicações transacionais com mecanismos de machine learning. Além dessa abordagem, também existem opções como inferências em batch ou micro-batch, que podem ser mais adequadas dependendo do caso de uso e dos requisitos específicos.

Componentes da Arquitetura

ComponenteDescrição
Front-EndResponsável por exibir os produtos, categorias e recomendações para os usuários.
Item API ClusterAPI que gerencia os dados de produtos (leitura e escrita) no banco de dados.
Recommendation APIAPI que utiliza o modelo de machine learning para fornecer produtos recomendados.

Executando

A aplicação está configurada para ser executada com Docker Compose. Siga os seguintes passos:

  1. Clone o repositório
git clone https://github.com/Waelson/recommendation.git
cd recommendation
  1. Suba toda a stack
docker-compose up --build
  1. Acessando a aplicação
  • Digite a URL http://localhost:8080 no seu browser
  • Navegue nas categorias e depois clique em um produto para visualizar as recomendações sendo feitas em tempo real pela aplicação Recommendation API.

Como a aplicação se parece

Application in Action

Abordagem de Machine Learning Utilizada

⚠ AVISO: O modelo demonstrado neste repositório é apenas para testes e fins didáticos. Ele não deve ser utilizado em ambiente produtivo, pois não atende aos requisitos de segurança, escalabilidade e desempenho necessários para aplicações reais.

Para o treinamento do modelo de recomendação, utilizamos a abordagem de Filtragem Baseada em Conteúdo (Content-Based Filtering). Essa técnica analisa os atributos dos produtos, como descrições, categorias, preços e outras informações estruturadas, para identificar similaridades e oferecer recomendações.

Como Funciona

  1. Representação dos Dados: Os produtos são representados como vetores numéricos em um espaço multidimensional, utilizando técnicas como TF-IDF para processar texto e normalização para atributos numéricos.
  2. Cálculo de Similaridade: A similaridade entre os produtos é calculada usando métricas como a Similaridade de Cosseno, permitindo identificar itens semelhantes ao produto selecionado.
  3. Inferência: Com base no produto consultado, o modelo retorna os itens mais similares, ordenados por relevância.

Vantagens da Abordagem

  • Independência do Comportamento do Usuário: A recomendação é baseada nos atributos dos produtos, não dependendo de histórico de interações.
  • Escalabilidade: Fácil de escalar para novos produtos, desde que as características estejam disponíveis.
  • Explicabilidade: As recomendações podem ser facilmente explicadas com base nas similaridades entre os atributos.

About

Este repositório implementa um sistema de recomendação de produtos utilizando Machine Learning com enfoque em integração prática. Ideal para fins didáticos, ele demonstra a interação entre sistemas transacionais e modelos de inferência em tempo real, aplicável em contextos de e-commerce.

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Latest commit

History

23 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Sistema de Recomendação de Produtos

technology Gotechnology Pythontechnology Nginxtechnology Postgrestechnology SKLearntechnology Pandas

Este repositório contém a implementação de um sistema de recomendação de produtos utilizando Machine Learning. O projeto foi desenvolvido para demonstrar como integrar sistemas transacionais com modelos de machine learning que realizam inferências em tempo real, oferecendo soluções práticas e eficientes para recomendação, seja para produtos em um e-commerce ou filmes em um sistema de streaming de vídeo.

O sistema combina uma estrutura modular que separa as responsabilidades de frontend, backend e machine learning, que permite explorar a interação entre diferentes componentes. Ele também exemplifica como conectar APIs ao modelo treinado.

Com este repositório, espera-se fornecer um exemplo claro e funcional de como aplicar técnicas de machine learning para melhorar a experiência do usuário e aumentar a eficiência de negócios baseados em dados.

Arquitetura

Architecture

⚠ AVISO SOBRE A ARQUITETURA: O desenho da solução apresentado neste repositório tem como objetivo exemplificar uma das várias abordagens possíveis para integrar aplicações transacionais com mecanismos de machine learning. Além dessa abordagem, também existem opções como inferências em batch ou micro-batch, que podem ser mais adequadas dependendo do caso de uso e dos requisitos específicos.

Componentes da Arquitetura

ComponenteDescrição
Front-EndResponsável por exibir os produtos, categorias e recomendações para os usuários.
Item API ClusterAPI que gerencia os dados de produtos (leitura e escrita) no banco de dados.
Recommendation APIAPI que utiliza o modelo de machine learning para fornecer produtos recomendados.

Executando

A aplicação está configurada para ser executada com Docker Compose. Siga os seguintes passos:

  1. Clone o repositório
git clone https://github.com/Waelson/recommendation.git
cd recommendation
  1. Suba toda a stack
docker-compose up --build
  1. Acessando a aplicação
  • Digite a URL http://localhost:8080 no seu browser
  • Navegue nas categorias e depois clique em um produto para visualizar as recomendações sendo feitas em tempo real pela aplicação Recommendation API.

Como a aplicação se parece

Application in Action

Abordagem de Machine Learning Utilizada

⚠ AVISO: O modelo demonstrado neste repositório é apenas para testes e fins didáticos. Ele não deve ser utilizado em ambiente produtivo, pois não atende aos requisitos de segurança, escalabilidade e desempenho necessários para aplicações reais.

Para o treinamento do modelo de recomendação, utilizamos a abordagem de Filtragem Baseada em Conteúdo (Content-Based Filtering). Essa técnica analisa os atributos dos produtos, como descrições, categorias, preços e outras informações estruturadas, para identificar similaridades e oferecer recomendações.

Como Funciona

  1. Representação dos Dados: Os produtos são representados como vetores numéricos em um espaço multidimensional, utilizando técnicas como TF-IDF para processar texto e normalização para atributos numéricos.
  2. Cálculo de Similaridade: A similaridade entre os produtos é calculada usando métricas como a Similaridade de Cosseno, permitindo identificar itens semelhantes ao produto selecionado.
  3. Inferência: Com base no produto consultado, o modelo retorna os itens mais similares, ordenados por relevância.

Vantagens da Abordagem

  • Independência do Comportamento do Usuário: A recomendação é baseada nos atributos dos produtos, não dependendo de histórico de interações.
  • Escalabilidade: Fácil de escalar para novos produtos, desde que as características estejam disponíveis.
  • Explicabilidade: As recomendações podem ser facilmente explicadas com base nas similaridades entre os atributos.

About

Este repositório implementa um sistema de recomendação de produtos utilizando Machine Learning com enfoque em integração prática. Ideal para fins didáticos, ele demonstra a interação entre sistemas transacionais e modelos de inferência em tempo real, aplicável em contextos de e-commerce.

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages