In the modern era, there are massive amount of web resources present such as blogs, review sites and discussion forums. These resources form the platform where users can share their opinions or reviews` about anything whether it is a product, movie or a restaurant. Analysis of public sentiments deals with the determination of the polarity of different public opinions or reviews into either the category of positive, negative or neutral. Thus, there comes the need of sentiment analysis which not only helps other individual to make a decision regarding buying a product, visiting a restaurant or watching a movie but also helps the producers of various products and owners of different restaurants to gain the knowledge of preferences of customers, so that it could be possible to increase the profit and economic value. The paper presents a survey with main focus on performance of different artificial neural networks used for opinion mining or sentiment analysis while it also includes various machine learning approaches such as Naïve Bayes, Support Vector Machine, lexicon-based approach and Maximum Entropy.