JMP Systems Engineer Sam Gardner presented a webcast on the JMP 9 Neural platform. Revamped for JMP 9, the new Neural platform enhances interactive data mining by offering a richer set of modeling options, improved speed and performance, and calculations that streamline analysis.
I thought I'd share Sam's answers to some of the questions asked by JMP users.
Q: Neural nets seem like nonlinear regression, which is very sensitive to boundary conditions and therefore often unstable. What is the advantage of neural nets over nonlinear regression?
A: Neural nets are a type of nonlinear model. They tend to work well when the response you are modeling is a relatively smooth function of the inputs. Neural nets don’t work as well when you have boundary conditions (such as y(x)=0 for x<=0), or discontinuities in the response. One advantage of neural nets is that you can easily fit a complex model to the data without having to worry about the functional form of the model, whereas with general nonlinear modeling, you must completely specify the model you want to use.
Q: Can I use categorical variables as inputs for a neural network?
A: Yes. JMP creates indicator variables in the background (not in the data table) for each level in the categorical input. For example, if the input is “food” and the categories are “apples”, “oranges” and “bananas,” JMP creates three input variables to the neural net:
food1 = (food == “apples”)
food2 = (food == “bananas”)
food3 = (food == “oranges”)
Because this is done in the background, when you save the prediction equations, the new variables are created with indicator functions inside the equations.
Q: Can I use neural nets to fit a binary Y variable?
A: Yes, you can fit a binary or multilevel categorical Y variable in the neural net. The only difference is that the output you are modeling is the probability of the frequency of occurrence of the categorical Y.
Q: After I have a model, can I add new data on a regular basis to use the model for prediction purposes?
A: If you add data that you want to be included in the fitting of the model, you must refit the neural model. If you only wish to make a prediction for the new input values based on model equations that you have saved to the data table, then simply add a row of data that includes the input values, and then JMP will calculate the output values in the prediction formula column.
Q: What is the tanh function?
A: The hyperbolic tangent (tanh) function historically has been a popular activation function to use in neural networks. It has nice properties (the output of tanh is bounded between -1,1, the effective range of inputs is -3 ,3, it is smooth, and it is differentiable) and allows very flexible nonlinear modeling. In JMP Pro (a new product in the JMP family), we also allow linear and Gaussian activation functions.
Q: Can neural nets be used for time series analysis?
A: Technically the answer is yes. The input to the neural net would be the time indicator, so you would be extrapolating beyond the range of the training data (i.e., predicting a future response for a time value outside the range of the training data set), so be cautious using this approach. In general, neural nets don’t extrapolate very well beyond the range of the training data.
Q: Is there a way to determine which variables had greater influence to the output variable?
A: JMP does not calculate variable importance measures for neural networks. However, you can see the variable importance visually using JMP Profilers.
Some users wanted to know how to take advantage of backward compatibility with the Neural Net platform used in JMP 8 or earlier. Sam showed how to write a script to invoke Neural Net from JMP 9. Watch now.
You also can add the Neural Net option to your JMP 9 menus. Watch now.