trainings_on_IMDB_and_different_weight_initializations_on_other_datasets.py.py and trainings_on_MNIST_and_FASHION_MNIST.py both contain all algorithms (Python 3)

"method=1" and "iter_count = 2" in main.py runs my algorithm with 2 iterations
"method=1" and "iter_count = 5" in main.py runs my algorithm with 5 iterations
"method=0" in main.py runs the gradient-based RMSProp

"mnist=True" in main.py sets MNIST dataset
"mnist=False" in main.py sets Fashion MNIST dataset
OR in the newer code, change the variable dataset='...'

For many trainings of the same model, change value of the variable "trainings_same_model". Despite the variable name, it starts multiple trainings with different weight values at the start. After the trainings, results are saved to a txt file in the same directory, from which main.py was called.

For graphs, use plots/main_plots_method1.py

Training configuration (requirements_all.txt; Python 3.8.2 was used), the most important packages:
numpy==1.24.4
scikit_learn==1.3.2
torch==2.1.0+cu118
torchvision==0.16.0+cu118
torchtext==0.16.0


