SlideShare uma empresa Scribd logo
1 de 22
O Modelo HTM e Sua Aplicação No 
Processamento de Linguagem Natural 
Felipe Rayel 
I A 8 8 9 – S I S T E M A S D E C O G N I Ç Ã O A R T I F I C I A L 
F A C U L D A D E D E E N G E N H A R I A E L É T R I C A E D E C O M P U T A Ç Ã O U N I C A M P 
N O V E M B R O / 2 0 1 4
Visão Geral 
• O neocórtex: 
• Área mais evoluída do córtex 
• Recobre os lobos frontais dos mamíferos 
• Tem espessura de uns 2 mm e está dividido em seis camadas 
• Proporciona as habilidades cognitivas mais complexas (somente o 
neocórtex?) 
• Aproximadamente 30 bilhões de neurônios 
• Exibe um padrão uniforme de circuitos neurais. 
• Evidências biológicas sugerem que o neocórtex implementa um 
conjunto de algoritmos para executar muitas funções distintas da 
inteligência.
Visão Geral 
• Hierarchical Temporal Memory (HTM): 
• Tecnologia de aprendizagem de máquina 
• Visa capturar as propriedades estruturais e algorítmicas do 
neocórtex. 
• Qualquer sistema que tenta modelar os detalhes da arquitetura 
do neocórtex é uma rede neural. 
• São um tipo de rede neural (nova forma de rede neural) 
• Paradigma Conexionista 
• Teoria de função cerebral descrita por Jeff Hawkins no seu livro 
“On Intelligence” (2004). 
• Modelam neurônios (células), organizados em colunas, camadas 
e regiões em uma hierarquia.
HTM 
• Desenvolvimento: 
• Numenta 
• Fundada em 2005 pelo criador da Palm Jeff Hawkins. 
• Para uso comercial e cientifico.
Neurônios 
• Neurônio biológico 
• Sinapses proximais (em verde) 
• Se conectam verticalmente com neurônios da mesma coluna. 
• Podemos dizer que as entradas para os dendritos proximais são somadas 
linearmente no corpo da célula. 
• Sinapses distais (azul) 
• Se conectam de forma horizontal com outras colunas, são numerosas e 
têm pouca influência por estar longe dele. 
• Se um número suficiente de sinapses se tornar ativa ao mesmo tempo, 
poderão gerar um pico dendrítico. 
• Portanto, podemos dizer estes dendritos atuam como um conjunto de 
detectores de limites de coincidência. 
• Célula HTM 
• Cada célula HTM tem um único dendrito proximal. 
• A atividade das sinapses é linearmente somada para produzir uma 
ativação. 
• Cada célula HTM mantém uma lista de segmentos dendríticos 
distais. 
• Cada segmento atua como um detector de limite. 
• Se o número de sinapses ativas em qualquer um está acima de 
um limite, o segmento se torna ativo, e as células associadas 
entram em estado preditivo
Regiões 
• Regiões HTM são compostas por muitas células. 
• As células são organizadas em uma matriz bidimensional de colunas. 
• A figura mostra uma pequena parte de uma região HTM com quatro células por coluna
Hierarquia 
• A rede HTM é composta por regiões 
organizadas em uma hierarquia de 
camadas. 
• O benefício da organização hierárquica é a 
eficiência: 
• Reduz significativamente o tempo de 
treinamento e uso da memória 
• Padrões aprendidos em cada nível da 
hierarquia são reutilizados quando 
combinados de forma inédita em níveis 
mais altos. 
• Por exemplo: 
• Quando você aprende uma nova 
palavra, você não precisa reaprender 
letras, sílabas ou fonemas.
Hierarquia 
• Nível mais baixo: 
• O cérebro armazena informações sobre seções 
pequenas do campo visual. (bordas, cantos, etc) 
• Nível Médio: 
• Combinações de padrões de baixo nível 
• Formação de componentes mais complexos. (curvas, 
texturas, etc) 
• Um arco pode ser a ponta de uma orelha, o topo de um 
volante ou a borda de um copo de café. 
• Nível Alto: 
• Combinações de padrões de nível médio 
• Representam características de objetos (cabeças, 
carros, casas, etc.) 
• Para aprender um novo objeto de alto nível você não 
tem que reaprender seus componentes.
Representação Distribuída Esparsa 
 Neocórtex: a informação é representada por uma pequena porcentagem de neurônios ativos ao 
