O Probase é um projeto da Microsoft Research descrito como um “projeto em andamento que foca na aquisição de conhecimento e serviços de conhecimento.” Seu objetivo principal é “permitir que máquinas entendam o comportamento e comunicação humana.” Ele pode ser comparado ao Cyc, DBpedia ou o Freebase, pois está tentando compilar uma enorme coleção de dados estruturados que podem ser usados para melhorar os aplicativos de inteligência artificial.

Ele é alimentado por um banco de dados gráfico novo chamado Trinity, que também é um projeto da Microsoft Research.O Trinity foi mencionado essa semana pelo blogger do MyNoSQL Alex Popescu, e isso nos levou ao Probase. Parece que nenhum dos projetos está disponível para o público, pelo menos até agora.

Esses e outros projetos dão uma luz nas ambições de busca e de big data da Microsoft.

Probase

O site do projeto afirma que o Probase é mais rico que qualquer outra base de conhecimento de ontologia e taxonomia como os que mencionamos acima, pois monta estruturas de dados de acordo com três dimensões: conceito, dados e dimensão relacionamental. Sua dimensão de conceito contém cerca de 2,7 milhões de conceitos. Segundo o site do Probase, o Freebase possui 1.450 conceitos, o DBPedia 259 e o ResearchCyc possui aproximadamente 120.000.

Um dos elementos mais importantes do Probase é que ele não considera como fatos os dados que ele possui. “Os dados no Probase, assim como o conhecimento em nossa mente, não é preto ou branco,” diz o site. “O Probase quantifica a incerteza.” Confira uma explicação mais completa:

O Probase tem muito espaço para dados. Como exemplo, o Cyc contém cerca de duas dúzias de pintores, enquanto o Probase possui quase mil deles ordenados pela sua popularidade. A importância da escala de dados se torna mais evidente para os conceitos usados com menor freqüência, ou conceitos da cauda longa. Considere o conceito das províncias chinesas como exemplo, o Cyc não possui uma lista completa de províncias chinesas, enquanto o Probase possui todas elas (rankeadas pela popularidade). A razão que o Probase é capaz de acumular uma grande quantidade de dados é por causa da sua natureza probabilística. Nós não consideramos como fatos os dados do Probase, em vez disso, consideramos como afirmações ou crenças associadas com as probabilidades de modelagem de sua plausibilidade, ambigüidade, e outras características. Além disso, consideramos os dados externos (como a web, o Freebase, o DBPedia, dicionários e enciclopédias, IMDB, Amazon, etc) como evidências que podem ser adicionadas ou até modificar as alegações e crenças do Probase. Isso significa que o Probase é capaz de integrar informações de qualidade variada de fontes de dados heterogêneos.

Para mais informações sobre os problemas colocados por este tipo de projeto, pesquise a história do Cyc.

Isso seria muito útil no Bing da Microsoft, que inicialmente foi anunciado como um motor de busca semântica mais inteligente. Em 2008 a Microsoft adquiriu o Powerset, um motor de busca semântica que buscava no Freebase e na Wikipedia por respostas. De acordo com os ex-engenheiros da Powerset no Quora, a tecnologia pode ter sido usada no Bing Reference.

No ano passado a Google adquiriu o Metaweb, a empresa que desenvolveu o Freebase.

Trinity

Segundo o site, as principais características do Trinity são:

  • Modelo de dados: hipergrafo.
  • Distribuído: Trinity pode ser implantado em uma máquina ou em centenas delas.
  • Um banco de dados gráfico: o Trinity é uma loja gráfica baseada em memória com recursos ricos de banco de dados, incluindo o processamento simultâneo de queries online, suporte a transações ACI, etc. Atualmente, o Trinity oferece ao usuário APIs em C# para o processamento gráfico.
  • Um sistema paralelo de processamento gráfico: o Trinity suporta escalas em grande quantidade, processamento offline de arquivos de lote (batch). Possui suporte tanto para computação síncrona e assíncrona de arquivos de lote.

Aqui está uma ilustração de sua arquitetura:

Outros projetos da Microsoft relacionados com o NoSQL incluem o Windows Azure Table Storage, um grande banco de dados para a plataforma Azure, e o Dryad, uma alternativa ao Hadoop.

Outros exemplos de bancos de dados gráficos são: o Neo4j, o HyperGraphDB, o InfiniteGraph e o FlockDB.

O Futuro

Não é difícil ligar os pontos entre o Bing, o Dryad, o Probase e o Trinity. A Microsoft está construindo um conjunto de ferramentas para competir com aquelas utilizadas internamente no Google e as ferramentas de código aberto utilizadas por empresas como o Facebook e o Twitter. Vai ser interessante ver o que a Microsoft fará com os seus dados.

O analista e co-fundador da RedMonk Stephen O’Grady analisou o valor do software em um post recente. Stephen analisou a mudança de papel nos softwares durante três gerações, usando a Microsoft, a Google e o Facebook como exemplos primários.

Para a Microsoft, o software tem sido sempre o produto. A Google virou o jogo ao utilizar o software proprietário e infra-estrutura personalizada para melhorar o serviço. O Facebook foi além – ele usa software opem source de commodity. Utiliza PHP e MySQL e entrega software personalizado em casa como o Cassandra e o Hip Hop. Sua vantagem estratégica está nos seus dados.

Embora a Microsoft provavelmente não vá oferecer o Dryad ou o Trinity, parece que ela possa estar se movendo na direção do modelo do Facebook. Será que a Microsoft será capaz de se tornar uma empresa de dados em vez de uma empresa de software?