Deep learning neural network for image processing

Deep learning is a new research direction in the field of machine learning. It is a subclass of machine learning. Inspired by the way the human brain works, deep learning is a learning process that uses deep neural networks to address feature expression. In many neural network models, convolutional...

Full description

Saved in:
Bibliographic Details
Main Author: Ma, Xueqing
Other Authors: Qing Song
Format: Thesis-Master by Coursework
Language:English
Published: Nanyang Technological University 2020
Subjects:
Online Access:https://hdl.handle.net/10356/141317
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Nanyang Technological University
Language: English
Description
Summary:Deep learning is a new research direction in the field of machine learning. It is a subclass of machine learning. Inspired by the way the human brain works, deep learning is a learning process that uses deep neural networks to address feature expression. In many neural network models, convolutional neural network (CNN) can be considered the most successful neural network model in recent years. It is widely used in computer vision, natural language processing, speech and image recognition because of its satisfying performance. However, CNN is a deep neural network, which contains many layers and parameters. Thus, it may take a long time and be very difficult to train the network. What is more, the accuracy of the neural network should also be guaranteed. In this dissertation, I tried to maximize the accuracy of CNN with the least amount of training time. I improved the accuracy of the CNN model by adding two more convolutional and pooling layers based on MATLAB, and used different optimization methods including Adam optimizer, dropout layers, batch normalization layers and adaptive learning rate to improve the network performance based on PyTorch. The experimental results showed that the test accuracy of the CNN in MATLAB improved by 3% after adding layers and the final accuracy of the test dataset has reached 99.218% by applying the optimization methods in PyTorch. In conclusion, the accuracy of convolution neural network can be significantly improved by adding more convolution layers with less time and the above optimization methods can also effectively improve the network performance.