mesmo tempo. 
• Uma região pode receber 20.000 bits de entrada: 10010101010010100000111001011001... 
• A porcentagem de "1" e "0" pode variar ao longo do tempo. 
• A região HTM reduz esta entrada em uma representação interna de 10.000 bits, dos quais 2%, ou 
200, estão ativos ao mesmo tempo, independentemente de quantos dos bits de entrada forem 
"1“. 
• Com a variação da entrada ao longo do tempo, a representação interna sempre terá 200 bits 
ativos entre os 10.000 possíveis. 
• Isso garante pouca variação entre sequências de representações ao longo do tempo. 
• Pode parecer que esse processo gera uma grande perda de informações, porém a perda de 
informações teóricas não terá um efeito prático.
Aprendizagem 
• Tempo: 
• Desempenha um papel crucial na aprendizagem, inferência e predição. 
• Sem o tempo, não podemos inferir quase nada dos nossos sentidos tátil 
e auditivo. 
• Por exemplo, se você estiver de olhos fechados e alguém colocar uma 
maçã em sua mão, você poderá identificar o que é só depois de 
manipulá-la por um segundo ou mais. 
• Algoritmos HTM: 
• Aprendem as sequências temporais de um fluxo de dados de entrada 
• Constroem um modelo dos padrões que seguem outros padrões. 
• São capazes de "aprendizagem on-line“ como em um sistema biológico: 
• Aprendem continuamente a partir de cada nova entrada. 
• Não há necessidade de uma fase de aprendizagem isolada de uma fase de 
inferência, embora a inferência melhore depois de aprender mais.
Aprendizagem 
• Inativando a aprendizagem: 
• Pode-se desligar a aprendizagem só nos níveis mais baixos da 
hierarquia, mas continuar a aprender com os níveis mais elevados. 
• Uma vez que uma HTM tenha aprendido a estrutura estatística 
básica de seu mundo, aprendizagens mais novas só ocorrerão nos 
níveis superiores da hierarquia. 
• Se uma HTM é exposta a novos padrões que têm estrutura de baixo 
nível inéditas, vai levar mais tempo para a HTM aprender estes 
novos padrões. 
• Vemos essa característica nos seres humanos (Neuro-Darwinismo 
de Edelman) 
• Ex: Tentar aprender idiomas estrangeiros
Inferência 
• Depois de uma HTM aprender os padrões no seu mundo, ela 
pode fazer inferências em cima de novas entradas. 
• Quando uma HTM recebe a entrada, ela a compara com os 
padrões espaciais e temporais aprendidos anteriormente. 
• Por exemplo: 
• Ouvir a primeira nota de uma melodia diz-lhe pouco. 
• A segunda nota reduz significativamente as possibilidades, mas 
ainda pode não ser suficiente. 
• Normalmente, leva-se três, quatro ou mais notas antes de você 
reconhecer a melodia. 
• A inferência em uma região HTM é semelhante.
Inferência 
• Toda experiência sensorial parece ser nova. 
• Por exemplo: a palavra café dita diversa vezes por pessoas 
diferentes não estimula o sistema auditivo exatamente da mesma 
forma. 
• A região HTM enfrenta o mesmo problema que o seu cérebro: as 
entradas podem não se repetir exatamente. 
• Representações Distribuídas Esparsas: 
• É um modo de uma região HTM lidar com a nova entrada. 
• Você só precisa combinar uma parte do padrão de forma a 
assegurar que a combinação seja significante.
Predição 
• “Pra bom entendedor meia palavra basta” - Provérbio Brasileiro 
• Aprender e reconhecer sequências. 
• Após aprender sequência de padrões pode predizer o próximo padrão provável 
dado a entrada atual e as últimas entradas passadas. 
• Regiões HTM armazenam transições entre representações distribuídas esparsas. 
T1 T2 Tn Predição 
• Quando uma célula torna-se ativa, faz conexões (sinapses distais) com outras 
células que estavam ativas pouco antes. As células podem então predizer quando 
elas vão se tornar ativas, fazendo uma busca nas suas conexões. 
• Não há nenhuma central de armazenamento para uma sequência de padrões; 
• A memória é distribuída entre as células individuais. Devido a memória ser 
distribuída, o sistema é robusto ao ruído e ao erro.
Nupic 
• NuPIC (Numenta Platform for Intelligent Computing) 
• Software que implementa uma rede HTM 
• Projeto Open Source GPL v3 
• Desenvolvido em Python e C++ 
• github.com/numenta/nupic 
• Port para Java: github.com/numenta/htm.java 
• O uso e propriedade intelectual é livre para fins de pesquisa.
Cortical.IO 
• www.cortical.io 
• Inspirada a partir da teoria HTM 
• Fundada em 2011 (Vienna) por Francisco Webber 
• Engine Cortical para Procesamento de texto. 
• Promete tornar a linguagem natural compreensível para a máquina 
• Desenvolve e comercializa a tecnologia. 
• Uso como SaS (Software as Service) 
• Uso como AMI (Amazon Machine Image)
Semantic Fingerprint 
• Representam palavras, sentenças ou documentos 
inteiros. 
• São SDRs (Sparse Distributed Representation) 
• Retina 
• Componente central da tecnologia Cortical.IO 
• Codifica palavras da mesma forma que as informações 
sensoriais alimentam o cérebro. 
• Utiliza 16.000 caracteristicas semanticas para cada 
termo.
Semantic Fingerprint 
Porsche Jaguar
Aplicação 
• Nupic NLP (Natural Language Processing) 
• Numenta Nupic + Cortical IO Cept API (Retina) 
• Apresentado no Hackaton em 2013 por Subutai Ahmad 
• github.com/subutai/nupic_nlp
Aplicação 
Primeiro Termo Segundo Termo Terceiro Termo Predição 
1 jaguar is car 
2 porsche is car car 
3 wolf is animal car 
4 fox is animal animal 
5 ferrari is ? car 
6 horse is ? animal 
 Aprendizado de uma gramática de três palavras. 
 Usar os primeiros e segundos termos como contexto para prever o 
