1. Consultoria Estratégica, Planejamento Digital, Mídia Online e Social Media

2. Web Sites, Portais e Design/Criação Digital

3. Sistemas Web e Fábrica de Software com Certificação Gold da Microsoft

4. Search Engine Marketing (Links Patrocinados)/Optimization/AI/Usabilidade

 

 
 
 

Business Intelligence

 


É um conceito “up dated” que vai além da gestão empresarial. Também envolve a utilização de produtos e soluções desenvolvidas com tecnologia analítica de ponta que permite transformar dados armazenados e bases de dados em informações que auxiliam os diversos níveis de uma empresa na tomada de decisões, além de outras coisas.

Inteligência é o produto da transformação de dados em informação, após ser analisada ou inserida em um determinado ambiente. Esta informação transformada, aplicada a um determinado processo de decisão, gera vantagem competitiva para a organização.

A inteligência Empresarial, ou Business Intelligence, é um termo do Gartner Group. O conceito surgiu nos anos 80 e descreve as habilidades das corporações para acessar dados e explorar as informações ( normalmente contidas em um Data Warehouse/Data Mart), analisando-as e desenvolvendo percepções e entendimentos a seu respeito, o que as permite incrementar e tornar mais pautada em informações a tomada de decisão.

Pode-se dizer que o BI é um sistema onde se tem a coleta de informações de diversas fontes, tais como:
Empresa
Concorrentes
Clientes
Fornecedores
Possibilidades de expansão do negócio ( aquisições, joint-ventures e alianças)
Fatores sociais, políticos e econômicos que podem influenciar o negócio

O Business Intelligence, como interface, interfere, transforma e torna verdadeira todas estas informações e as converte em conhecimento estratégico.

Conceitos Data Warehouse/Data Marts

Pela ótica do usuário final, Data Warehouse é um banco de dados de alta disponibilidade, com todas as informações gerenciais/estratégicas de que precisam para tomar decisões, com dados confiáveis e em formato e agregação adequados. Os dados são sempre atualizados com a freqüência correta, preservando o histórico para permitir análises comparativas e a realização de projeções.
Data Mart é uma abordagem específica do DW, focada em uma área ou departamento

Dado x Informação

Os dados são os elementos básicos armazenados de forma marginal: por si somente não tem valor para a análise gerencial;
A colocação do dado em um contexto permite que o mesmo passe a gerar a informação, agregando valor à análise gerencial.

Características das ferramentas de BI para usuários finais

*Acesso aos dados e análise das informações;
*Busca dos dados de várias fontes, sendo possível o correlacionamento dos mesmos;
*Apresentação dos dados já agregados, trabalhados, contextualizados permitindo, assim, um melhor entendimento do negócio e um melhor planejamento das ações.

Ferramentas de BI


Planilhas eletrônicas
EIS ( Executive Information System)
Softwares de Query & Report
Ferramentas OLAP (On Line Analytical Processing)
Data Mining

Benefícios de um sistema de Business Intelligence

As ferramentas de Business Intelligence possibilitam a busca e interpretação de informações armazenadas na corporação, garantindo maior precisão nas tomadas de decisão.
Permite à Gerência de Conhecimento objetiva (KSM) estabelecer uma aproximação integrada e colaborativa para capturar, criar, organizar e usar todos os ativos de informação de uma empresa;
Antecipação às mudanças bruscas no mercado;
Antecipação às ações sobre os competidores;
Conhecimento sobre o negócio;
Aprendizado através do sucesso e falhas dos concorrentes;
Visão clara sobre novos negócios;
Auxílio na implementação de novas ferramentas gerenciais;
Conhecimento sobre novas tecnologias, produtos ou serviços que possam afetar direta e indiretamente o seu negócio.

Arquitetura de um Sistema de BI

Um Sistema típico de BI é composto pelas seguintes partes:
.Módulo de ETL: Componente dedicado à extração, carga e transformação de dados. É a parte responsável pela coleta das informações nas mais diversas fontes, desde sistemas ERP´s até arquivos TXT´s ou planilhas Excel.
.Data Mart / Datawarehouse: Local onde ficam concentrados todos os dados extraídos dos sistemas operacionais. A vantagem de ter um repositório de dados à parte é a possibilidade de armazenar informações históricas e agregadas, dando um suporte melhor para as análises posteriores.
.Front - End: É a parte visível ao usuário de um projeto de BI. Pode ser em forma de relatórios padronizados e ah hoc, portal de intranet / internet / extranet, análise OLAP e outras funções, como Data Mining e projeções de cenários futuros.



