quinta-feira, 24 de setembro de 2009

Sistemas de Visão, Aprendizado, Redes Neurais e Fala


Sistemas de Visão
Visão computacional é a ciência e tecnologia das máquinas que enxergam. Como uma disciplina científica, está preocupada com a teoria para criar sistemas artificiais que possam obter informações a partir de imagens. Os dados de uma imagem podem ter diversas formas, como uma seqüência de vídeos, fotos de diferentes ângulos, ou dados multidimensionais de aparelhos médicos.
Como uma disciplina tecnológica, a visão computacional procura aplicar as teorias e modelos à construção de sistemas de visão. Exemplos de Aplicações de sistemas de visão computacional que incluem sistemas para:
  • Controlar processos – Ex: um robô industrial ou um veículo autônomo (sem motorista)
  • Detectar eventos – Ex: monitoramento de câmeras de segurança, ou contagem de pessoas
  • Organizar informação – Ex: Indexar banco de dados de imagens e de seqüência de imagens
  • Modelar objetos ou ambientes – Ex: Inspeção industrial, análise de imagens médicas, modelagem topográfica
  • Interação – Ex: entrada para um dispositivo de interação computador-humano
Visão computacional também pode ser descrita como um complemento (mas não necessariamente o oposto) de visão biológica. Na visão biológica, a percepção visual dos humanos e de vários animais é estudada, resultando em modelos de como esses sistemas operam em termos de processos fisiológicos. Visão computacional, de outro lado, estuda e descreve sistemas de visão artificial que são implementados em software e/ou hardware. A troca interdisciplinar entre visão biológica e computacional tem rendido bons frutos para ambos os campos.
Visão computacional engloba áreas como reconstrução de cenas, detecção de eventos, rastreamento, reconhecimento de objetos, aprendizagem, indexação, cálculo de movimentos, e restauração de imagens.

Processamento de Linguagem Natural
Reconhecimento de fala converte palavras faladas em comandos de máquina. O termo “reconhecimento de voz” algumas vezes é usado para se referir ao reconhecimento de fala onde o sistema é treinado para atender a um narrador específico, como é o caso da maioria dos programas existentes para computadores. Portanto, possui características de reconhecimento de narrador, que tenta identificar a pessoa que está falando, para melhor interpretar o que está sendo falado. O reconhecimento de fala é um termo mais amplo, o que significa que pode reconhecer praticamente a fala de qualquer pessoa, como em um sistema de callcenter desenvolvido para reconhecer muitas vozes. Reconhecimento de voz é um sistema treinado para um usuário em particular, onde reconhece a fala baseado no tom de voz único da pessoa.
Aplicações para reconhecimento de fala incluem discagem por voz (Ex: Ligue para Casa), transferência de chamadas (Ex: Gostaria de solicitar a segunda via da minha conta), entrada de dados (Ex: Para começar, fale o número do seu telefone, digito por dígito), voz –para-texto (onde a as palavras faladas são transcritas em um processador de texto).

Sistemas de aprendizado
A aprendizagem de máquinas é uma disciplina científica que está preocupada com o design e o desenvolvimento de algoritmos que permitam computadores à aprender baseado em dados, como os de um sensor, ou de banco de dados. O maior foco de pesquisa está em automaticamente aprender a reconhecer padrões complexos e tomar decisões inteligentes baseado nos dados. Portanto, aprendizagem de máquinas está intimamente ligada a campos como estatísticas, teoria da probabilidade, mineração de dados, reconhecimento de padrões, inteligência artificial, controle adaptativo, e ciência computacional teórica.

Redes neurais
Redes neurais artificiais (geralmente chamadas “redes neurais”) são modelos matemáticas ou computacionais que tentam simular a estrutura e/ou aspectos funcionais de redes neurais biológicas. Consistem em um grupo interconectado de neurônios artificiais e processa informação usando uma aproximação conexionista à computação. Na maioria dos casos, redes neurais artificiais são sistemas adaptativos que mudam suas estruturas durante a fase de aprendizagem. Redes neurais são ferramentas de dados estatísticos não lineares. Podem ser usadas para modelar com relacionamentos complexos entre entradas e saídas ou para encontrar padrões em dados.

