Welcome to the upgraded MacSphere! We're putting the finishing touches on it; if you notice anything amiss, email macsphere@mcmaster.ca

Performance Impact on Neural Network with Partitioned Convolution Implemented with GPU Programming

dc.contributor.advisorWassyng, Alan
dc.contributor.advisorLawford, Mark
dc.contributor.authorLee, Bill
dc.contributor.departmentComputing and Softwareen_US
dc.date.accessioned2021-04-23T18:30:23Z
dc.date.available2021-04-23T18:30:23Z
dc.date.issued2021
dc.description.abstractFor input data of homogenous type, the standard form of convolutional neural network is normally constructed with universally applied filters to identify global patterns. However, for certain datasets, there are identifiable trends and patterns within subgroups of input data. This research proposes a convolutional neural network that deliberately partitions input data into groups to be processed with unique sets of convolutional layers, thus identifying the underlying features of individual data groups. Training and testing data are built from historical prices of stock market and preprocessed so that the generated datasets are suitable for both standard and the proposed convolutional neural network. The author of this research also developed a software framework that can construct neural networks to perform necessary testing. The calculation logic was implemented using parallel programming and executed on a Nvidia graphic processing unit, thus allowing tests to be executed without expensive hardware. Tests were executed for 134 sets of datasets to benchmark the performance between standard and the proposed convolutional neural network. Test results show that the partitioned convolution method is capable of performance that rivals its standard counterpart. Further analysis indicates that more sophisticated method of building datasets, larger sets of training data, or more training epochs can further improve the performance of the partitioned neural network. For suitable datasets, the proposed method could be a viable replacement or supplement to the standard convolutional neural network structure.en_US
dc.description.degreeMaster of Applied Science (MASc)en_US
dc.description.degreetypeThesisen_US
dc.description.layabstractA convolutional neural network is a machine learning tool that allows complex patterns in datasets to be identified and modelled. For datasets with input that consists of the same type of data, a convolutional neural network is often architected to identify global patterns. This research explores the viability of partitioning input data into groups and processing them with separate convolutional layers so unique patterns associated with individual subgroups of input data can be identified. The author of this research built suitable test datasets and developed a (parallel computation enabled) framework that can construct both standard and proposed convolutional neural networks. The test results show that the proposed structure is capable of performance that matches its standard counterpart. Further analysis indicates that there are potential methods to further improve the performance of partitioned convolution, making it a viable replacement or supplement to standard convolution.en_US
dc.identifier.urihttp://hdl.handle.net/11375/26334
dc.language.isoenen_US
dc.subjectconvolutional neural networken_US
dc.subjectparallel programmingen_US
dc.subjectpartitioneden_US
dc.titlePerformance Impact on Neural Network with Partitioned Convolution Implemented with GPU Programmingen_US
dc.title.alternativePartitioned Convolution in Neuron Networken_US
dc.typeThesisen_US

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
lee_bill_202004_master.pdf
Size:
1.84 MB
Format:
Adobe Portable Document Format
Description:
Thesis for master degree of applied science in software engineering

License bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
license.txt
Size:
1.68 KB
Format:
Item-specific license agreed upon to submission
Description: