Chest X-rays Pneumonia Detection using Convolutional Neural Network

栏目: IT技术 · 发布时间: 6年前

内容简介:Convolutional Neural Network (CNN) might seem intimidating for a beginner. However, this project will provide an overview of how to build a model from scratch to detect pneumonia using Tensorflow and Keras.The content of the mini-project is listed as follo

A basic Tensorflow and Keras Implementation for beginners

Convolutional Neural Network (CNN) might seem intimidating for a beginner. However, this project will provide an overview of how to build a model from scratch to detect pneumonia using Tensorflow and Keras.

The content of the mini-project is listed as follows :

  • Model Building
  • Model Training
  • Model Evaluation
  • Final Model Prediction

What is Pneumonia?

Pneumonia is a lung inflammation caused by a viral or bacterial infection that can range from mild to severe cases. This inflammation makes the patient unable to breathe enough oxygen to reach the bloodstream. It happens when an infection makes the air sacs (alveoli) in the lungs fill with fluid or pus that might affect either one or both lungs. If your doctor thinks you might have pneumonia, a chest X-ray will be performed to find the infection in the patient's lungs and how far it’s spread.

Dataset

This experiment leveraging the data from Kaggle repository titled Chest X-Ray Images (Pneumonia). Check out the dataset here . The dataset composes of two classes which are normal lung and pneumonia lung as can be seen in the figure below.

Chest X-rays Pneumonia Detection using Convolutional Neural Network

Implementation

Before we start building the convolutional neural network, the following are the necessary libraries and dependencies.

Model Development

So let’s jump into the code. The model that we are going to develop composes several components which are:

  • tf.keras.layers.Conv2D() : The convolution layer which improves image recognition by isolate images features
  • tf.keras.layers.MaxPooling2D() : a layer to reduce the information in an image while maintaining features
  • tf.keras.layers.Flatten() : flatten the result into 1-dimensional array
  • tf.keras.layers.Dense() : add densely connected layer

A five-layer convolution network will be built where Conv2D() and MaxPooling2D() are stack together as one layer. Then, the output of the final convolutional layer will be flattened and fit to fully connected neurons.

Additionally, before the model is fitted for training, it is necessary to configure the specifications as follows:

  • loss: pneumonia detection is using sigmoid activation in the final step, which resulted in either 0 or 1 (normal or pneumonia). Therefore, binary_crossentropy is the most suitable loss function
  • optimizer: RMSprop (Root Mean Square Propagation) with a learning rate of 0.001 will be used
  • metrics: accuracy is the measurement metric to obtain the prediction accuracy rate on every epoch

Following is the output of model.summary() .

Chest X-rays Pneumonia Detection using Convolutional Neural Network

The overview of the model that we have built can be illustrated as below:


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

神经网络在应用科学和工程中的应用

神经网络在应用科学和工程中的应用

萨马拉辛荷 / 2010-1 / 88.00元

《神经网络在应用科学与工程中的应用:从基本原理到复杂的模式识别》为读者提供了神经网络方面简单但却系统的介绍。 《神经网络在应用科学和工程中的应用从基本原理到复杂的模式识别》以神经网络在科学数据分析中所扮演角色的介绍性讨论作为开始,给出了神经网络的基本概念。《神经网络在应用科学和工程中的应用从基本原理到复杂的模式识别》首先对用于实际数据分析的神经网络结构进行了综合概述,继而对线性网络进行了大量......一起来看看 《神经网络在应用科学和工程中的应用》 这本书的介绍吧!

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具