이 글에서는 Deeplearning4j에서 제공하는 예제 dlj4-examples
를 빌드하고 실행하는 과정을 보여줍니다. Ubuntu 환경을 기준으로 설명을 하고 Windows 환경에 대해서는 뒷부분에서 간략하게 소개합니다.
실습 환경
Ubuntu 16.04 환경
도구
- OpenJDK 8
- Apache Maven 3.6.2
- Git
예제 일부에서 사용하고 있는 JavaFX가 OpenJDK 8에는 포함되어 있지 않기 때문에 아래 명령을 실행하여 설치합니다.
$ sudo apt-get install openjfx
예제 빌드
아래의 명령을 순서대로 실행하여 예제 소스를 다운로드하고 빌드합니다.
$ git clone https://github.com/deeplearning4j/dl4j-examples.git
$ cd dl4j-examples/
$ mvn clean install
예제 실행
예제 루트 폴더에 있는 runexamples.sh
스크립트를 사용하여 dl4j-examples
폴더 아래의 모든 예제를 실행하거나 하나를 지정하여 실행할 수 있습니다.
$ ./runexamples.sh -h
usage: ./runexamples.sh [-h|--help] [-a|-all] [-n|--no-pauses]
where:
-h|--help Show help and quit
-a|--all Run all the examples. Default is to prompt for which one to run.
-n|--no-pauses Don't pause between examples (use with --all).
스크립트를 옵션을 지정하지 않고 실행하면 예제 목록을 보여 주고 실행할 예제를 선택하도록 합니다.
$ ./runexamples.sh
[ 1] org.deeplearning4j.examples.dataexamples.CSVExample
[ 2] org.deeplearning4j.examples.dataexamples.BasicCSVClassifier
...
[68] org.deeplearning4j.examples.feedforward.mnist.MLPMnistTwoLayerExample
[69] org.deeplearning4j.examples.feedforward.mnist.MLPMnistSingleLayerExample
...
[111] org.deeplearning4j.examples.convolution.mnist.MnistClassifier
[112] org.deeplearning4j.examples.convolution.mnist.MnistClassifierUI
Enter a number for the example to run (q to quit):
예제 선택 프롬프트에서 69
를 입력하고 엔터를 치면 훈련을 진행하고 마지막에 아래와 같은 결과를 출력합니다.
o.d.o.l.ScoreIterationListener - Score at iteration 7034 is 0.09349513289911367
o.d.e.f.m.MLPMnistSingleLayerExample - Evaluate model....
o.d.e.f.m.MLPMnistSingleLayerExample -
========================Evaluation Metrics========================
# of classes: 10
Accuracy: 0.9723
Precision: 0.9723
Recall: 0.9720
F1 Score: 0.9721
Precision, recall & F1: macro-averaged (equally weighted avg. of 10 classes)
=========================Confusion Matrix=========================
0 1 2 3 4 5 6 7 8 9
---------------------------------------------------
966 0 1 2 0 3 5 1 2 0 | 0 = 0
0 1125 2 1 0 1 3 1 2 0 | 1 = 1
4 3 1004 5 3 1 1 7 4 0 | 2 = 2
0 0 2 992 0 3 0 6 5 2 | 3 = 3
1 0 5 0 960 0 3 2 2 9 | 4 = 4
3 1 0 8 1 863 8 1 5 2 | 5 = 5
5 3 1 0 7 7 932 0 3 0 | 6 = 6
1 10 11 3 1 1 0 992 0 9 | 7 = 7
3 1 2 9 3 6 5 5 938 2 | 8 = 8
4 8 1 13 20 2 1 6 3 951 | 9 = 9
Confusion matrix format: Actual (rowClass) predicted as (columnClass) N times
==================================================================
o.d.e.f.m.MLPMnistSingleLayerExample - ****************Example finished********************
Windows 10 환경
도구
Windows 10 환경에서는 아래의 도구를 사용하여 문제없이 빌드하였습니다.
- Oracle JDK 8
- Apache Maven 3.3.9
- Git
예제 일부에서 사용하고 있는 JavaFX가 Oracle JDK 8에는 포함되어 있기 때문에 별도로 설치할 필요가 없습니다.
빌드
> mvn clean install
실행
예제 MLPMnistSingleLayerExample
를 아래의 명령으로 실행합니다.
> cd dl4j-examples\target
> java -cp dl4j-examples-1.0.0-beta4-bin.jar org.deeplearning4j.examples.feedforward.mnist.MLPMnistSingleLayerExample
참고 문서
Deeplearning4j
Written with StackEdit.
댓글 없음:
댓글 쓰기