Dicionário de BI
Ad-Hoc Query (Consulta Eventual): Qualquer consulta que não possa ser determinada antes do momento da consulta ser emitida. Uma consulta que consiste em SQL construído dinamicamente, em geral por ferramentas de consultas residentes na estação de trabalho do usuário final.

Ad-Hoc Query Tool (Ferramenta de Eventual Consulta): Ferramenta de usuário final que aceita a solicitação de dados através de comandos em inglês, ou do tipo "apontar e clicar" e constrói uma consulta (Query) eventual para buscar um resultado desejado.

Banco de Dados Relacional: Sistema de Banco de Dados que suporta todos os comandos SQL padrão.

Catálogo: Componente do Banco de Dados que contém uma lista de seus objetos, bem como os atributos de cada objeto.

Cubo: Banco de Dados multi-dimensional, geralmente referindo-se à um caso simples de Produto, Mercado e Tempo.

Data Mining: Técnica que utiliza ferramentas de software geralmente orientadas para o usuário que não sabe exatamente o que está pesquisando, mas procura identificar determinados padrões ou tendências. O Data Mining (Garimpagem de Dados) é um processo que separa grandes quantidades de Dados de forma à identificar relacionamentos entre eles.

Database Marketing: Conceito Lógico de exploração de um Datawarehouse, onde os Dados cadastrais e comportamentais de uma base de Dados de Clientes são organizados de forma à favorecer a análise dos acontecimentos do Mercado Consumidor, prospectar novos clientes e definir possibilidades promocionais para incentivar o consumo. Este modelo de exploração do Datawarehouse agiliza o desenvolvimento das estratégias de Marketing.

Datawarehouse: Conjunto de tabelas que armazenam os dados do sistemas de operação (ERP´s, tarifadores, etc....) em um modelo multidimensional, possibilitando a exploração direcionada dos mesmos, melhorando as possibilidades de análises operacionais e gerenciais.

Dicionário de Dados: Base de Dados sobre os Dados. É um catálogo de todos os elementos de Dados e contém seus nomes, estruturas e informações sobre sua utilização. É um local centralizado para os metadados.Normalmente, os dicionários de Dados são projetados para armazenar / disponibilizar um conjunto limitado de metadados, concentrando - se nas informações relacionadas aos elementos dos dados, às bases de dados aos arquivos e aos programas dos sistemas implantados.

Drill: Modo de exploração de dados detalhados que foram usados na criação de um nível sumarizado de dados. Os níveis de aprofundamento dependem de granularidade dos dados existentes no Datawarehouse.
DSS (Decision Support System): Sistema de apoio à decisão. Nome genérico das ferramentas de BI que englobam o Datawarehouse, o Database Marketing, o EIS, os perfis e o Data Mining.

EIS (Executive Information System): consiste na agregação das informações em uma estrutura multidimensional a fim de suportar as necessidades de informações do nível gerencial da corporação. Por meio de indicadores ou dimensões predefinidas, os dados do datawarehouse serão sumarizados possibilitando o acesso direto a informações que demonstram os resultados e as principais tendências da sua carteira de clientes ativos.

Householding: Metodologia para consolidação de nomes e endereços.
Metadados (Metadata): são dados a respeito de dados. Exemplo de metadados incluem as descrições de elementos de dados, descrições de tipos de dados, atributos/ propriedades, faixas/ domínios, métodos e processos. O ambiente do respiratório abrange todos os recursos de metadados.

ODBC (Open Database Connectivity): conectividade de base de dados aberta. Padrão para acesso a banco de dados do SOL Access Group consortium adotado pela Microsoft.

OLAP (On-Line Analytical Processing): Processamento analítico on-line.
Perfis (profiling): muito semelhantes ao EIS, o Sales Channel Profiling permite a visualizaçao multidimensional atraves de indicadores cuidadosamente analisados e definidos para exibir o perfil comportamental da base de dados de revendas, permitindo categorizar o seu mercado consumidor baseado nos seus parceiros de negócios.

