Firstly thanks for a very interesting series of lectures and discussions. I have a specific neural network example code that I would like to discuss and just need some assistance in finding the best way to approach this example. If not appropriate to discuss in depth here please advise if we can discuss off the forum. I am a looking at a supervised learning classification example of a rotated qubit. Basically an interval [0, pi] of rotation is discretized and measurements of spin-up or spin-down are associated with each each chose rotation angle in this interval. The rotation angle labels are represented as one-hot vectors (that is of the form {1,0,0,0...}). Hence this is a classification problem. I have a working code (attached) but I think it needs refinement (or a different approach). I am new to using Mathematica for machine learning applications.
My training and validation data sets are of the form:
{{975, 25} -> {1, 0, 0, 0, 0, 0, 0, 0, 0, 0}, {919, 81} -> {0, 1, 0,
0, 0, 0, 0, 0, 0, 0}, {801, 199} -> {0, 0, 1, 0, 0, 0, 0, 0, 0,
0}, {652, 348} -> {0, 0, 0, 1, 0, 0, 0, 0, 0, 0}, {505, 495} -> {0,
0, 0, 0, 1, 0, 0, 0, 0, 0}, {357, 643} -> {0, 0, 0, 0, 0, 1, 0, 0,
0, 0}, {190, 810} -> {0, 0, 0, 0, 0, 0, 1, 0, 0, 0}, {108,
892} -> {0, 0, 0, 0, 0, 0, 0, 1, 0, 0}, {15, 985} -> {0, 0, 0, 0,
0, 0, 0, 0, 1, 0}, {0, 1000} -> {0, 0, 0, 0, 0, 0, 0, 0, 0, 1}}
The tuples on the left are basically the data of how many spin-up and spin-down outcomes are recorded for each angle. Basically I simulate 1000 measurements for each rotation angle (10 rotation angles in the above training set but 40 in the attached code), and associate the outcomes of spin-up or spin-down with the rotation angle label (one-hot vectors). I then test the code for {1,0} and {0,1}, that is one spin-up and one-spin down and plot the associated angles probabilities. If you have a chance please have a look at my code and how I trained the data in the attached code. The output I am interested in is an accurate probability distribution for each bin (theta angle) given {1,0} and {0,1} after training. Any insights and tips for improving the accuracy of the neural network for this classification example would be appreciated.
Attachments: