Cognitive Computing
Java Champion, JavaOne Rockstar, plays well with others, etc :-)
Author of several Java/JavaFX/RaspPi books
@JavaFXpert
Developer Advocate & International Speaker for Pivotal
Developer, Women in Tech Activist
Senior Systems Engineer & Cognitive Computing Advocate for IBM
@SandhyaKapoor
Holds seven computer science related patents
Added Java 2 Security to WebSphere
International Speaker
Prior to the workshop, attendees must have installed the following:
@JavaFXpert
Deeplearning4j deeplearning4j.org examples
- Follow the Quick Start Guide http://deeplearning4j.org/quickstart through and including the DL4J Examples in a Few Easy Steps section.
- Criterion for successful install is that running CSVExample yields output that ends with a block of scores similar to the following:
Prior to the workshop, attendees must have installed the following:
@JavaFXpert
BURLAP burlap.cs.brown.edu examples
Use a similar procedure to install the BURLAP examples from the GitHub repository https://github.com/jmacglashan/burlap_examples/ as you did installing the Deeplearning4j examples from its GitHub repository. This procedure is:
> git clone https://github.com/jmacglashan/burlap_examples.git
> cd burlap_examples
> mvn clean install
Open the burlap_examples project in your IDE.
Criterion for successful installation is that running HelloGridWorld yields the display as shown on the right:
The labs follow this slide, but click here to see the content of Part One of this workshop.
@JavaFXpert
In CSVExample (located in the dl4j-examples project), modify the following hyperparameters and notice the effects on scores in the console ouput:
Modifying Hyperparameters
@JavaFXpert
In CSVExample (located in the dl4j-examples project), add the following lines of code to classify/predict an Iris flower that doesn't exist in the Iris dataset:
Making predictions
INDArray example = Nd4j.zeros(1, 4);
example.putScalar(new int[] { 0, 0 }, 5.1);
example.putScalar(new int[] { 0, 1 }, 3.5);
example.putScalar(new int[] { 0, 2 }, 1.4);
example.putScalar(new int[] { 0, 3 }, 0.2);
DataSet ds = new DataSet(example, null);
normalizer.transform(ds);
int[] prediction = model.predict(example);
System.out.println("prediction for 5.1,3.5,1.4,0.2: " + prediction[0]);
@JavaFXpert
In BasicBehavior (located in the burlap_examples project), make the only uncommented lines in the main() method be the following:
Modifying the rewards
example.qLearningExample(outputPath);
example.visualize(outputPath);
In the BasicBehavior() constructor method, add the bolded lines between the existing lines shown below, and observe the effects on the values in the states of the grid world.
goalCondition = new TFGoalCondition(tf);
RewardFunction rf = new GoalBasedRF(tf, 5.0);
gwdg.setRf(rf);
domain = gwdg.generateDomain();
@JavaFXpert
In BasicBehavior (located in the burlap_examples project), verify that the only uncommented lines in the main() method are the following:
Modifying the Discount Factor
example.qLearningExample(outputPath);
example.visualize(outputPath);
In the qLearningExample() method, modify the gamma (discount factor) argument to the QLearning constructor and observe the effects on the values in the states of the grid world.
Cognitive Computing