6 comentários:

  1. Eis alguns exemplos de Máquinas que demonstram algum nível de "inteligência":

    * The Start Project - Um sistema baseado em internet que responde a perguntas em inglês.
    * Cyc - Uma base de conhecimento com coleção vasta dos fatos sobre o mundo real e a habilidade lógica do raciocínio.
    * A.L.I.C.E. - Um chatterbot.
    * Alan - Outro chatterbot.
    * ELIZA - Um programa que simula um psicoterapeuta, desenvolvido na década de 1960.
    * PAM (Plan Applier Mechanism) - Um entendedor de histórias desenvolvido em 1978 por John Wilenksy.
    * SAM (Script applier mechanism) - Um entendedor de histórias desenvolvido em 1975..
    * SHRDLU - HRDLU era um programa de computador adiantado da compreensão de língua natural, desenvolvido em 1968-1970
    * Creatures - um jogo de computador com produção que envolvia criatura codificada de um código genético superior utilizando um sofisticado biochemistry e cérebros de rede neural.
    * BBC news story A ultima criação do criador de Creatures . Steve Grand's Lucy.
    * EURISKO - uma linguagem para resolver problema que concistam em heuristics, incluindo a descrição do heuristics explicando como usa-lo e modifica-lo. Desenvolvido em 1978 por Douglas Lenat.
    * AM - Precursor do EURISKO foi um programa desenvolvido pelo mesmo autor com o objetivo de aprender sozinho conceitos novos no domínio da matemática.
    * X-Ray Vision for Surgeons - grupo no MIT que investigou visão médica.
    * Neural networks-based progams for backgammon and go.
    * Cortex - Programa aprende ao ler textos, Jornal Público.PT

    ResponderExcluir
  2. Inteligência artificial forte

    A investigação em Inteligência Artificial Forte aborda a criação da forma de inteligência baseada em computador que consiga raciocinar e resolver problemas; uma forma de IA forte é classificada como auto-consciente.

    Inteligência artificial fraca

    Trata-se da noção de como lidar com problemas não determinísticos.

    ResponderExcluir
  3. Aplicações práticas de IA

    Robótica: Muitos cirurgiões agora utilizam robôs assistentes em microcirurgias. O HipNav é um sistema que emprega técnicas de visão computacional para criar um modelo tridimensional da anatomia interna de um paciente, e depois utiliza controle robótico para orientar a inserção de uma prótese de substituição do quadril.

    ResponderExcluir
  4. Com o sistema de aprendizado, a maquina pode fazer atualizações baseadas em sua "vivencia", porem temos em mentes que existem limites físicos em armazenagem e informação ou ate limites em suas funcionalidades"movimento, fala). De que maneira a maquina reagiria a esses limites? seria sempre necessária a mão humana para romper esses limites. Ou uma inteligência artificial com capacidade de criatividade de grande escala.

    ResponderExcluir
  5. As redes neurais artificiais são um método para solucionar problemas através da simulação do cérebro humano, inclusive em seu comportamento, ou seja, aprendendo, errando e fazendo descobertas. 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.

    ResponderExcluir
  6. @SIG: Exato, existem muitos outros exemplos. Obrigado pelas informações, estarei incluindo-as no post.

    @Tiê: Isso mesmo, os teóricos consideram duas propostas básicas: a IA Forte e a IA Fraca. Suas informações serão incluídas no post.

    @Tiê: Este é um ótimo exemplo de Sistemas de Visão. Assim que possível estarei adicionando este exemplo ao post.

    @Casimiro: Creio que num futuro próximo, as próprias máquinas terão o poder de romper seus limites e “evoluir” sozinhas, parece um pouco de ficção, mas se formos analisar mais calmamente, tudo nos leva a pensar isso. Algo do tipo “O Exterminador do Futuro”! :-)

    @Roberta e Marcela: Exatamente. Redes neurais são capazes de identificar padrões e resolver problemas complexos graças à sua própria estrutura. Mesmo que um nó neural pare de funcionar, isto não afeta o funcionamento da rede como um todo.

    ResponderExcluir