Re-creating the results in ICASSP 2023 submission "IMPROVED AUTO-ENCODING USING DETERMINISTIC PROJECTED BELIEF NETWORKS AND COMPOUND ACTIVATION FUNCTIONS": 1. Get data. Experiment 1: mn389_0.mat : These are characters "3", "8", and "9" from MNIST with added dither. Experiment 2: ds45.mat : These are commands "three" and "tree" from Google keywords 2. Download the Aesara version of the PBN Toolkit at http://class-specific.com/pbntk/ Skim through the docs to familiarize yourself with the various sections of the graphical interface, and terminology. 3. Download the model definitions and event list files. Experiment 1: mntestz.py, mntest.py Experiment 2: goog11z.py, goog11.py, goog11_dpbn.py Put these in a sub-directory calles "models" 4. Run the toolkit (see instructions at: http://class-specific.com/pbntk/ ) python pbntk.py o If you are not training from scratch, extract the pre-trained parameters: Experiment 1: mntestz_mn389_0.tgz Experiment 2: goog11z_ds45.tgz To continue training or evaluate the D-PBN/TCA model: a. set batchsize (BS) to 288 (because this b. enter 'ds45' into TRAIN DATA field, and press LOAD c. Check the "+1" checkbox on for bottom right of GUI. d. enter 'goog11z' into MODEL field and press LOAD If you have unpacked the pre-trained parameters, they will be loaded in, otherwise randomly initialized. To delete pre-trained parameters, press DELETE, then LOAD. e. Enter "7" into LYR field in DPBN Section. f. Enter "7" into LYR field in PBN-Synth Section. g. Compile DPBN by pressing DPBN. h. Compile DPBN synthesis pressing SYN in the PBN Synthesis Section. To continue training DPBN/TCA: a. Set learning rate (LR) to 1e-6 b. Check and uncheck "TRN" in DPBN Section to start and stop training. c. To avoid start-up transients, re-load parameters (press "LOAD" in MODEL Section), and re-start training several times until a stable change is seen, then training can proceed. To evaluate DPBN/TCA: a. Select desired data partition (Train/Valid/Test) in FWD Section. b. Press EVAL in DPBN Section, result gets printed. To visualize reconstructions: a. Check "PLT" on top right of GUI to enable plotting. b. Select desired data partition (Train/Valid/Test) in FWD Section. c. Press GO in PBN Synth Section. For the D-PBN (without TCA), load the model "goog11_dpbn" For the Auto-encoder, load the model "goog11"