|
1 | | -//TODO: change column names in MySQL to make them easier to work with |
2 | | -//TODO: change numbering |
3 | | - |
4 | 1 | PreCourse Steps: |
5 | 2 | A. Download the Kaggle data: https://www.kaggle.com/c/GiveMeSomeCredit/download/cs-training.csv |
6 | 3 | 1. Move this file to your Desktop. |
@@ -59,15 +56,18 @@ C. Create a node.js server to do three things: Load data from MySQL db, process |
59 | 56 | g) `nodemon --max-old-space-size=3000 server.js`. This line does three things: it starts your node server based on the path you give it from the current directory (server.js). It starts nodemon on it, which means it will restart whenever you make a change to any file in the server directory. It allocates 3000 MB of memory to node, so that it doesn't crash if node runs over the 1.76 GB typically allocated to Node.js. You can adjust this number based on your system's capabilities and the problem you're solving. |
60 | 57 | h) You can now make api calls to this server, either through your browser (http://localhost:5000/neuralNet/startNeuralNet), or through curl on your command line `curl localhost:5000/neuralNet/startNeuralNet` |
61 | 58 | i) You now have a running node server on your computer, with all the right dependencies installed! |
62 | | -D. The key files in our node server are in the neuralNet folder. neuralNetRouter.js is where you need to add in any new API endpoints you might create so that the server knows where to direct them, and neuralNetLogic.js is where we have all the actual JS logic built out. |
| 59 | +D. The key files in our node server are in the neuralNet folder. |
| 60 | + 1. neuralNetLogic.js is where we have all the actual JS logic built out. |
63 | 61 |
|
64 | 62 | E. Your turn! |
65 | 63 | Here are the things I expect you to do: |
66 | | -1. create a new net |
67 | | -2. train that net |
68 | | -3. get predicted outcomes from that net in testing |
| 64 | +1. Create a new net |
| 65 | +2. Train that net |
| 66 | +3. Get predicted outcomes from that net in testing |
69 | 67 | 4. Add in new data to train the net. Rewrite what's currently in formatData with new data points, or 'features' as they're called in data science, that are combinations of the raw data we already have. Examples would include exact ratios that the net currently can't access because we've already transformed the data into a number between 0 and 1. |
70 | 68 |
|
71 | 69 | Extra Credit: |
72 | 70 | 1. Handle cases that have missing data ("NA") differently than cases that have full data |
73 | | -2. Parallelize the training of multiple nets at the same time. Training each net is synchronous, so parallelizing won't help you train a single net any faster. But you could try creating multiple versions that have different parameters (number of nodes, hidden layers, learning rate, etc.) and training those in parallel with each other. |
| 71 | + |
| 72 | +Fantasy Mode: |
| 73 | +1. Parallelize the training of multiple nets at the same time. Training each net is synchronous, so parallelizing won't help you train a single net any faster. But you could try creating multiple versions that have different parameters (number of nodes, hidden layers, learning rate, etc.) and train those in parallel with each other. |
0 commit comments