Difference between revisions of "Deep Text Classifier"
Line 20: | Line 20: | ||
==How to Run the Code== | ==How to Run the Code== | ||
+ | |||
+ | ==Data Preprocessing== | ||
==How to Modify the Code to Solve your own problems== | ==How to Modify the Code to Solve your own problems== | ||
==General guidelines for tuning the hyper-parameters== | ==General guidelines for tuning the hyper-parameters== |
Revision as of 16:17, 10 October 2017
Contents
Deep Text Classifier
Problem Description
We want to build a classifier for the text input. For example, we may want to classify a company's industry area based on its description. Or we may want to classify a company's IPO status based on its description.
General Approach
We will build a deep neural network to uniformly solve this problem. The traditional way of doing this is to hire a task specific expert to manually design some useful features, say to check if the text contains words "Internet" and "High-tech" at the same time, and to classify based on the observed features. Our way, by using the deep neural network, can automatically extract the features and most importantly achieve very high testing accuracy. However, the features that are used by the deep neural network are not human interpretable.
About the Deep Models
There are basically two big categories of deep neural networks - the convolutional neural networks (CNN) and the recurrent neural networks (RNN). The first one, CNN, is more suitable for dealing with the image based classification tasks. The second one, RNN, is in general for sequential information (i.e. language, video ...) based classification tasks.
Major Package Dependences
- Tensorflow https://www.tensorflow.org/
- Numpy http://www.numpy.org/
- Keras https://keras.io/