Fast Forward Passing Neural Networks in Java
Budget: $30 – $250 CAD
In this project, I want to have efficient Java code written for me that can pass forward through 200 Feedforward Neural Networks in less than 20 milliseconds. This will likely have to be parallelized.
Please let me know the computational power required in order to run the script accordingly, and whether it involves leveraging additional CPU or GPU cores. Efficiency and speed are key and non-negotiable for this project.
Requirements:
- Mastery of Java programming language
- Proficient in machine learning, specifically Feedforward Neural Networks
- Understanding of high-performance computing and efficient algorithm designs
- Experience in dealing with large scale neural networks is preferred, but varying scales may be used during development and testing. For now, the neural network has 5 hidden layers of width 32, where the input layer (i.e. number of features) is 13, where the output layer has a width of 1, and where the input data has 2000 rows. Note that for speed testing purposes, you can use randomly initialized weights for the Neural Network, as well as randomly initialized values for the 2000 by 13 input data; later on, I'll load the true weights of the Neural networks and use real data.
Your role will mainly involve coding and testing for efficiency. The deliverable is a well-commented and reasonably modular Java code, which can be used for further development in the future.
I've attached some example code of what I was playing around with.
Please let me know the computational power required in order to run the script accordingly, and whether it involves leveraging additional CPU or GPU cores. Efficiency and speed are key and non-negotiable for this project.
Requirements:
- Mastery of Java programming language
- Proficient in machine learning, specifically Feedforward Neural Networks
- Understanding of high-performance computing and efficient algorithm designs
- Experience in dealing with large scale neural networks is preferred, but varying scales may be used during development and testing. For now, the neural network has 5 hidden layers of width 32, where the input layer (i.e. number of features) is 13, where the output layer has a width of 1, and where the input data has 2000 rows. Note that for speed testing purposes, you can use randomly initialized weights for the Neural Network, as well as randomly initialized values for the 2000 by 13 input data; later on, I'll load the true weights of the Neural networks and use real data.
Your role will mainly involve coding and testing for efficiency. The deliverable is a well-commented and reasonably modular Java code, which can be used for further development in the future.
I've attached some example code of what I was playing around with.