Difference between revisions of "Programming/Deep Learning"
From HPC
m |
m |
||
| Line 29: | Line 29: | ||
* PGI compiler with openACC programming for C and Fortran. | * PGI compiler with openACC programming for C and Fortran. | ||
* Matlab with deep learning libraries. | * Matlab with deep learning libraries. | ||
| + | |||
| + | ===Deep Learning example=== | ||
| + | |||
| + | This represents the "Hello World" of the deep learning programs, and the mnist data set represents a large amount of hand written numbers (28 x 28 pixels) with labels. This program trains the neural network as training data and then uses that neural network to test data against the data set. | ||
| + | |||
| + | <pre> | ||
| + | #!/usr/bin/env python | ||
| + | |||
| + | import tensorflow as tf | ||
| + | mnist = tf.keras.datasets.mnist | ||
| + | |||
| + | (x_train, y_train),(x_test, y_test) = mnist.load_data() | ||
| + | x_train, x_test = x_train / 255.0, x_test / 255.0 | ||
| + | |||
| + | model = tf.keras.models.Sequential([ | ||
| + | tf.keras.layers.Flatten(), | ||
| + | tf.keras.layers.Dense(512, activation=tf.nn.relu), | ||
| + | tf.keras.layers.Dropout(0.2), | ||
| + | tf.keras.layers.Dense(10, activation=tf.nn.softmax) | ||
| + | ]) | ||
| + | model.compile(optimizer='adam', | ||
| + | loss='sparse_categorical_crossentropy', | ||
| + | metrics=['accuracy']) | ||
| + | |||
| + | model.fit(x_train, y_train, epochs=5) | ||
| + | model.evaluate(x_test, y_test) | ||
| + | </pre> | ||
Revision as of 11:57, 21 November 2018
Contents
Deep Learning
Introduction
Deep learning (also known as deep structured learning or hierarchical learning) is part of a broader family of machine learning methods based on learning data representations, as opposed to task-specific algorithms. Learning can be supervised, semi-supervised or unsupervised.
There is a massive amount of possible applications where Deep Learning can be deployed, these include:
- Automatic speech recognition
- Image recognition
- Visual art processing
- Natural language processing
- Drug discovery and toxicology
- Customer relationship management
- Recommendation systems
- Bioinformatics
- Health diagnostics
- Image restoration
- Financial fraud detection
Development Environments
There are the following development environments already part of our HPC
- Python 3.5 with Tensorflow (and Keras), and theano.
- C/C++/Fortran with CUDA GPU programming.
- PGI compiler with openACC programming for C and Fortran.
- Matlab with deep learning libraries.
Deep Learning example
This represents the "Hello World" of the deep learning programs, and the mnist data set represents a large amount of hand written numbers (28 x 28 pixels) with labels. This program trains the neural network as training data and then uses that neural network to test data against the data set.
#!/usr/bin/env python
import tensorflow as tf
mnist = tf.keras.datasets.mnist
(x_train, y_train),(x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0
model = tf.keras.models.Sequential([
tf.keras.layers.Flatten(),
tf.keras.layers.Dense(512, activation=tf.nn.relu),
tf.keras.layers.Dropout(0.2),
tf.keras.layers.Dense(10, activation=tf.nn.softmax)
])
model.compile(optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=['accuracy'])
model.fit(x_train, y_train, epochs=5)
model.evaluate(x_test, y_test)
Further Information
| |