Query: termo que designa uma consulta a um Banco de dados.
Refresh: processo de extrair dados de um ambiente e de move-los para um outro ambiente substituindo, a cada vez, os dados antigos pelos novos.

SCP (Sales Channel Profiling): ver Perfis.
Slice and Dice: termo usado para descrever a função de analise de dados complexos proporcionada por algumas ferramentas de consulta e analise.
SQL (Structure Query Language): linguagem de consulta estruturada. Linguagem de consulta para acessar sistemas de base de dados ODBC, DRDA ou não relacional.

Refresh: processo de extrair dados de um ambiente e de move-los para um outro ambiente substituindo, a cada vez, os dados antigos pelos novos.
SCP (Sales Channel Profiling): ver Perfis.

Slice and Dice: termo usado para descrever a função de analise de dados complexos proporcionada por algumas ferramentas de consulta e analise.

SQL (Structure Query Language): linguagem de consulta estruturada. Linguagem de consulta para acessar sistemas de base de dados ODBC, DRDA ou não relacional.

Etapas a serem consideradas para a construção de DataWarehouse (DW)


1) Escolher quais os processos que se pretende modelar, construindo uma tabela de fatos correspondendo a cada processo escolhido.
2) Definir a granularidade de cada tabela de fatos para cada processo, especificando qual nível de detalhe a ser representado pelos fatos.
3) Definir as dimensões de cada tabela de fatos.
4) Identificar os fatos.
5) Analisar os atributos das dimensões, de modo a estabelecer descrições completas e terminologia apropriada.
6) Decisões sobre projeto físico: agregações, dimensões heterogêneas, mini-dimensões.
7) Prepara dimensões para suportar evoluções.
8) Definir a duração do banco de dados.
9) Definir a freqüência com que os dados devem ser extraídos e carregados no Datawarehouse.

A seguir discutimos cada um destes pontos:

1. Identificar quais os temas que se pretende modelar, correspondendo a cada tema escolhido, no mínimo uma tabela de fatos.
Lidam com pelo menos dois temas principais: a estocagem de produtos e a venda dos mesmos.

2. Definir a granularidade de cada tabela de fatos, especificando o nível de detalhamento.

Com relação á tabela de fatos (Ex: Pedidos), devemos verificar que o que nos interessa acompanhar são os pedidos anuais, com os devidos produtos para clientes. Isto é, queremos totalizar o valor dos pedidos, por exemplo, por cliente, por safra.

3. Definir as dimensões de cada tabela de fatos

a) As dimensões vão ser definidas conforme o que usuário quer. Intuitivamente, o usuário pode identificar cruzamentos de dados que lhe interessam. Por exemplo, é preciso visualizar os produtores por: produtividade, faixa etária e área afetada.

b) Uma tabela dimensões relativa a tempo deve existir, um Datawarehouse sempre pressupõe o acompanhamento dos dados através do tempo. No caso da dimensão tempo, é útil manter alguns atributos para documentar feriados e diferentes marcos de período significativos, tais como, dia da semana, semana do ano, estação do ano, flag-feriado, trimestre , quadrimestre, semestres,etc....

c) Resistir á separação das hierarquias encontradas em uma dimensão, em dimensões separadas. Não é necessário criar dimensões separadas para comportar hierarquias diferentes e/ou os atributos que não tomem parte da hierarquia embutida em uma dimensão. A ferramenta OLAP deve ser capaz de movimentar-se através de múltiplas hierarquias e atributos contidos em uma única dimensão.

4. Especificar os fatos

a) Expressar os fatos na menor granularidade, no caso de dimensão com hierarquia, os fatos devem ser expressos na menor granularidade da dimensão, como foi definido no passo seguinte. Isto é, a tabela de fatos não deve armazenar registro que representem totais referentes a um nível mais alto na hierarquia de uma dimensão. Na dimensão de PRODUTO, temos a hierarquia categórica/ subcategoria/ produto. Neste caso, cada registro na tabela de fatos deve indicar totais somente no nível de produtos. Isto é, não se deve manter registros que totalizem por categoria ou subcategoria.

