Cancer Classification in Human Brain and Prostate Using Raman Spectroscopy and Machine Learning
MetadataShow full item record
Real-time assisted classification of cancerous and healthy human tissue is useful to surgeons since visual classification of cancer boundaries is almost impossible to the naked eye. Raman spectroscopy can be used to quantify the inelastic scattering of light in molecules by analyzing the interaction of photons with the vibrational modes of biological tissue. Raman spectroscopy can therefore serve as a tool to uniquely identify the presence of certain types of cells and their respective pathologies. In particular, Raman spectroscopy can be used to detect cancer cells in-vivo in affected human tissue by using various machine-learning algorithms. We showed that preprocessing steps have a significant impact on classification results and that the IModPoly algorithm performed similarly to the Zhang algorithm however the IModPoly algorithm had signficantly faster runtimes, which is more suitable for real-time classsification. We studied the performance of different classifiers on Raman spectrums acquired from human brain and prostate. We compared the performance of support vector machines, convolutional neural networks and multi-layer perceptrons. We've shown that a convolutional neural network and support vector machines have similar performance metrics when applied to pre-processed Raman spectrums acquired from human prostates when using a K-fold cross validation scheme, with mean ROC AUC 0.941 $\pm$ 0.017 and 0.943 $\pm$ 0.018 respectively, and that these outperform the MLP with an AUC of 0.935 $\pm$ 0.021. We show that data-reduction through PCA and AutoEncoders allow for similar, but overall worse, classification performance through data reduction of up to 2.5 times and that using the raw input as a feature space results overall in higher AUC across classifiers. On the smaller brain dataset, we found that the SVM outperformed the ConvNet and MLP with respective AUCs of 0.955 $\pm$ 0.029, 0.941 $\pm$ 0.036 and 0.846 $\pm$ 0.130. Using ConvNets and K-fold cross-validation, we were able to achieve an average accuracy, sensitivity and specificity of 0.921, 0.785, and 0.947 on the prostate dataset and 0.891, 0.944 and 0.825 respectively on the brain dataset. We show that classification metrics drop significantly when using a leave-one-patient-out approach compared to K-fold and show examples of clustering among patients within datasets, suggesting that data collection ensuring more uniform signal collection is of higher priority for robust performance over the choice of classifiers. We studied the use of transfer learning from one dataset to another, and showed limited increase in performance when training the classifier on the prostate dataset before applying it to the brain dataset. We showed a clear distinction using t-SNE in the feature space of brain and prostate datasets, demonstrating the clear biological differences that can be captured using Raman spectroscopy. Future work needs to address the shortcoming of the leave-one-patient-out approach compared to K-fold and the apparent clustering of patient data. It is imperative to determine if the source of clustering is inherent to patients or a result of bias in current protocols. The possibility of calibrating or fine-tuning data in real-time during clinical procedures should also be explored in future work as well as more refined preprocessing procedures.
Cite this work
Jeremy Pinto (2017). Cancer Classification in Human Brain and Prostate Using Raman Spectroscopy and Machine Learning. UWSpace. http://hdl.handle.net/10012/12475