Feature Sensitivity
Collapse Tensorflow Coupon Figure
![Standard Deviation of Features Extracted from the Tensorflow Coupon Network on idx001100 Data](../_images/activation_15_all_features_std_idx00110.png)
Standard Deviation of Features Extracted from the Tensorflow Coupon Network on idx001100 Data
Collapse Pytorch Nested Cylinder Figure
![Standard Deviation of Features Extracted from the Pytorch Nested Cylinder Network on idx00112 Data](../_images/interp_module_interpActivations_10_all_features_std_idx00112.png)
Standard Deviation of Features Extracted from the Pytorch Nested Cylinder Network on idx00112 Data
Code Documentation
- Plots the average and standard deviation of features extracted from a set of related inputs
Averages each pixel across multiple inputs
- Plots average and standard deviations in seperate figures
Can plot all features from a layer on the same plot (
-T Grid
)Can plot all features from a layer on their own plots (
-T All
)Can plot some features from a layer on their own plots (
-T # #
)
- Fixed key (
-XK
) specifies what subset of data to consider ‘None’ can be passed to consider any input with no restrictions
For coupon data, fixed keys must be in the form ‘tpl###’ or ‘idx#####’
For nested cylinder data, fixed keys must be in the form ‘id####’ or ‘idx#####’
Saves all averages and standard deviations to a .npz file.
-FL filepath
) OR-FL MAKE -NS #
)Input Line for TF Coupon Models:
python feature_sensitivity.py -P tensorflow -E coupon -M ../examples/tf_coupon/trained_pRad2TePla_model.h5 -IF pRad -ID ../examples/tf_coupon/data/ -DF ../examples/tf_coupon/coupon_design_file.csv -L activation_15 -T Grid -NM ft01 -XK idx00110 -S ../examples/tf_coupon/figures/
Input Line for PYT Nested Cylinder Models:
python feature_sensitivity.py -P pytorch -E nestedcylinder -M ../examples/pyt_nestedcyl/trained_rho2PTW_model.pth -IF rho -ID ../examples/pyt_nestedcyl/data/ -DF ../examples/pyt_nestedcyl/nestedcyl_design_file.csv -L interp_module.interpActivations.10 -T Grid -NM ft01 -XK idx00112 -S ../examples/pyt_nestedcyl/figures/
Arguments
Plots the average and standard deviation of features extracted from a set of related inputs
usage: python feature_sensitivity.py [-h] [--PACKAGE] [--EXPERIMENT] [--MODEL]
[--INPUT_FIELD] [--INPUT_DIR]
[--FILE_LIST] [--DESIGN_FILE]
[--PRINT_LAYERS] [--PRINT_FEATURES]
[--PRINT_FIELDS] [--PRINT_KEYS]
[--PRINT_SAMPLES] [--LAYER]
[--FEATURES [...]] [--MAT_NORM]
[--FIXED_KEY] [--NUM_SAMPLES] [--ALPHA1]
[--ALPHA2] [--COLOR1] [--COLOR2]
[--SAVE_FIG]
Named Arguments
- --PACKAGE, -P
Possible choices: tensorflow, pytorch
Which python package was used to create the model
Default: “tensorflow”
- --EXPERIMENT, -E
Possible choices: coupon, nestedcylinder
Which experiment the model was trained on
Default: “coupon”
- --MODEL, -M
Model file
Default: “../examples/tf_coupon/trained_pRad2TePla_model.h5”
- --INPUT_FIELD, -IF
The radiographic/hydrodynamic field the model is trained on
Default: “pRad”
- --INPUT_DIR, -ID
Directory path where all of the .npz files are stored
Default: “../examples/tf_coupon/data/”
- --FILE_LIST, -FL
The .txt file containing a list of .npz file paths; use “MAKE” to generate a file list given an input directory (passed with -ID) and a number of samples (passed with -NS).
Default: “MAKE”
- --DESIGN_FILE, -DF
The .csv file with master design study parameters
Default: “../examples/tf_coupon/coupon_design_file.csv”
- --PRINT_LAYERS, -PL
Prints list of layer names in a model (passed with -M) and quits program
Default: False
- --PRINT_FEATURES, -PT
Prints number of features extracted by a layer (passed with -L) and quits program
Default: False
- --PRINT_FIELDS, -PF
Prints list of hydrodynamic/radiographic fields present in a given .npz file (passed with -IN) and quits program
Default: False
- --PRINT_KEYS, -PK
Prints list of choices for the fixed key avialable in a given input dirrectory (passed with -ID) and quits program
Default: False
- --PRINT_SAMPLES, -PS
Prints number of samples in a directory (passed with -ID) matching a fixed key (passed with -XK) and quits program
Default: False
- --LAYER, -L
Name of model layer that features will be extracted from
Default: “None”
- --FEATURES, -T
List of features to include; “Grid” plots all features in one figure using subplots; “All” plots all features each in a new figure; A list of integers can be passed to plot those features each in a new figure. Integer convention starts at 1.
Default: [‘Grid’]
- --MAT_NORM, -NM
Possible choices: ft01, all01, none
How the extracted features will be normalized, resulting in a scaled matrix; “ft01” normalizes by the min and max of each feature separately; “all01” normalizes by the min and max of all extracted features; “none” does not normalize features.
Default: “ft01”
- --FIXED_KEY, -XK
The identifying string for some subset of all data samples; pass “None” to consider all samples
Default: “None”
- --NUM_SAMPLES, -NS
Number of samples to use; pass “All” to use all samples in a given input dirrectory (passed with -ID)
Default: “All”
- --ALPHA1, -A1
Opacity of colormap at value 0
Default: 0.25
- --ALPHA2, -A2
Opacity of colormap at value 1
Default: 1.0
- --COLOR1, -C1
Possible choices: aliceblue, antiquewhite, aqua, aquamarine, azure, beige, bisque, black, blanchedalmond, blue, blueviolet, brown, burlywood, cadetblue, chartreuse, chocolate, coral, cornflowerblue, cornsilk, crimson, cyan, darkblue, darkcyan, darkgoldenrod, darkgray, darkgreen, darkgrey, darkkhaki, darkmagenta, darkolivegreen, darkorange, darkorchid, darkred, darksalmon, darkseagreen, darkslateblue, darkslategray, darkslategrey, darkturquoise, darkviolet, deeppink, deepskyblue, dimgray, dimgrey, dodgerblue, firebrick, floralwhite, forestgreen, fuchsia, gainsboro, ghostwhite, gold, goldenrod, gray, green, greenyellow, grey, honeydew, hotpink, indianred, indigo, ivory, khaki, lavender, lavenderblush, lawngreen, lemonchiffon, lightblue, lightcoral, lightcyan, lightgoldenrodyellow, lightgray, lightgreen, lightgrey, lightpink, lightsalmon, lightseagreen, lightskyblue, lightslategray, lightslategrey, lightsteelblue, lightyellow, lime, limegreen, linen, magenta, maroon, mediumaquamarine, mediumblue, mediumorchid, mediumpurple, mediumseagreen, mediumslateblue, mediumspringgreen, mediumturquoise, mediumvioletred, midnightblue, mintcream, mistyrose, moccasin, navajowhite, navy, oldlace, olive, olivedrab, orange, orangered, orchid, palegoldenrod, palegreen, paleturquoise, palevioletred, papayawhip, peachpuff, peru, pink, plum, powderblue, purple, rebeccapurple, red, rosybrown, royalblue, saddlebrown, salmon, sandybrown, seagreen, seashell, sienna, silver, skyblue, slateblue, slategray, slategrey, snow, springgreen, steelblue, tan, teal, thistle, tomato, turquoise, violet, wheat, white, whitesmoke, yellow, yellowgreen
Color of colormap at value 0; Choose from matplotlib CSS4 color list.
Default: “yellow”
- --COLOR2, -C2
Possible choices: aliceblue, antiquewhite, aqua, aquamarine, azure, beige, bisque, black, blanchedalmond, blue, blueviolet, brown, burlywood, cadetblue, chartreuse, chocolate, coral, cornflowerblue, cornsilk, crimson, cyan, darkblue, darkcyan, darkgoldenrod, darkgray, darkgreen, darkgrey, darkkhaki, darkmagenta, darkolivegreen, darkorange, darkorchid, darkred, darksalmon, darkseagreen, darkslateblue, darkslategray, darkslategrey, darkturquoise, darkviolet, deeppink, deepskyblue, dimgray, dimgrey, dodgerblue, firebrick, floralwhite, forestgreen, fuchsia, gainsboro, ghostwhite, gold, goldenrod, gray, green, greenyellow, grey, honeydew, hotpink, indianred, indigo, ivory, khaki, lavender, lavenderblush, lawngreen, lemonchiffon, lightblue, lightcoral, lightcyan, lightgoldenrodyellow, lightgray, lightgreen, lightgrey, lightpink, lightsalmon, lightseagreen, lightskyblue, lightslategray, lightslategrey, lightsteelblue, lightyellow, lime, limegreen, linen, magenta, maroon, mediumaquamarine, mediumblue, mediumorchid, mediumpurple, mediumseagreen, mediumslateblue, mediumspringgreen, mediumturquoise, mediumvioletred, midnightblue, mintcream, mistyrose, moccasin, navajowhite, navy, oldlace, olive, olivedrab, orange, orangered, orchid, palegoldenrod, palegreen, paleturquoise, palevioletred, papayawhip, peachpuff, peru, pink, plum, powderblue, purple, rebeccapurple, red, rosybrown, royalblue, saddlebrown, salmon, sandybrown, seagreen, seashell, sienna, silver, skyblue, slateblue, slategray, slategrey, snow, springgreen, steelblue, tan, teal, thistle, tomato, turquoise, violet, wheat, white, whitesmoke, yellow, yellowgreen
Color of colormap at value 1; Choose from matplotlib CSS4 color list.
Default: “red”
- --SAVE_FIG, -S
Directory to save the outputs to.
Default: “../examples/tf_coupon/figures/”