/Acquisition-Prediction

A machine learning approach to predict the acquisitions market

Primary LanguageJupyter Notebook

Acquisition Prediction using Social textual data and company profiles

Acquisition prediction deals with choosing proper target companies for the bidder company, and is an important and challenging task.

Acquisition prediction is the critical step that makes assessments on each company about its chance of being acquired, which will facilitate both parties to develop the best strategies.

Data Collection

Web crawlers are used to scrap data from techblogs, and investors forum. The collect data in a automated way and store it a local files

Web crawling package used - scrapy

Data Manipulation is done transform the unstructured data to structured form, performed using Pandas

Textual data processing

Text document data must be converted to a vector represtation, for it to be used by a classifier.

Doc2Vec is used to convert the documents to vectors. Doc2Vec works by building paragraph vector (reference) which works well for variable length textuals inputs ranging from sentences to paragraph

Doc2Vec algorithm is made accessible by an amazing one-stop python package for text mining gensim

Prediction

Neural networks are used to handle the classification task, due to the high-dimensionality of the dataset (simple Logistic regression is also performed for comparison)

The Neural network is built using a python package, which makes lightning fast mathematical computaion by leveraging the GPU, Theano

Result

alt tag

The results are close to reality, the model accurates captures the acquisition trends going on in the food delivery and real estate industries, but is far from perfect. One of the limitations of the model is, it cannot differentiate the context between a company that is getting acquired and the company that acquires it.

Improvements to be done

  • Get quality company profiles from database providers like CrunchBase, Owler
  • Try a bespoke random forest classifier with feature engineering