terceiro termo. 
 Apos treinamento, o algoritimo cortical pode prever sem nunca ter 
visto a palavra. 
 São semanticamente semelhante pois possuem SDRs próximos. 
 Jaguar, Porsche, Ferrari 
 Wolf, Fox, Horse
Conclusões 
• A teoria HTM não é definitiva e tem sido aprimorada. 
• Ainda há pouca literatura a respeito 
• Pouco interesse da comunidade 
• Iniciativas tem sido feitas pela numenta através de hackatons para tentar 
popularizar a tecnologia. 
• O Engine Cortical da Cortical.IO resolve o problema do Symbol Grounding 
para palavras isoladas, porém não para sentenças. 
• Cortical IO Não reconhece palavras em outros idiomas. 
• Em 2012 Laboratório em Chicago confirmou a teoria de que as aves 
possuem uma estrutura com a mesma funcionalidade do neocórtex (DVR). 
(Harvey Karten, 1960)
Referências 
• HIERARCHICAL TEMPORAL MEMORY 
• Jeff Hawkins, Subedei Ahmad, Donna Dubinsky, (Numenta), 2011 
• O Modelo Cortical HTM e sua Aplicação na Classificação de Gêneros 
Musicais 
• Pedro Tabacof, 2011 
• http://www.cortical.io/developers_tutorials.html 
• Cortical.io Dev Team, 2014

Mais conteúdo relacionado

Semelhante a O modelo htm e sua aplicação no processamento de linguagem natural

COMO O CÉREBRO APRENDE - Cómo Aprende el Cerebro
COMO O CÉREBRO APRENDE - Cómo Aprende el CerebroCOMO O CÉREBRO APRENDE - Cómo Aprende el Cerebro
COMO O CÉREBRO APRENDE - Cómo Aprende el CerebroIFRS - Campus Sertão
 
Introdução às Redes Neurais - Parte 1/2
Introdução às Redes Neurais - Parte 1/2Introdução às Redes Neurais - Parte 1/2
Introdução às Redes Neurais - Parte 1/2Bruno Catão
 
Visitando a literatura em redes neurais recorrentes
Visitando a literatura em redes neurais recorrentesVisitando a literatura em redes neurais recorrentes
Visitando a literatura em redes neurais recorrentesDiogenes Freitas
 
Extreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe DelphiExtreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe DelphiMario Guedes
 
"Mostrando a Cobra" - ou Breve Introdução à Linguagem Python
"Mostrando a Cobra" - ou Breve Introdução à Linguagem Python"Mostrando a Cobra" - ou Breve Introdução à Linguagem Python
"Mostrando a Cobra" - ou Breve Introdução à Linguagem PythonFabio Spanhol
 
