How can I use DL4J in my own Java project using maven?
For this project I am going to need to shade dependencies inside of my new projects jar however doing this causes my jar file to be almost 500MB when its normally like 4MB it also causes my jar to crash (this is before I even do anything with the shaded dependencies) so I assume I am doing something wrong.
Here is what I added to my pom:
<properties>
<java.version>1.8</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<dl4j-master.version>1.0.0-M2</dl4j-master.version>
<logback.version>1.2.3</logback.version>
<maven-shade-plugin.version>2.4.3</maven-shade-plugin.version>
</properties>
<dependencies>
<dependency>
<groupId>org.deeplearning4j</groupId>
<artifactId>deeplearning4j-core</artifactId>
<version>${dl4j-master.version}</version>
</dependency>
<dependency>
<groupId>org.nd4j</groupId>
<artifactId>nd4j-native</artifactId>
<version>${dl4j-master.version}</version>
</dependency>
</dependencies>
Then to resolve the maven errors I went into my project structure and added the following libraries. I then clicked add to project which created a libs folder and then downloaded a ton of files. This did resolve all errors.
org.apache.cassandra:cassandra-all:1.1.42
org.deeplearning4j:deeplearning4j-core:1.0.0-alpha2
Looking in my libs folder I know I can delete the android stuff but I assume I need to keep all of the windows, linux, and macos jars so that I can run my jar on multiple operating systems however there is a bunch more here that I am not sure about.
My objective with DL4J is to train a model to recognize a pattern and return an array of size 2 with one of the 9 permutations of 0, 1, and -1 for example:
new int[]{0, 1}, new int[] {1, 0}, new int[] {1, -1}
To train the model I can supply it with as much data as it needs (please let me know an estimated amount). This data will be of high quality meaning that it will contain a few integers and booleans along with being assign one of the 9 array permutations (all of this data will be accurate). From this I am hoping to be able to train the model to output all array permutations that a given set of data will satisfy ordered from most to least likely. Also how fast would a trained model be able to perform these calculations? Anyway I would greatly appreciate any insight into the required dependencies / structure needed to achieve my desired outcome.
Here are images of my libs folder in case you are curious.
(I am now shading it correctly so I don't have the libs folder)
However I still need to figure out how to use the pom.xml to not include all jars related to ios and android.