  The dearth of clean textual data often acts as a bottleneck in several
natural language processing applications. The data available often lacks proper
case (uppercase or lowercase) information. This often comes up when text is
obtained from social media, messaging applications and other online platforms.
This paper attempts to solve this problem by restoring the correct case of
characters, commonly known as Truecasing. Doing so improves the accuracy of
several processing tasks further down in the NLP pipeline. Our proposed
architecture uses a combination of convolutional neural networks (CNN),
bi-directional long short-term memory networks (LSTM) and conditional random
fields (CRF), which work at a character level without any explicit feature
engineering. In this study we compare our approach to previous statistical and
deep learning based approaches. Our method shows an increment of 0.83 in F1
score over the current state of the art. Since truecasing acts as a
preprocessing step in several applications, every increment in the F1 score
leads to a significant improvement in the language processing tasks.