b) Identificar valores aditivos, pois, valores aditivos são aqueles que podem ser manipulados à vontade (soma, subtração, etc...), nos movimentos em uma tabela de fatos. No caso vendedor, por exemplo, a tabela de Pedidos pode totalizar além das unidades vendidas, também o valor vendido, o valor descontado na venda , etc.

c) Identificar valores não aditivos, há valores que não podem ser manipulados livremente. Por exemplo, os valores percentuais ou relativos não são aditivos, sendo as computações sobre eles, feitas sobre os dados absolutos em que estão baseados.

d) Identificar valores semi-aditivos, pois, valores semi-aditivos são aqueles que os valores envolvem contagem dupla.Estes também devem ser manipulados cuidadosamente. Nestes casos, é possível somar se a dimensão não aditiva for restrita a um único valor.

e) Manter valores não aditivos para futuras manipulações, pois, todos os valores que medem um nível de intensidade, são valores estáticos não aditivos, que valem para o dado momento em que se tomou a medida, e não podem ser somados através do tempo. Mas ainda assim são valores que podem ser úteis para futuras manipulações.

5. Analisar os atributos das dimensões, de modo a estabelecer descrições completas e terminologia apropriada.
Identificar a dimensão mais significativa corresponde a cada tabela de fatos. Uma das dimensões é sempre a mais importante em um datawarehouse. No caso vendedor, a dimensão PRODUTO é a mais importante, e deve ser descrita com vários atributos, tais como: descrição, códigos de barras, marca, subcategoria, categoria, departamento, tamanho embalagem, tipo embalagem, peso, unidade peso, etc...

6. Decisões sobre projeto físico

a) Considerar relacionamentos M:N eventuais, em que dois atributos de uma dimensão que a possuam um relacionamento M:N, podem ser modelados em diferentes dimensões ou na mesma dimensão, á escolha do projetista. Nos casos em que a relação é originalmente 1:N, mas se torna M:N em caos eventuais, recomenda-se manter os atributos em uma única dimensão. Caso contrário é preferível mantê-los em dimensões separadas.

b) Rever dimensões populosas, pois, dimensões com muitas tuplas precisam de tratamentos especiais. Em uma primeira abordagem recomenda-se uma única tabela para preservar a performance de navegação e a simplicidade de interface com o usuário. Soluções de indexação especial já foram propostas, como por exemplo, a utilização de índices bitmap. Não é necessário indexar todos os atributos em uma dimensão, em especial aqueles mais descritivos, como o endereço na dimensão Cliente, não precisam ser indexados. Por outro lado, campos demográficos como idade, sexo, número de filhos, renda, nível de estudo, etc, são amplamente utilizados, e portanto devem ser indexados.

c) Criar mini-dimensões para melhorar a performance, existem atributos que são muito usados em cruzamento, como por exemplo, os chamados atributos demográficos (estado civil, idade, sexo, renda) de uma dimensão Cliente.Neste caso, a performance dos movimentos através destes atributos cai significativamente.

d) Definir agregações de acordo com as necessidades dos usuários. Ao fazer uso de agregações, deve-se ter em mente que se trata da ferramenta mais poderosa disponível em um Datawarehouse em termos de controle de desempenho. Uma agregação nada mais é do que uma tabela de fatos que sumariza outros fatos de nível mais baixo.As questões de performance são mais críticas nas aplicações de DataWarehouse. O fato de que um DW é um sistema de suporte a decisões de nível gerencial, faz surgir a necessidade de um DBA mais atento a satisfação do usuário final. Aspectos como, por exemplo, o custo da hora de trabalho de um executivo e o custo de armazenamento e carga dos dados, devem ser analisados e monitorados constantemente, com o objetivo de reavaliar a necessidade de agregação e índices.

e) Projetar a implementação das agregações: Existem duas técnicas de agregação: criação de novas tabelas de fatos agregadas e a criação de novos campos de indicação de nível de agregação nas tabelas dimensões. No primeiro caso, exige-se a criação de chaves artificiais em cada uma das dimensões que está sendo agregada. Já no caso da criação de campos de indicação do nível de agregação, os fatos agregados serão incluídos na própria tabela de fatos original. Observa-se que esta segunda opção não é a mais recomendada por gerar problemas de dupla contagem.