Aula 4 Fatores Humanos - parte 1 - Disciplina de IHC
Aula 4   Fatores Humanos - parte 1 - Disciplina de IHCAula 4   Fatores Humanos - parte 1 - Disciplina de IHC
Aula 4 Fatores Humanos - parte 1 - Disciplina de IHCAndré Constantino da Silva
 
Como seu cérebro aprende
Como seu cérebro aprendeComo seu cérebro aprende
Como seu cérebro aprendeRegssa Salvador
 
Como aprende o cerebro
Como aprende o cerebroComo aprende o cerebro
Como aprende o cerebroLeonardo Faria
 
"Mostrando a Cobra" - ou Breve Introdução a Linguagem Python. ed2
"Mostrando a Cobra" - ou Breve Introdução a Linguagem Python. ed2"Mostrando a Cobra" - ou Breve Introdução a Linguagem Python. ed2
"Mostrando a Cobra" - ou Breve Introdução a Linguagem Python. ed2Fabio Spanhol
 
Lógica e algoritmos
Lógica e algoritmosLógica e algoritmos
Lógica e algoritmosJocelma Rios
 
INTRODUÇÃO AO DESENVOLVIMENTO DE EXPLOITS.pdf
INTRODUÇÃO AO DESENVOLVIMENTO DE EXPLOITS.pdfINTRODUÇÃO AO DESENVOLVIMENTO DE EXPLOITS.pdf
INTRODUÇÃO AO DESENVOLVIMENTO DE EXPLOITS.pdfIvanSaboia1
 
[Ahirton Lopes e Rafael Arevalo] Deep Learning - Uma Abordagem Visual
[Ahirton Lopes e Rafael Arevalo] Deep Learning - Uma Abordagem Visual[Ahirton Lopes e Rafael Arevalo] Deep Learning - Uma Abordagem Visual
[Ahirton Lopes e Rafael Arevalo] Deep Learning - Uma Abordagem VisualAhirton Lopes
 
Memória e aprendizagem
Memória e aprendizagemMemória e aprendizagem
Memória e aprendizagemCaio Maximino
 
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem VisualAhirton Lopes
 
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem VisualAhirton Lopes
 
Primeiros princípios do DxI por Bruce Tognazzini
Primeiros princípios do DxI por Bruce TognazziniPrimeiros princípios do DxI por Bruce Tognazzini
Primeiros princípios do DxI por Bruce TognazziniTersis Zonato
 

Semelhante a O modelo htm e sua aplicação no processamento de linguagem natural (20)

COMO O CÉREBRO APRENDE - Cómo Aprende el Cerebro
COMO O CÉREBRO APRENDE - Cómo Aprende el CerebroCOMO O CÉREBRO APRENDE - Cómo Aprende el Cerebro
COMO O CÉREBRO APRENDE - Cómo Aprende el Cerebro
 
Introdução às Redes Neurais - Parte 1/2
Introdução às Redes Neurais - Parte 1/2Introdução às Redes Neurais - Parte 1/2
Introdução às Redes Neurais - Parte 1/2
 
Visitando a literatura em redes neurais recorrentes
Visitando a literatura em redes neurais recorrentesVisitando a literatura em redes neurais recorrentes
Visitando a literatura em redes neurais recorrentes
 
Apresentacao
ApresentacaoApresentacao
Apresentacao
 
Extreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe DelphiExtreme Experience 2018 | Python para quem sabe Delphi
Extreme Experience 2018 | Python para quem sabe Delphi
 
"Mostrando a Cobra" - ou Breve Introdução à Linguagem Python
"Mostrando a Cobra" - ou Breve Introdução à Linguagem Python"Mostrando a Cobra" - ou Breve Introdução à Linguagem Python
"Mostrando a Cobra" - ou Breve Introdução à Linguagem Python
 
Aula 4 Fatores Humanos - parte 1 - Disciplina de IHC
Aula 4   Fatores Humanos - parte 1 - Disciplina de IHCAula 4   Fatores Humanos - parte 1 - Disciplina de IHC
Aula 4 Fatores Humanos - parte 1 - Disciplina de IHC
 
Como seu cérebro aprende
Como seu cérebro aprendeComo seu cérebro aprende
Como seu cérebro aprende
 
Como aprende o cerebro
Como aprende o cerebroComo aprende o cerebro
Como aprende o cerebro
 
