Automatizando a correlação estatística entre "textos" e "dados"

8

Estou coletando dados textuais em torno de press releases, postagens em blogs, resenhas etc. dos produtos e desempenho de determinadas empresas.

Especificamente, estou olhando para ver se há correlações entre certos tipos e / ou fontes desse conteúdo "textual" com avaliações de mercado dos símbolos de ações das empresas.

Tais correlações aparentes podem ser encontradas pela mente humana rapidamente - mas isso não é escalável. Como posso automatizar essa análise de fontes diferentes?

Warren
fonte
O que você quer dizer com tipos de conteúdo "textual"?
Ami
Você poderia mostrar alguns dados de amostra?
@Srikant Vadali - dados de amostra podem ser press releases, notícias, etc. os dados de texto são de forma livre, provavelmente obtidos de feeds RSS ou similares. Os dados de mercado de uma determinada empresa são o que estou procurando analisar / correlacionar. Talvez o Blogger Bill escreva uma história sobre um próximo lançamento do recurso VMware, e o VMW salte 10%. (Simplista, eu sei)
Warren

Respostas:

5

Meus alunos fazem isso como seu projeto de classe. Algumas equipes atingem os 70% de precisão, com amostras bem pequenas, o que não é ruim.

Digamos que você tenha alguns dados como este:

Return Symbol News Text
-4%  DELL   Centegra and Dell Services recognized with Outsourcing Center's...
7%   MSFT   Rising Service Revenues Benefit VMWare
1%   CSCO   Cisco Systems (CSCO) Receives 5 Star Strong Buy Rating From S&P
4%   GOOG   Summary Box: Google eyes more government deals
7%   AAPL   Sohu says 2nd-quarter net income rises 10 percent on higher...

Você deseja prever o retorno com base no texto.

Isso é chamado de Mineração de Texto.

O que você faz é criar uma matriz enorme como esta:

Return Centegra Rising Services Recognized...
-4%    0.23     0      0.11     0.34
7%     0        0.1    0.23     0
...

Que possui uma coluna para cada palavra exclusiva, e uma linha para cada retorno e uma pontuação ponderada para cada palavra. A pontuação geralmente é a pontuação do TFIDF ou a frequência relativa da palavra no documento.

Em seguida, você executa uma regressão e vê se consegue prever quais palavras prevêem o retorno. Você provavelmente precisará usar o PCA primeiro.

Livro: Fundamentos da mineração preditiva de texto, Weiss

Software: RapidMiner com plug-in de texto ou R

Você também deve fazer uma pesquisa no Google Scholar e ler os detalhes.

Você pode ver minha série de vídeos de mineração de texto aqui

Neil McGuigan
fonte
que se parece com um começo muito promissor :)
Warren
1

Conforme descrito acima, você precisa de um conjunto de artigos e respostas e depois treina, por exemplo. uma rede neural para eles. O RapidMiner permitirá que você faça isso, mas existem muitas outras ferramentas por aí que permitem fazer regressões desse tamanho. Idealmente, sua variável de resposta será consistente (ou seja,% de alteração após 1 hora exatamente ou% de alteração após 1 dia exatamente etc).

Você também pode aplicar algum tipo de filtragem ou classificação às suas variáveis ​​de treinamento, ou seja, as palavras do artigo. Isso pode ser tão simples quanto filtrar algumas palavras (por exemplo, preposições, pronomes) ou mais complexo, como usar a sintaxe para escolher quais palavras devem ser inseridas na regressão. Observe que qualquer filtragem que você faz corre o risco de influenciar o resultado.

Algumas pessoas da Universidade do Arizona já criaram um sistema que faz isso - o artigo delas está em destaque aqui e você pode achar interessante. http://www.computer.org/portal/web/csdl/doi/10.1109/MC.2010.2 (você precisará de uma assinatura para acessar se não estiver, por exemplo, na universidade). As referências também podem ajudar a direcioná-lo na direção certa.

imoatama
fonte