f) Controlar a explosão das agregações, pois, as agregações podem causar uma explosão do tamanho do Data Warehouse, no caso de processos comerciais.Uma das formas eficientes de controlar esta explosão é garantir que cada agregação sumarize mais de 10 ou 20 itens.

g) Balancear os índices entre as agregações, pois, a combinação do uso Índices em agregados é bastante interessante, pois tira da tabela de fatos o peso de carregar todos os índices, distribuídos por entre as tabelas de fatos agregadas.

7.
Preparar dimensões para suportar evoluções

a) Prever evoluções lentas, onde, os campos descritivos em geral evoluem lentamente ao longo do tempo.Isto é, no caso da Dimensão cliente, uma mudança freqüente é quanto ao estado civil: pessoas se casam, enviuvessem, etc... O problema é como garantir a manutenção do histórico dos dados através do tempo, acompanhando a sua evolução.

b) Não manter o histórico, e simplesmente sobrescrever, para o caso de não necessitar do histórico. A única vantagem destas solução é a facilidade de implantação, pois a única mudança ocorre na tabela Dimensão. Se a mudança for necessária por motivo de erro no cadastro, então esta solução deve ser adotada. Mas para os demais casos, esta solução não é ideal, pois não atinge o objetivo de manter o acompanhamento histórico dos dados.

c) Adicionar um novo registro, com uma nova chave, e a nova descrição. Esta solução demanda que a chave seja genérica, podendo-se adotar o formato de chave com dígitos da versão ao final.As chaves genéricas devem ser descritas nos metadados, de tal forma que as aplicações de navegações sejam capazes de manipulá-las.

d) Usar mini-dimensões para facilitar evoluções, pois, a idéia de mini-dimensões pode ser vista como uma solução para o problema das mudanças. No caso de atributos demográficos que mudam mais freqüentemente, por exemplo, seria útil separa-los em uma mini-dimensão,onde se armazena todas as combinações possíveis dos valores de cada atributo.

8. Definir a duração do banco de dados

Estabelecer uma previsão do período de tempo em que o Banco de Dados vai ser utilizado pelo Datawarehouse.

9. Definir a freqüência com que os dados devem ser extraídos e carregados no Datawarehouse

Estabelecer um período de tempo para que os dados sejam retirados e colocados ou atualizados no DataWarehouse.



Redes Neurais

Os modelos neurais, procuram aproximar o processamento dos computadores ao cérebro. As redes neurais possuem um grau de interconexão similar a estrutura dos cérebro e um computador convencional moderno a informação é transferida em tempos específicos dentro de um relacionamento com um sinal para sincronização.
A tabela abaixo, traça um comparativo entre o cérebro humano e o computador:

Parâmetro Cérebro Computador
Material Orgânico Metal e plástico
Velocidade Milisegundos Nanosegundos
Tipo de Processamento Paralelo Seqüencial
Armazenamento Adaptativo Estático
Controle de Processos Distribuído Centralizado
Número de elementos processados 10 e 11 à 10 e 14 10 e 5 à 10 e 6
Ligações entre elementos processados 10.000 <10

Tabela 01 - Quadro comparativo entre cérebro e o computador

       O mesmo paralelo pode ser traçado comparando o computador com as redes neurais. Para tanto, a comparação não se dará com um computador específico encontrado no mercado, mas sim com o paradigma predominante nos computadores atuais.