Como o cérebro funciona
Como o cérebro funcionaComo o cérebro funciona
Como o cérebro funciona
 
Iemag ieducar bases neurologicas da aprendizagem
Iemag   ieducar bases neurologicas da aprendizagem Iemag   ieducar bases neurologicas da aprendizagem
Iemag ieducar bases neurologicas da aprendizagem
 
"Mostrando a Cobra" - ou Breve Introdução a Linguagem Python. ed2
"Mostrando a Cobra" - ou Breve Introdução a Linguagem Python. ed2"Mostrando a Cobra" - ou Breve Introdução a Linguagem Python. ed2
"Mostrando a Cobra" - ou Breve Introdução a Linguagem Python. ed2
 
Bases neurais da memória e aprendizagem
Bases neurais da memória e aprendizagem  Bases neurais da memória e aprendizagem
Bases neurais da memória e aprendizagem
 
Lógica e algoritmos
Lógica e algoritmosLógica e algoritmos
Lógica e algoritmos
 
INTRODUÇÃO AO DESENVOLVIMENTO DE EXPLOITS.pdf
INTRODUÇÃO AO DESENVOLVIMENTO DE EXPLOITS.pdfINTRODUÇÃO AO DESENVOLVIMENTO DE EXPLOITS.pdf
INTRODUÇÃO AO DESENVOLVIMENTO DE EXPLOITS.pdf
 
[Ahirton Lopes e Rafael Arevalo] Deep Learning - Uma Abordagem Visual
[Ahirton Lopes e Rafael Arevalo] Deep Learning - Uma Abordagem Visual[Ahirton Lopes e Rafael Arevalo] Deep Learning - Uma Abordagem Visual
[Ahirton Lopes e Rafael Arevalo] Deep Learning - Uma Abordagem Visual
 
Memória e aprendizagem
Memória e aprendizagemMemória e aprendizagem
Memória e aprendizagem
 
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual
 
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual
[Jose Ahirton Lopes] Deep Learning - Uma Abordagem Visual
 
Primeiros princípios do DxI por Bruce Tognazzini
Primeiros princípios do DxI por Bruce TognazziniPrimeiros princípios do DxI por Bruce Tognazzini
Primeiros princípios do DxI por Bruce Tognazzini
 

