Automatizar la correlación estadística entre "textos" y "datos"

8

Estoy recopilando datos textuales sobre comunicados de prensa, publicaciones de blog, reseñas, etc. de los productos y el rendimiento de ciertas empresas.

Específicamente, estoy buscando ver si hay correlaciones entre ciertos tipos y / o fuentes de dicho contenido "textual" con valoraciones de mercado de los símbolos de acciones de las compañías.

La mente humana puede encontrar tales correlaciones aparentes con bastante rapidez, pero eso no es escalable. ¿Cómo puedo automatizar dicho análisis de fuentes dispares?

madriguera
fuente
¿Qué quiere decir con tipos de contenido "textual"?
Ami
¿Podría mostrar algunos datos de muestra?
@Srikant Vadali: los datos de muestra podrían ser comunicados de prensa, noticias, etc. Los datos textuales serían de forma libre, probablemente obtenidos de fuentes RSS o similares. Lo que estoy buscando analizar / correlacionar son datos de mercado para una empresa determinada. Entonces, tal vez Blogger Bill escribe una historia sobre el próximo lanzamiento de la función VMware, y VMW salta un 10%. (Sobre simplificado, lo sé)
warren

Respuestas:

5

Mis alumnos hacen esto como su proyecto de clase. Algunos equipos alcanzaron el 70% de precisión, con muestras bastante pequeñas, lo que no está mal.

Digamos que tiene algunos datos 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...

Desea predecir el retorno en función del texto.

Esto se llama minería de texto.

Lo que haces en última instancia es crear una matriz enorme como esta:

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

Tiene una columna para cada palabra única, y una fila para cada declaración, y una puntuación ponderada para cada palabra. La puntuación suele ser la puntuación TFIDF, o la frecuencia relativa de la palabra en el documento.

Luego ejecuta una regresión y ve si puede predecir qué palabras predicen el retorno. Probablemente necesite usar PCA primero.

Libro: Fundamentos de la minería de textos predictivos, Weiss

Software: RapidMiner con complemento de texto o R

También debe hacer una búsqueda en Google Académico y leer los pormenores.

Puedes ver mi serie de videos de minería de texto aquí

Neil McGuigan
fuente
que parece un comienzo realmente prometedor :)
warren
1

Según lo anterior, necesita un conjunto de artículos y respuestas, y luego entrena, por ejemplo. una red neuronal para ellos. RapidMiner le permitirá hacer esto, pero existen muchas otras herramientas que le permitirán hacer regresiones de este tamaño. Idealmente, su variable de respuesta será consistente (es decir,% de cambio después de 1 hora exactamente, o% de cambio después de 1 día exactamente, etc.).

También es posible que desee aplicar algún tipo de filtro o clasificación a sus variables de entrenamiento, es decir, las palabras en el artículo. Esto podría ser tan simple como filtrar algunas palabras (por ejemplo, preposiciones, pronombres) o más complejo, como usar la sintaxis para elegir qué palabras deben entrar en la regresión. Tenga en cuenta que cualquier filtrado que realice corre el riesgo de sesgar el resultado.

Algunas personas de la Universidad de Arizona ya crearon un sistema que hace esto: su documento está en acm aquí y puede resultarle interesante. http://www.computer.org/portal/web/csdl/doi/10.1109/MC.2010.2 (necesitará una suscripción para acceder si no está, por ejemplo, en la universidad). Las referencias también pueden ayudarlo a orientarse en la dirección correcta.

imoatama
fuente