Computadores Neurocomputadores
Executa programas Aprende
Executa operações lógicas Executa operações não lógicas, transformações, comparações
Depende do modelo ou do programador Descobre as relações ou regras dos dados e exemplos
Testa uma hipótese por vez Testa todas as possibilidades em paralelo

  • Tabela 02 - Quadro comparativo entre computadores e neurocomputadores


    As redes neurais artificiais consistem em um método de solucionar problemas de inteligência artificial, construíndo um sistema que tenha circuitos que simulem o cérebro humano, inclusive seu comportamento, ou seja, aprendendo, errando e fazendo descobertas. São mais que isso, são técnicas computacionais que apresentam um modelo inspirado na estrutura neural de organismos inteligentes e que adquirem

    conhecimento através da experiência. Uma grande rede neural artificial pode ter centenas ou milhares de unidades de processamento, enquanto que o cérebro de um mamífero pode ter muitos bilhões de neurônios.

    Apesar da complexidade da redes neurais não permitir uma única definição, as linhas seguintes seguem como uma tentativa das inúmeras definições ou interpretações do que seja realmente uma rede neural.

    Um grafo direcionado é um objeto geométrico que consiste de um conjunto de pontos, chamados nós, ao longo de um conjunto de segmentos de linhas direcionadas entre eles. Uma rede neural é uma estrutura de processamento de informação distribuída paralelamente na forma de um grafo direcionado, com algumas restrições e definições próprias. Os nós deste grafo são chamados elementos de processamento. Suas arestas são conexões, que funcionam como caminhos de condução instantânea de sinais em uma única direção, de forma que seus elementos de processamento podem receber qualquer número de conexões de entrada. Estas estruturas podem possuir memória local, e também possuir qualquer número de conexões de saída desde que os sinais nestas conexões sejam os mesmos. Portanto, estes elementos tem na verdade uma única conexão de saída, que pode dividir-se em cópias para formar múltiplas conexões, sendo que todos carregam o mesmo sinal.

    Então, a única entrada permitida para a função de transferência (que cada elemento de processamento possui) são os valores armazenados na memória local do elemento de processamento e os valores atuais dos sinais de entrada nas conexões recebidas pelo elemento de processamento. Os únicos valores de saída permitidos a partir da função de transferência são valores armazenados na memória local do elemento de processamento, e o sinal de saída do mesmo.

    A funcão de transferência pode operar continuamente ou episodicamente. Sendo que no segundo caso, deve existir uma entrada chamada "activate" que causa o ativamento da função de transferência com o sinal de entrada corrente e com valores da memória local, e produzir um sinal de saída atualizado (ocasionalmente alterando valores da memória). E no primeiro caso, os elementos estão sempre ativados, e a entrada "activate" chega através de uma conexão de um elemento de processamento agendado que também é parte da rede.

    Sinais de entrada para uma rede neural a partir de fora da rede chegam através de conexões que se originam do mundo externo, saídas da rede para o mundo externo são conexões que deixam a rede.

    De forma geral, a operação de uma célula da rede se resume em:
  • Sinais são apresentados à entrada
  • Cada sinal é multiplicado . por um peso que indica sua influência na saída da unidade.
  • É feita a soma ponderada dos sinais que produz um nível de atividade.
    Se este nível excede um limite (threshold) a unidade produz uma saída.

    1. O Neurônio Artificial e a Rede Neural

    Assim como o sistema nervoso é composto por bilhões de células nervosas, a rede neural artificial também seria formada por unidades que nada mais são que pequenos módulos que simulam o funcionamento de um neurônio. Estes módulos devem funcionar de acordo com os elementos em que foram inspirados, recebendo e retransmitindo informações.

    2.O Neurônio Artificial

    O fisiologista Warrem MacCulloch interpretou o funcionamento do neurônio biológico como sendo um circuito de entradas binárias combinadas por uma soma ponderada (com pesos) produzindo uma entrada efetiva:


    fig06-Modelo de McCulloch e Pitts
    No modelo geral de neurônio (fig06) as entradas WiUi são combinadas usando uma função F, para produzir um estado de ativação do neurônio (correspondente à freqüência de descarga do neurônio biológico).As entradas chegam através dos dentritos e tem um peso atribuído pela sinapse.


    fig07-Esquema de um neurônio artificial
    A funcão básica de um neurônio é somar as entradas e retornar uma saída, caso esse valor seja maior que o valor de soma (threshold).

    3. A Rede Neural Artificial (Multilayer Perceptron)

             A rede neural artificial é um sistema de neurônios ligados por conexões sinápticas e dividido em neurônios de entrada, que recebem estímulos do meio externo, neurônios internos ou hidden (ocultos) e neurônios de saída, que se comunicam com o exterior. A forma de arranjar perceptrons em camadas é denominado Multilayer Perceptron. O multilayer perceptron foi concebido para resolver problemas mais complexos, os quais não poderiam ser resolvidos pelo modelo de neurônio básico. Um único perceptron ou uma combinação das saídas de alguns perceptrons poderia realizar uma operação XOR, porém, seria incapaz de aprendê-la. Para isto são necessárias mais conexões, os quais só existem em uma rede de perceptrons dispostos em camadas. Os neurônios internos são de suma importância na rede neural pois provou-se que sem estes torna-se impossível a resolução de problemas linearmente não separáveis. Em outras palavras pode-se dizer que uma rede é composta por várias unidades de processamento, cujo funcionamento é bastante simples. Essas unidades, geralmente são conectadas por canais de comunicação que estão associados a determinado peso. As unidades fazem operações apenas sobre seus dados locais, que são entradas recebidas pelas suas conexões. O comportamento inteligente de uma Rede Neural Artificial vem das interações entre as unidades de processamento da rede.

    A maioria dos modelos de redes neurais possui alguma regra de treinamento, onde os pesos de suas conexões são ajustados de acordo com os padrões apresentados. Em outras palavras, elas aprendem através de exemplos. Arquiteturas neurais são tipicamente organizadas em camadas, com unidades que podem estar conectadas às unidades da camada posterior.

    A rede neural passa por um processo de treinamento a partir dos casos reais conhecidos, adquirindo, a partir daí, a sistemática necessária para executar adequadamente o processo desejado dos dados fornecidos. Sendo assim, a rede neural é capaz de extrair regras básicas a partir de dados reais, diferindo da computação programada, onde é necessário um conjunto de regras rígidas pré-fixadas e algoritmos.


    fig08-Organização em camadas.

    Usualmente as camadas são classificadas em três grupos:

    - Camada de Entrada: onde os padrões são apresentados à rede.

    - Camadas Intermediárias ou Ocultas: onde é feita a maior parte do processamento, através das conexões ponderadas; podem ser consideradas como extratoras de características.

    - Camada de Saída: onde o resultado final é concluído e apresentado.

    Redes neurais são também classificadas de acordo com a arquitetura em que foram implementadas, topologia, características de seus nós, regras de treinamento, e tipos de modelos.

    Passos necessários para o desenvolvimento de aplicações utilizando redes neurais artificiais.

    1 e 2. Coleta de dados e separação em conjuntos

    Os dois primeiros passos do processo de desenvolvimento de redes neurais artificiais são a coleta de dados relativos ao problema e a sua separação em um conjunto de treinamento e um conjunto de testes. Esta tarefa requer uma análise cuidadosa sobre o problema para minimizar ambiguidades e erros nos dados. Além disso, os dados coletados devem ser significativos e cobrir amplamente o domínio do problema; não devem cobrir apenas as operações normais ou rotineiras, mas também as exceções e as condições nos limites do domínio do problema.

          Normalmente, os dados coletados são separados em duas categorias: dados de treinamento, que serão utilizados para o treinamento da rede e dados de teste, que serão utilizados para verificar sua performance sob condições reais de utilização. Além dessa divisão, pode-se usar também uma subdivisão do conjunto de treinamento, criando um conjunto de validação, utilizado para verificar a eficiência da rede quanto a sua capacidade de generalização durante o treinamento, e podendo ser empregado como critério de parada do treinamento.

    Depois de determinados estes conjuntos, eles são geralmente colocados em ordem aleatória para prevenção de tendências associadas à ordem de apresentação dos dados. Além disso, pode ser necessário pré-processar estes dados, através de normalizações, escalonamentos e conversões de formato para torná-los mais apropriados à sua utilização na rede.

    3. Configuração da rede

    O terceiro passo é a definição da configuração da rede, que pode ser dividido em três etapas:

    3.1 Seleção do paradigma neural apropriado à aplicação.

    3.2 Determinação da topologia da rede a ser utilizada - o número de camadas, o número de unidades em cada camada, etc.

    3.3 Determinação de parâmetros do algoritmo de treinamento e funções de ativação. Este passo tem um grande impacto na performance do sistema resultante. Existem metodologias, "dicas" e "truques" na condução destas tarefas. Normalmente estas escolhas são feitas de forma empírica. A definição da configuração de redes neurais é ainda considerada uma arte, que requer grande experiência dos projetistas.

    4. Treinamento

    O quarto passo é o treinamento da rede. Nesta fase, seguindo o algoritmo de treinamento escolhido, serão ajustados os pesos das conexões. É importante considerar, nesta fase, alguns aspectos tais como a inicialização da rede, o modo de treinamento e o tempo de treinamento.

    Uma boa escolha dos valores iniciais dos pesos da rede pode diminuir o tempo necessário para o treinamento. Normalmente, os valores iniciais dos pesos da rede são números aleatórios uniformemente distribuídos, em um intervalo definido. A escolha errada destes pesos pode levar a uma saturação prematura. Nguyen e Widrow encontraram uma função que pode ser utilizada para determinar valores iniciais melhores que valores puramente aleatórios.

    Quanto ao modo de treinamento, na prática é mais utilizado o modo padrão devido ao menor armazenamento de dados, além de ser menos suscetível ao problema de mínimos locais, devido à pesquisa de natureza estocástica que realiza. Por outro lado, no modo batch se tem uma melhor estimativa do vetor gradiente, o que torna o treinamento mais estável. A eficiência relativa dos dois modos de treinamento depende do problema que está sendo tratado.

    Quanto ao tempo de treinamento, vários fatores podem influenciar a sua duração, porém sempre será necessário utilizar algum critério de parada. O critério de parada do algoritmo backpropagation não é bem definido, e geralmente é utilizado um número máximo de ciclos. Mas, devem ser considerados a taxa de erro médio por ciclo, e a capacidade de generalização da rede. Pode ocorrer que em um determinado instante do treinamento a generalização comece a degenerar, causando o problema de over-training, ou seja a rede se especializa no conjunto de dados do treinamento e perde a capacidade de generalização.

    O treinamento deve ser interrompido quando a rede apresentar uma boa capacidade de generalização e quando a taxa de erro for suficientemente pequena, ou seja menor que um erro admissível. Assim, deve-se encontrar um ponto ótimo de parada com erro mínimo e capacidade de generalização máxima.

    5. Teste

    O quinto passo é o teste da rede. Durante esta fase o conjunto de teste é utilizado para determinar a performance da rede com dados que não foram previamente utilizados. A performance da rede, medida nesta fase, é uma boa indicação de sua performance real.

    Devem ser considerados ainda outros testes como análise do comportamento da rede utilizando entradas especiais e análise dos pesos atuais da rede, pois se existirem valores muito pequenos, as conexões associadas podem ser consideradas insignificantes e assim serem eliminadas (prunning). De modo inverso, valores substantivamente maiores que os outros poderiam indicar que houve over-training da rede.

    6. Integração

    Finalmente, com a rede treinada e avaliada, ela pode ser integrada em um sistema do ambiente operacional da aplicação. Para maior eficiência da solução, este sistema deverá conter facilidades de utilização como interface conveniente e facilidades de aquisição de dados através de planilhas eletrônicas, interfaces com unidades de processamento de sinais, ou arquivos padronizados. Uma boa documentação do sistema e o treinamento de usuários são necessários para o sucesso do mesmo.

    Além disso, o sistema deve periodicamente monitorar sua performance e fazer a manutenção da rede quando for necessário ou indicar aos projetistas a necessidade de retreinamento. Outras melhorias poderão ainda ser sugeridas quando os usuários forem se tornando mais familiares com o sistema, estas sugestões poderão ser muito úteis em novas versões ou em novos produtos.
  • Produtos A VM2 Clientes Contato Cases Home

    Web Sites, Portais, Criação e Design Digital, Sistemas Web ( B2B, B2C, e-commerce, Loja Virtual, Comércio Eletrônico, Content Management System, Intranet, Extranet, e-learning, etc), Second Life, Mobile Marketing, Marketing Digital e Mídia online, Links Patrocinados. Consultoria e Planejamento Estratégico Digital. Otimização de Site. SEO - SEM - Search Engine Marketing e Optimization. Fábrica de Software. Uma Agencia Digital Completa.

    2000 - 2010 Agência VM2 Interatividade Digital. Todos os direitos reservados.

    FULL SERVICE INTERACTIVE AGENCY