Automatisation de la corrélation statistique entre «textes» et «données»

8

Je collecte des données textuelles concernant les communiqués de presse, les articles de blog, les critiques, etc. sur les produits et les performances de certaines entreprises.

Plus précisément, je cherche à voir s'il existe des corrélations entre certains types et / ou sources d'un tel contenu "textuel" avec les évaluations de marché des symboles boursiers des sociétés.

De telles corrélations apparentes peuvent être trouvées par l'esprit humain assez rapidement - mais ce n'est pas évolutif. Comment puis-je automatiser une telle analyse de sources disparates?

garenne
la source
Qu'entendez-vous par types de contenu "textuel"?
Ami
Pourriez-vous montrer quelques exemples de données?
@Srikant Vadali - les exemples de données pourraient être des communiqués de presse, des articles de presse, etc. les données textuelles seraient de forme libre, probablement obtenues à partir de flux rss ou similaires. Les données du marché pour une entreprise donnée sont ce que je cherche à analyser / corréler. Alors peut-être que Blogger Bill écrit une histoire sur une prochaine version de VMware, et VMW bondit de 10%. (Trop simplifié, je sais)
warren

Réponses:

5

Mes élèves font cela comme leur projet de classe. Quelques équipes ont atteint les 70% pour la précision, avec de très petits échantillons, ce qui n'est pas mal.

Disons que vous avez des données comme celle-ci:

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...

Vous souhaitez prédire le retour en fonction du texte.

C'est ce qu'on appelle l'exploration de texte.

En fin de compte, vous créez une énorme matrice comme celle-ci:

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

Cela a une colonne pour chaque mot unique, une ligne pour chaque retour et un score pondéré pour chaque mot. Le score est souvent le score TFIDF, ou fréquence relative du mot dans le document.

Ensuite, vous exécutez une régression et voyez si vous pouvez prédire quels mots prédisent le retour. Vous devrez probablement utiliser PCA en premier.

Livre: Fundamentals of Predictive Text Mining, Weiss

Logiciel: RapidMiner avec Text Plugin ou R

Vous devriez également faire une recherche sur Google Scholar et lire les tenants et aboutissants.

Vous pouvez voir ma série de vidéos d'exploration de texte ici

Neil McGuigan
la source
ça ressemble à un début très prometteur :)
warren
1

Comme ci-dessus, vous avez besoin d'un ensemble d'articles et de réponses, puis vous vous entraînez par exemple. un réseau neuronal pour eux. RapidMiner vous permettra de le faire, mais il existe de nombreux autres outils qui vous permettront de faire des régressions de cette taille. Idéalement, votre variable de réponse sera cohérente (c'est-à-dire% de changement après 1 heure exactement, ou% de changement après 1 jour exactement, etc.).

Vous pouvez également appliquer une sorte de filtrage ou de classification à vos variables de formation, c'est-à-dire les mots dans l'article. Cela peut être aussi simple que de filtrer certains mots (par exemple, prépositions, pronoms) ou plus complexe, comme utiliser la syntaxe pour choisir les mots qui doivent entrer dans la régression. Notez que tout filtrage que vous effectuez risque de biaiser le résultat.

Certaines personnes à l'Université de l'Arizona ont déjà créé un système qui fait cela - leur article est sur ACM ici et vous pouvez le trouver intéressant. http://www.computer.org/portal/web/csdl/doi/10.1109/MC.2010.2 (vous aurez besoin d'un abonnement pour y accéder si vous n'êtes pas par exemple à l'université). Les références peuvent également vous aider à vous orienter dans la bonne direction.

imoatama
la source