O modelo htm e sua aplicação no processamento de linguagem natural

  • 1. O Modelo HTM e Sua Aplicação No Processamento de Linguagem Natural Felipe Rayel I A 8 8 9 – S I S T E M A S D E C O G N I Ç Ã O A R T I F I C I A L F A C U L D A D E D E E N G E N H A R I A E L É T R I C A E D E C O M P U T A Ç Ã O U N I C A M P N O V E M B R O / 2 0 1 4
  • 2. Visão Geral • O neocórtex: • Área mais evoluída do córtex • Recobre os lobos frontais dos mamíferos • Tem espessura de uns 2 mm e está dividido em seis camadas • Proporciona as habilidades cognitivas mais complexas (somente o neocórtex?) • Aproximadamente 30 bilhões de neurônios • Exibe um padrão uniforme de circuitos neurais. • Evidências biológicas sugerem que o neocórtex implementa um conjunto de algoritmos para executar muitas funções distintas da inteligência.
  • 3. Visão Geral • Hierarchical Temporal Memory (HTM): • Tecnologia de aprendizagem de máquina • Visa capturar as propriedades estruturais e algorítmicas do neocórtex. • Qualquer sistema que tenta modelar os detalhes da arquitetura do neocórtex é uma rede neural. • São um tipo de rede neural (nova forma de rede neural) • Paradigma Conexionista • Teoria de função cerebral descrita por Jeff Hawkins no seu livro “On Intelligence” (2004). • Modelam neurônios (células), organizados em colunas, camadas e regiões em uma hierarquia.
  • 4. HTM • Desenvolvimento: • Numenta • Fundada em 2005 pelo criador da Palm Jeff Hawkins. • Para uso comercial e cientifico.
  • 5. Neurônios • Neurônio biológico • Sinapses proximais (em verde) • Se conectam verticalmente com neurônios da mesma coluna. • Podemos dizer que as entradas para os dendritos proximais são somadas linearmente no corpo da célula. • Sinapses distais (azul) • Se conectam de forma horizontal com outras colunas, são numerosas e têm pouca influência por estar longe dele. • Se um número suficiente de sinapses se tornar ativa ao mesmo tempo, poderão gerar um pico dendrítico. • Portanto, podemos dizer estes dendritos atuam como um conjunto de detectores de limites de coincidência. • Célula HTM • Cada célula HTM tem um único dendrito proximal. • A atividade das sinapses é linearmente somada para produzir uma ativação. • Cada célula HTM mantém uma lista de segmentos dendríticos distais. • Cada segmento atua como um detector de limite. • Se o número de sinapses ativas em qualquer um está acima de um limite, o segmento se torna ativo, e as células associadas entram em estado preditivo
  • 6. Regiões • Regiões HTM são compostas por muitas células. • As células são organizadas em uma matriz bidimensional de colunas. • A figura mostra uma pequena parte de uma região HTM com quatro células por coluna
  • 7. Hierarquia • A rede HTM é composta por regiões organizadas em uma hierarquia de camadas. • O benefício da organização hierárquica é a eficiência: • Reduz significativamente o tempo de treinamento e uso da memória • Padrões aprendidos em cada nível da hierarquia são reutilizados quando combinados de forma inédita em níveis mais altos. • Por exemplo: • Quando você aprende uma nova palavra, você não precisa reaprender letras, sílabas ou fonemas.
  • 8. Hierarquia • Nível mais baixo: • O cérebro armazena informações sobre seções pequenas do campo visual. (bordas, cantos, etc) • Nível Médio: • Combinações de padrões de baixo nível • Formação de componentes mais complexos. (curvas, texturas, etc) • Um arco pode ser a ponta de uma orelha, o topo de um volante ou a borda de um copo de café. • Nível Alto: • Combinações de padrões de nível médio • Representam características de objetos (cabeças, carros, casas, etc.) • Para aprender um novo objeto de alto nível você não tem que reaprender seus componentes.
  • 9. Representação Distribuída Esparsa  Neocórtex: a informação é representada por uma pequena porcentagem de neurônios ativos ao mesmo tempo. • Uma região pode receber 20.000 bits de entrada: 10010101010010100000111001011001... • A porcentagem de "1" e "0" pode variar ao longo do tempo. • A região HTM reduz esta entrada em uma representação interna de 10.000 bits, dos quais 2%, ou 200, estão ativos ao mesmo tempo, independentemente de quantos dos bits de entrada forem "1“. • Com a variação da entrada ao longo do tempo, a representação interna sempre terá 200 bits ativos entre os 10.000 possíveis. • Isso garante pouca variação entre sequências de representações ao longo do tempo. • Pode parecer que esse processo gera uma grande perda de informações, porém a perda de informações teóricas não terá um efeito prático.
  • 10. Aprendizagem • Tempo: • Desempenha um papel crucial na aprendizagem, inferência e predição. • Sem o tempo, não podemos inferir quase nada dos nossos sentidos tátil e auditivo. • Por exemplo, se você estiver de olhos fechados e alguém colocar uma maçã em sua mão, você poderá identificar o que é só depois de manipulá-la por um segundo ou mais. • Algoritmos HTM: • Aprendem as sequências temporais de um fluxo de dados de entrada • Constroem um modelo dos padrões que seguem outros padrões. • São capazes de "aprendizagem on-line“ como em um sistema biológico: • Aprendem continuamente a partir de cada nova entrada. • Não há necessidade de uma fase de aprendizagem isolada de uma fase de inferência, embora a inferência melhore depois de aprender mais.
  • 11. Aprendizagem • Inativando a aprendizagem: • Pode-se desligar a aprendizagem só nos níveis mais baixos da hierarquia, mas continuar a aprender com os níveis mais elevados. • Uma vez que uma HTM tenha aprendido a estrutura estatística básica de seu mundo, aprendizagens mais novas só ocorrerão nos níveis superiores da hierarquia. • Se uma HTM é exposta a novos padrões que têm estrutura de baixo nível inéditas, vai levar mais tempo para a HTM aprender estes novos padrões. • Vemos essa característica nos seres humanos (Neuro-Darwinismo de Edelman) • Ex: Tentar aprender idiomas estrangeiros
  • 12. Inferência • Depois de uma HTM aprender os padrões no seu mundo, ela pode fazer inferências em cima de novas entradas. • Quando uma HTM recebe a entrada, ela a compara com os padrões espaciais e temporais aprendidos anteriormente. • Por exemplo: • Ouvir a primeira nota de uma melodia diz-lhe pouco. • A segunda nota reduz significativamente as possibilidades, mas ainda pode não ser suficiente. • Normalmente, leva-se três, quatro ou mais notas antes de você reconhecer a melodia. • A inferência em uma região HTM é semelhante.
  • 13. Inferência • Toda experiência sensorial parece ser nova. • Por exemplo: a palavra café dita diversa vezes por pessoas diferentes não estimula o sistema auditivo exatamente da mesma forma. • A região HTM enfrenta o mesmo problema que o seu cérebro: as entradas podem não se repetir exatamente. • Representações Distribuídas Esparsas: • É um modo de uma região HTM lidar com a nova entrada. • Você só precisa combinar uma parte do padrão de forma a assegurar que a combinação seja significante.
  • 14. Predição • “Pra bom entendedor meia palavra basta” - Provérbio Brasileiro • Aprender e reconhecer sequências. • Após aprender sequência de padrões pode predizer o próximo padrão provável dado a entrada atual e as últimas entradas passadas. • Regiões HTM armazenam transições entre representações distribuídas esparsas. T1 T2 Tn Predição • Quando uma célula torna-se ativa, faz conexões (sinapses distais) com outras células que estavam ativas pouco antes. As células podem então predizer quando elas vão se tornar ativas, fazendo uma busca nas suas conexões. • Não há nenhuma central de armazenamento para uma sequência de padrões; • A memória é distribuída entre as células individuais. Devido a memória ser distribuída, o sistema é robusto ao ruído e ao erro.
  • 15. Nupic • NuPIC (Numenta Platform for Intelligent Computing) • Software que implementa uma rede HTM • Projeto Open Source GPL v3 • Desenvolvido em Python e C++ • github.com/numenta/nupic • Port para Java: github.com/numenta/htm.java • O uso e propriedade intelectual é livre para fins de pesquisa.
  • 16. Cortical.IO • www.cortical.io • Inspirada a partir da teoria HTM • Fundada em 2011 (Vienna) por Francisco Webber • Engine Cortical para Procesamento de texto. • Promete tornar a linguagem natural compreensível para a máquina • Desenvolve e comercializa a tecnologia. • Uso como SaS (Software as Service) • Uso como AMI (Amazon Machine Image)
  • 17. Semantic Fingerprint • Representam palavras, sentenças ou documentos inteiros. • São SDRs (Sparse Distributed Representation) • Retina • Componente central da tecnologia Cortical.IO • Codifica palavras da mesma forma que as informações sensoriais alimentam o cérebro. • Utiliza 16.000 caracteristicas semanticas para cada termo.
  • 19. Aplicação • Nupic NLP (Natural Language Processing) • Numenta Nupic + Cortical IO Cept API (Retina) • Apresentado no Hackaton em 2013 por Subutai Ahmad • github.com/subutai/nupic_nlp
  • 20. Aplicação Primeiro Termo Segundo Termo Terceiro Termo Predição 1 jaguar is car 2 porsche is car car 3 wolf is animal car 4 fox is animal animal 5 ferrari is ? car 6 horse is ? animal  Aprendizado de uma gramática de três palavras.  Usar os primeiros e segundos termos como contexto para prever o terceiro termo.  Apos treinamento, o algoritimo cortical pode prever sem nunca ter visto a palavra.  São semanticamente semelhante pois possuem SDRs próximos.  Jaguar, Porsche, Ferrari  Wolf, Fox, Horse
  • 21. Conclusões • A teoria HTM não é definitiva e tem sido aprimorada. • Ainda há pouca literatura a respeito • Pouco interesse da comunidade • Iniciativas tem sido feitas pela numenta através de hackatons para tentar popularizar a tecnologia. • O Engine Cortical da Cortical.IO resolve o problema do Symbol Grounding para palavras isoladas, porém não para sentenças. • Cortical IO Não reconhece palavras em outros idiomas. • Em 2012 Laboratório em Chicago confirmou a teoria de que as aves possuem uma estrutura com a mesma funcionalidade do neocórtex (DVR). (Harvey Karten, 1960)
  • 22. Referências • HIERARCHICAL TEMPORAL MEMORY • Jeff Hawkins, Subedei Ahmad, Donna Dubinsky, (Numenta), 2011 • O Modelo Cortical HTM e sua Aplicação na Classificação de Gêneros Musicais • Pedro Tabacof, 2011 • http://www.cortical.io/developers_tutorials.html • Cortical.io Dev Team, 2014