using PlotlyJS using PlotlyJS: savefig include("aux_func.jl") using LinearAlgebra #using StatsPlots #using Statistics #using Plots #= Define GPU paths =# #mni_folder_1 = "ini_exp_data/" mni_folder_100 = "exp_100_epochs/"; cif_folder_100 = "CIFAR_100_epoch/"; mni_folder_acc = "data_bounded/"; cif_folder_acc = "CIFAR_acc_bound/"; mni_folder_wat = "data_budget/"; cif_folder_wat = "CIFAR_energy_bound/"; mni_folder_est = "early_stop_res/"; cif_folder_est = "CIFAR_early_stop/"; bayes_model = "bayes"; freq_model = "freq"; w_type = "watt"; e_type = "exp"; #= Load GPU data =# mni_100_bay_ene = getgpudata(mni_folder_100, bayes_model, w_type, "eo"); mni_100_fre_ene = getgpudata(mni_folder_100, freq_model, w_type, "eo"); cif_100_bay_ene = getgpudata(cif_folder_100, bayes_model, w_type, "eo"); cif_100_fre_ene = getgpudata(cif_folder_100, freq_model, w_type, "eo"); mni_acc_bay_ene = getgpudata(mni_folder_acc, bayes_model, w_type, "eo"); mni_acc_fre_ene = getgpudata(mni_folder_acc, freq_model, w_type, "eo"); cif_acc_bay_ene = getgpudata(cif_folder_acc, bayes_model, w_type, "eo"); cif_acc_fre_ene = getgpudata(cif_folder_acc, freq_model, w_type, "eo"); mni_wat_bay_ene = getgpudata(mni_folder_wat, bayes_model, w_type, "eo"); mni_wat_fre_ene = getgpudata(mni_folder_wat, freq_model, w_type, "eo"); cif_wat_bay_ene = getgpudata(cif_folder_wat, bayes_model, w_type, "eo"); cif_wat_fre_ene = getgpudata(cif_folder_wat, freq_model, w_type, "eo"); mni_est_bay_ene = getgpudata(mni_folder_est, bayes_model, w_type, "eo"); mni_est_fre_ene = getgpudata(mni_folder_est, freq_model, w_type, "eo"); cif_est_bay_ene = getgpudata(cif_folder_est, bayes_model, w_type, "eo"); cif_est_fre_ene = getgpudata(cif_folder_est, freq_model, w_type, "eo"); #= Define CPU paths =# cif = "cifar"; mni = "mnist"; bay = "bayes"; wat = "cpu_watts"; frq = "freq"; ram = "ram_use"; _100 = "100"; acc = "acc"; es = "es"; wbud = "wbud"; #= Load CPU data =# bay_cif_100_ene = readcpudata(cif, bay, wat, _100); bay_mni_100_ene = readcpudata(mni, bay, wat, _100); frq_cif_100_ene = readcpudata(cif, frq, wat, _100); frq_mni_100_ene = readcpudata(mni, frq, wat, _100); bay_cif_acc_ene = readcpudata(cif, bay, wat, acc); bay_mni_acc_ene = readcpudata(mni, bay, wat, acc); frq_cif_acc_ene = readcpudata(cif, frq, wat, acc); frq_mni_acc_ene = readcpudata(mni, frq, wat, acc); bay_cif_wbu_ene = readcpudata(cif, bay, wat, wbud); bay_mni_wbu_ene = readcpudata(mni, bay, wat, wbud); frq_cif_wbu_ene = readcpudata(cif, frq, wat, wbud); frq_mni_wbu_ene = readcpudata(mni, frq, wat, wbud); bay_mni_est_ene = readcpudata(mni, bay, wat, es); bay_cif_est_ene = readcpudata(cif, bay, wat, es); frq_cif_est_ene = readcpudata(cif, frq, wat, es); frq_mni_est_ene = readcpudata(mni, frq, wat, es); for s = 1:5 bay_cif_acc_ene[s] = round.(getcpuwatt(bay_cif_acc_ene[s])) bay_cif_est_ene[s] = round.(getcpuwatt(bay_cif_est_ene[s])) bay_cif_wbu_ene[s] = round.(getcpuwatt(bay_cif_wbu_ene[s])) bay_cif_100_ene[s] = round.(getcpuwatt(bay_cif_100_ene[s])) bay_mni_acc_ene[s] = round.(getcpuwatt(bay_mni_acc_ene[s])) bay_mni_est_ene[s] = round.(getcpuwatt(bay_mni_est_ene[s])) bay_mni_wbu_ene[s] = round.(getcpuwatt(bay_mni_wbu_ene[s])) bay_mni_100_ene[s] = round.(getcpuwatt(bay_mni_100_ene[s])) frq_cif_acc_ene[s] = round.(getcpuwatt(frq_cif_acc_ene[s])) frq_cif_est_ene[s] = round.(getcpuwatt(frq_cif_est_ene[s])) frq_cif_wbu_ene[s] = round.(getcpuwatt(frq_cif_wbu_ene[s])) frq_cif_100_ene[s] = round.(getcpuwatt(frq_cif_100_ene[s])) frq_mni_acc_ene[s] = round.(getcpuwatt(frq_mni_acc_ene[s])) frq_mni_est_ene[s] = round.(getcpuwatt(frq_mni_est_ene[s])) frq_mni_wbu_ene[s] = round.(getcpuwatt(frq_mni_wbu_ene[s])) frq_mni_100_ene[s] = round.(getcpuwatt(frq_mni_100_ene[s])) end for s = 1:5 mni_100_bay_ene[s]["Ene"] = vcat(mni_100_bay_ene[s]["Ene"], bay_mni_100_ene[s]) mni_100_fre_ene[s]["Ene"] = vcat(mni_100_fre_ene[s]["Ene"], frq_mni_100_ene[s]) cif_100_bay_ene[s]["Ene"] = vcat(cif_100_bay_ene[s]["Ene"], bay_cif_100_ene[s]) cif_100_fre_ene[s]["Ene"] = vcat(cif_100_fre_ene[s]["Ene"], frq_cif_100_ene[s]) mni_acc_bay_ene[s]["Ene"] = vcat(mni_acc_bay_ene[s]["Ene"], bay_mni_acc_ene[s]) mni_acc_fre_ene[s]["Ene"] = vcat(mni_acc_fre_ene[s]["Ene"], frq_mni_acc_ene[s]) cif_acc_bay_ene[s]["Ene"] = vcat(cif_acc_bay_ene[s]["Ene"], bay_cif_acc_ene[s]) cif_acc_fre_ene[s]["Ene"] = vcat(cif_acc_fre_ene[s]["Ene"], frq_cif_acc_ene[s]) mni_wat_bay_ene[s]["Ene"] = vcat(mni_wat_bay_ene[s]["Ene"], bay_mni_wbu_ene[s]) mni_wat_fre_ene[s]["Ene"] = vcat(mni_wat_fre_ene[s]["Ene"], frq_mni_wbu_ene[s]) cif_wat_bay_ene[s]["Ene"] = vcat(cif_wat_bay_ene[s]["Ene"], bay_cif_wbu_ene[s]) cif_wat_fre_ene[s]["Ene"] = vcat(cif_wat_fre_ene[s]["Ene"], frq_cif_wbu_ene[s]) mni_est_bay_ene[s]["Ene"] = vcat(mni_est_bay_ene[s]["Ene"], bay_mni_est_ene[s]) mni_est_fre_ene[s]["Ene"] = vcat(mni_est_fre_ene[s]["Ene"], frq_mni_est_ene[s]) cif_est_bay_ene[s]["Ene"] = vcat(cif_est_bay_ene[s]["Ene"], bay_cif_est_ene[s]) cif_est_fre_ene[s]["Ene"] = vcat(cif_est_fre_ene[s]["Ene"], frq_cif_est_ene[s]) end #= Capture all energy means =# plot_dict = Dict( "mni" => Dict( 1 => Dict( "100" => Dict("bay" => ([], []), "frq" => ([], [])), "acc" => Dict("bay" => ([], []), "frq" => ([], [])), "wat" => Dict("bay" => ([], []), "frq" => ([], [])), "est" => Dict("bay" => ([], []), "frq" => ([], [])), ), 2 => Dict( "100" => Dict("bay" => ([], []), "frq" => ([], [])), "acc" => Dict("bay" => ([], []), "frq" => ([], [])), "wat" => Dict("bay" => ([], []), "frq" => ([], [])), "est" => Dict("bay" => ([], []), "frq" => ([], [])), ), 3 => Dict( "100" => Dict("bay" => ([], []), "frq" => ([], [])), "acc" => Dict("bay" => ([], []), "frq" => ([], [])), "wat" => Dict("bay" => ([], []), "frq" => ([], [])), "est" => Dict("bay" => ([], []), "frq" => ([], [])), ), 4 => Dict( "100" => Dict("bay" => ([], []), "frq" => ([], [])), "acc" => Dict("bay" => ([], []), "frq" => ([], [])), "wat" => Dict("bay" => ([], []), "frq" => ([], [])), "est" => Dict("bay" => ([], []), "frq" => ([], [])), ), 5 => Dict( "100" => Dict("bay" => ([], []), "frq" => ([], [])), "acc" => Dict("bay" => ([], []), "frq" => ([], [])), "wat" => Dict("bay" => ([], []), "frq" => ([], [])), "est" => Dict("bay" => ([], []), "frq" => ([], [])), ), ), "cif" => Dict( 1 => Dict( "100" => Dict("bay" => ([], []), "frq" => ([], [])), "acc" => Dict("bay" => ([], []), "frq" => ([], [])), "wat" => Dict("bay" => ([], []), "frq" => ([], [])), "est" => Dict("bay" => ([], []), "frq" => ([], [])), ), 2 => Dict( "100" => Dict("bay" => ([], []), "frq" => ([], [])), "acc" => Dict("bay" => ([], []), "frq" => ([], [])), "wat" => Dict("bay" => ([], []), "frq" => ([], [])), "est" => Dict("bay" => ([], []), "frq" => ([], [])), ), 3 => Dict( "100" => Dict("bay" => ([], []), "frq" => ([], [])), "acc" => Dict("bay" => ([], []), "frq" => ([], [])), "wat" => Dict("bay" => ([], []), "frq" => ([], [])), "est" => Dict("bay" => ([], []), "frq" => ([], [])), ), 4 => Dict( "100" => Dict("bay" => ([], []), "frq" => ([], [])), "acc" => Dict("bay" => ([], []), "frq" => ([], [])), "wat" => Dict("bay" => ([], []), "frq" => ([], [])), "est" => Dict("bay" => ([], []), "frq" => ([], [])), ), 5 => Dict( "100" => Dict("bay" => ([], []), "frq" => ([], [])), "acc" => Dict("bay" => ([], []), "frq" => ([], [])), "wat" => Dict("bay" => ([], []), "frq" => ([], [])), "est" => Dict("bay" => ([], []), "frq" => ([], [])), ), ), ) for s = 1:5 plot_dict["mni"][s]["100"]["bay"] = getuniquevalues(mni_100_bay_ene[s]["Ene"]) plot_dict["mni"][s]["100"]["frq"] = getuniquevalues(mni_100_fre_ene[s]["Ene"]) plot_dict["cif"][s]["100"]["bay"] = getuniquevalues(cif_100_bay_ene[s]["Ene"]) plot_dict["cif"][s]["100"]["frq"] = getuniquevalues(cif_100_fre_ene[s]["Ene"]) plot_dict["mni"][s]["acc"]["bay"] = getuniquevalues(mni_acc_bay_ene[s]["Ene"]) plot_dict["mni"][s]["acc"]["frq"] = getuniquevalues(mni_acc_fre_ene[s]["Ene"]) plot_dict["cif"][s]["acc"]["bay"] = getuniquevalues(cif_acc_bay_ene[s]["Ene"]) plot_dict["cif"][s]["acc"]["frq"] = getuniquevalues(cif_acc_fre_ene[s]["Ene"]) plot_dict["mni"][s]["wat"]["bay"] = getuniquevalues(mni_wat_bay_ene[s]["Ene"]) plot_dict["mni"][s]["wat"]["frq"] = getuniquevalues(mni_wat_fre_ene[s]["Ene"]) plot_dict["cif"][s]["wat"]["bay"] = getuniquevalues(cif_wat_bay_ene[s]["Ene"]) plot_dict["cif"][s]["wat"]["frq"] = getuniquevalues(cif_wat_fre_ene[s]["Ene"]) plot_dict["mni"][s]["est"]["bay"] = getuniquevalues(mni_est_bay_ene[s]["Ene"]) plot_dict["mni"][s]["est"]["frq"] = getuniquevalues(mni_est_fre_ene[s]["Ene"]) plot_dict["cif"][s]["est"]["bay"] = getuniquevalues(cif_est_bay_ene[s]["Ene"]) plot_dict["cif"][s]["est"]["frq"] = getuniquevalues(cif_est_fre_ene[s]["Ene"]) end #= # Plot data =# en_plot = plot( [ bar( x = plot_dict["mni"][1]["100"]["frq"][1], y = normalize(plot_dict["mni"][1]["100"]["frq"][2]), name = "LeNet 1", marker = attr( color = "rgb(211,120,000)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][2]["100"]["frq"][1], y = normalize(plot_dict["mni"][2]["100"]["frq"][2]), name = "LeNet 2", marker = attr( color = "rgb(255,170,017)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][3]["100"]["frq"][1], y = normalize(plot_dict["mni"][3]["100"]["frq"][2]), name = "LeNet 3", marker = attr( color = "rgb(255,187,034)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][4]["100"]["frq"][1], y = normalize(plot_dict["mni"][4]["100"]["frq"][2]), name = "LeNet 4", marker = attr( color = "rgb(255,204,051)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][5]["100"]["frq"][1], y = normalize(plot_dict["mni"][5]["100"]["frq"][2]), name = "LeNet 5", marker = attr( color = "rgb(255,221,068)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][1]["100"]["bay"][1], y = normalize(plot_dict["mni"][1]["100"]["bay"][2]), name = "BCNN 1", marker = attr( color = "rgb(055,033,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][2]["100"]["bay"][1], y = normalize(plot_dict["mni"][2]["100"]["bay"][2]), name = "BCNN 2", marker = attr( color = "rgb(033,081,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][3]["100"]["bay"][1], y = normalize(plot_dict["mni"][3]["100"]["bay"][2]), name = "BCNN 3", marker = attr( color = "rgb(033,115,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][4]["100"]["bay"][1], y = normalize(plot_dict["mni"][4]["100"]["bay"][2]), name = "BCNN 4", marker = attr( color = "rgb(151,177,255)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][5]["100"]["bay"][1], y = normalize(plot_dict["mni"][5]["100"]["bay"][2]), name = "BCNN 5", marker = attr( color = "rgb(051,215,255)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), ], Layout( barmode = "overlay", xaxis_tickangle = -45, yaxis_title_text = "Samples", xaxis_title_text = "Watt"; yaxis_range = [0, 1], ), ) savefig(en_plot, "mnist_100_ene.png") en_plot = plot( [ bar( x = plot_dict["cif"][1]["100"]["frq"][1], y = normalize(plot_dict["cif"][1]["100"]["frq"][2]), name = "LeNet 1", marker = attr( color = "rgb(211,120,000)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][2]["100"]["frq"][1], y = normalize(plot_dict["cif"][2]["100"]["frq"][2]), name = "LeNet 2", marker = attr( color = "rgb(255,170,017)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][3]["100"]["frq"][1], y = normalize(plot_dict["cif"][3]["100"]["frq"][2]), name = "LeNet 3", marker = attr( color = "rgb(255,187,034)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][4]["100"]["frq"][1], y = normalize(plot_dict["cif"][4]["100"]["frq"][2]), name = "LeNet 4", marker = attr( color = "rgb(255,204,051)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][5]["100"]["frq"][1], y = normalize(plot_dict["cif"][5]["100"]["frq"][2]), name = "LeNet 5", marker = attr( color = "rgb(255,221,068)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][1]["100"]["bay"][1], y = normalize(plot_dict["cif"][1]["100"]["bay"][2]), name = "BCNN 1", marker = attr( color = "rgb(055,033,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][2]["100"]["bay"][1], y = normalize(plot_dict["cif"][2]["100"]["bay"][2]), name = "BCNN 2", marker = attr( color = "rgb(033,081,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][3]["100"]["bay"][1], y = normalize(plot_dict["cif"][3]["100"]["bay"][2]), name = "BCNN 3", marker = attr( color = "rgb(033,115,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][4]["100"]["bay"][1], y = normalize(plot_dict["cif"][4]["100"]["bay"][2]), name = "BCNN 4", marker = attr( color = "rgb(151,177,255)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][5]["100"]["bay"][1], y = normalize(plot_dict["cif"][5]["100"]["bay"][2]), name = "BCNN 5", marker = attr( color = "rgb(051,215,255)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), ], Layout( barmode = "overlay", xaxis_tickangle = -45, yaxis_title_text = "Samples", xaxis_title_text = "Watt"; yaxis_range = [0, 1], ), ) savefig(en_plot, "cifar_100_ene.png") en_plot = plot( [ bar( x = plot_dict["mni"][1]["est"]["frq"][1], y = normalize(plot_dict["mni"][1]["est"]["frq"][2]), name = "LeNet 1", marker = attr( color = "rgb(211,120,000)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][2]["est"]["frq"][1], y = normalize(plot_dict["mni"][2]["est"]["frq"][2]), name = "LeNet 2", marker = attr( color = "rgb(255,170,017)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][3]["est"]["frq"][1], y = normalize(plot_dict["mni"][3]["est"]["frq"][2]), name = "LeNet 3", marker = attr( color = "rgb(255,187,034)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][4]["est"]["frq"][1], y = normalize(plot_dict["mni"][4]["est"]["frq"][2]), name = "LeNet 4", marker = attr( color = "rgb(255,204,051)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][5]["est"]["frq"][1], y = normalize(plot_dict["mni"][5]["est"]["frq"][2]), name = "LeNet 5", marker = attr( color = "rgb(255,221,068)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][1]["est"]["bay"][1], y = normalize(plot_dict["mni"][1]["est"]["bay"][2]), name = "BCNN 1", marker = attr( color = "rgb(055,033,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][2]["est"]["bay"][1], y = normalize(plot_dict["mni"][2]["est"]["bay"][2]), name = "BCNN 2", marker = attr( color = "rgb(033,081,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][3]["est"]["bay"][1], y = normalize(plot_dict["mni"][3]["est"]["bay"][2]), name = "BCNN 3", marker = attr( color = "rgb(033,115,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][4]["est"]["bay"][1], y = normalize(plot_dict["mni"][4]["est"]["bay"][2]), name = "BCNN 4", marker = attr( color = "rgb(151,177,255)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][5]["est"]["bay"][1], y = normalize(plot_dict["mni"][5]["est"]["bay"][2]), name = "BCNN 5", marker = attr( color = "rgb(051,215,255)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), ], Layout( barmode = "overlay", xaxis_tickangle = -45, yaxis_title_text = "Samples %", xaxis_title_text = "Watt"; yaxis_range = [0, 1], ), ) savefig(en_plot, "mnist_es_ene.png") en_plot = plot( [ bar( x = plot_dict["cif"][1]["est"]["frq"][1], y = normalize(plot_dict["cif"][1]["est"]["frq"][2]), name = "LeNet 1", marker = attr( color = "rgb(211,120,000)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][2]["est"]["frq"][1], y = normalize(plot_dict["cif"][2]["est"]["frq"][2]), name = "LeNet 2", marker = attr( color = "rgb(255,170,017)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][3]["est"]["frq"][1], y = normalize(plot_dict["cif"][3]["est"]["frq"][2]), name = "LeNet 3", marker = attr( color = "rgb(255,187,034)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][4]["est"]["frq"][1], y = normalize(plot_dict["cif"][4]["est"]["frq"][2]), name = "LeNet 4", marker = attr( color = "rgb(255,204,051)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][5]["est"]["frq"][1], y = normalize(plot_dict["cif"][5]["est"]["frq"][2]), name = "LeNet 5", marker = attr( color = "rgb(255,221,068)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][1]["est"]["bay"][1], y = normalize(plot_dict["cif"][1]["est"]["bay"][2]), name = "BCNN 1", marker = attr( color = "rgb(055,033,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][2]["est"]["bay"][1], y = normalize(plot_dict["cif"][2]["est"]["bay"][2]), name = "BCNN 2", marker = attr( color = "rgb(033,081,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][3]["est"]["bay"][1], y = normalize(plot_dict["cif"][3]["est"]["bay"][2]), name = "BCNN 3", marker = attr( color = "rgb(033,115,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][4]["est"]["bay"][1], y = normalize(plot_dict["cif"][4]["est"]["bay"][2]), name = "BCNN 4", marker = attr( color = "rgb(151,177,255)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][5]["est"]["bay"][1], y = normalize(plot_dict["cif"][5]["est"]["bay"][2]), name = "BCNN 5", marker = attr( color = "rgb(051,215,255)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), ], Layout( barmode = "overlay", xaxis_tickangle = -45, yaxis_title_text = "Sample %", xaxis_title_text = "Watt"; yaxis_range = [0, 1], ), ) savefig(en_plot, "cifar_es_ene.png") en_plot = plot( [ bar( x = plot_dict["mni"][5]["acc"]["frq"][1], y = normalize(plot_dict["mni"][5]["acc"]["frq"][2]), name = "LeNet 1", marker = attr( color = "rgb(211,120,000)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][5]["acc"]["frq"][1], y = normalize(plot_dict["mni"][5]["acc"]["frq"][2]), name = "LeNet 2", marker = attr( color = "rgb(255,170,017)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][5]["acc"]["frq"][1], y = normalize(plot_dict["mni"][5]["acc"]["frq"][2]), name = "LeNet 3", marker = attr( color = "rgb(255,187,034)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][5]["acc"]["frq"][1], y = normalize(plot_dict["mni"][5]["acc"]["frq"][2]), name = "LeNet 4", marker = attr( color = "rgb(255,204,051)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][5]["acc"]["frq"][1], y = normalize(plot_dict["mni"][5]["acc"]["frq"][2]), name = "LeNet 5", marker = attr( color = "rgb(255,221,068)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][1]["acc"]["bay"][1], y = normalize(plot_dict["mni"][1]["acc"]["bay"][2]), name = "BCNN 1", marker = attr( color = "rgb(055,033,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][2]["acc"]["bay"][1], y = normalize(plot_dict["mni"][2]["acc"]["bay"][2]), name = "BCNN 2", marker = attr( color = "rgb(033,081,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][3]["acc"]["bay"][1], y = normalize(plot_dict["mni"][3]["acc"]["bay"][2]), name = "BCNN 3", marker = attr( color = "rgb(033,115,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][4]["acc"]["bay"][1], y = normalize(plot_dict["mni"][4]["acc"]["bay"][2]), name = "BCNN 4", marker = attr( color = "rgb(151,177,255)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][5]["acc"]["bay"][1], y = normalize(plot_dict["mni"][5]["acc"]["bay"][2]), name = "BCNN 5", marker = attr( color = "rgb(051,215,255)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), ], Layout( barmode = "overlay", xaxis_tickangle = -45, yaxis_title_text = "Sample %", xaxis_title_text = "Watt"; yaxis_range = [0, 1], ), ) savefig(en_plot, "mnist_ab_ene.png") en_plot = plot( [ bar( x = plot_dict["cif"][1]["acc"]["frq"][1], y = normalize(plot_dict["cif"][1]["acc"]["frq"][2]), name = "LeNet 1", marker = attr( color = "rgb(211,120,000)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][2]["acc"]["frq"][1], y = normalize(plot_dict["cif"][2]["acc"]["frq"][2]), name = "LeNet 2", marker = attr( color = "rgb(255,170,017)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][3]["acc"]["frq"][1], y = normalize(plot_dict["cif"][3]["acc"]["frq"][2]), name = "LeNet 3", marker = attr( color = "rgb(255,187,034)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][4]["acc"]["frq"][1], y = normalize(plot_dict["cif"][4]["acc"]["frq"][2]), name = "LeNet 4", marker = attr( color = "rgb(255,204,051)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][5]["acc"]["frq"][1], y = normalize(plot_dict["cif"][5]["acc"]["frq"][2]), name = "LeNet 5", marker = attr( color = "rgb(255,221,068)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][1]["acc"]["bay"][1], y = normalize(plot_dict["cif"][1]["acc"]["bay"][2]), name = "BCNN 1", marker = attr( color = "rgb(055,033,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][2]["acc"]["bay"][1], y = normalize(plot_dict["cif"][2]["acc"]["bay"][2]), name = "BCNN 2", marker = attr( color = "rgb(033,081,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][3]["acc"]["bay"][1], y = normalize(plot_dict["cif"][3]["acc"]["bay"][2]), name = "BCNN 3", marker = attr( color = "rgb(033,115,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][4]["acc"]["bay"][1], y = normalize(plot_dict["cif"][4]["acc"]["bay"][2]), name = "BCNN 4", marker = attr( color = "rgb(151,177,255)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][5]["acc"]["bay"][1], y = normalize(plot_dict["cif"][5]["acc"]["bay"][2]), name = "BCNN 5", marker = attr( color = "rgb(051,215,255)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), ], Layout( barmode = "overlay", xaxis_tickangle = -45, yaxis_title_text = "Sample %", xaxis_title_text = "Watt"; yaxis_range = [0, 1], ), ) savefig(en_plot, "cifar_ab_ene.png") en_plot = plot( [ bar( x = plot_dict["mni"][1]["wat"]["frq"][1], y = normalize(plot_dict["mni"][1]["wat"]["frq"][2]), name = "LeNet 1", marker = attr( color = "rgb(211,120,000)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][2]["wat"]["frq"][1], y = normalize(plot_dict["mni"][2]["wat"]["frq"][2]), name = "LeNet 2", marker = attr( color = "rgb(255,170,017)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][3]["wat"]["frq"][1], y = normalize(plot_dict["mni"][3]["wat"]["frq"][2]), name = "LeNet 3", marker = attr( color = "rgb(255,187,034)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][4]["wat"]["frq"][1], y = normalize(plot_dict["mni"][4]["wat"]["frq"][2]), name = "LeNet 4", marker = attr( color = "rgb(255,204,051)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][5]["wat"]["frq"][1], y = normalize(plot_dict["mni"][5]["wat"]["frq"][2]), name = "LeNet 5", marker = attr( color = "rgb(255,221,068)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][1]["wat"]["bay"][1], y = normalize(plot_dict["mni"][1]["wat"]["bay"][2]), name = "BCNN 1", marker = attr( color = "rgb(055,033,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][2]["wat"]["bay"][1], y = normalize(plot_dict["mni"][2]["wat"]["bay"][2]), name = "BCNN 2", marker = attr( color = "rgb(033,081,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][3]["wat"]["bay"][1], y = normalize(plot_dict["mni"][3]["wat"]["bay"][2]), name = "BCNN 3", marker = attr( color = "rgb(033,115,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][4]["wat"]["bay"][1], y = normalize(plot_dict["mni"][4]["wat"]["bay"][2]), name = "BCNN 4", marker = attr( color = "rgb(151,177,255)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["mni"][5]["wat"]["bay"][1], y = normalize(plot_dict["mni"][5]["wat"]["bay"][2]), name = "BCNN 5", marker = attr( color = "rgb(051,215,255)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), ], Layout( barmode = "overlay", xaxis_tickangle = -45, yaxis_title_text = "Sample %", xaxis_title_text = "Watt"; yaxis_range = [0, 1], ), ) savefig(en_plot, "mnist_eb_ene.png") en_plot = plot( [ bar( x = plot_dict["cif"][1]["wat"]["frq"][1], y = normalize(plot_dict["cif"][1]["wat"]["frq"][2]), name = "LeNet 1", marker = attr( color = "rgb(211,120,000)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][2]["wat"]["frq"][1], y = normalize(plot_dict["cif"][2]["wat"]["frq"][2]), name = "LeNet 2", marker = attr( color = "rgb(255,170,017)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][3]["wat"]["frq"][1], y = normalize(plot_dict["cif"][3]["wat"]["frq"][2]), name = "LeNet 3", marker = attr( color = "rgb(255,187,034)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][4]["wat"]["frq"][1], y = normalize(plot_dict["cif"][4]["wat"]["frq"][2]), name = "LeNet 4", marker = attr( color = "rgb(255,204,051)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][5]["wat"]["frq"][1], y = normalize(plot_dict["cif"][5]["wat"]["frq"][2]), name = "LeNet 5", marker = attr( color = "rgb(255,221,068)", line_color = "rgb(200,100,000)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][1]["wat"]["bay"][1], y = normalize(plot_dict["cif"][1]["wat"]["bay"][2]), name = "BCNN 1", marker = attr( color = "rgb(055,033,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][2]["wat"]["bay"][1], y = normalize(plot_dict["cif"][2]["wat"]["bay"][2]), name = "BCNN 2", marker = attr( color = "rgb(033,081,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][3]["wat"]["bay"][1], y = normalize(plot_dict["cif"][3]["wat"]["bay"][2]), name = "BCNN 3", marker = attr( color = "rgb(033,115,240)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][4]["wat"]["bay"][1], y = normalize(plot_dict["cif"][4]["wat"]["bay"][2]), name = "BCNN 4", marker = attr( color = "rgb(151,177,255)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), bar( x = plot_dict["cif"][5]["wat"]["bay"][1], y = normalize(plot_dict["cif"][5]["wat"]["bay"][2]), name = "BCNN 5", marker = attr( color = "rgb(051,215,255)", line_color = "rgb(065,043,250)", line_width = 1.0, opacity = 0.4, ), ), ], Layout( barmode = "overlay", xaxis_tickangle = -45, yaxis_title_text = "Sample %", xaxis_title_text = "Watt"; yaxis_range = [0, 1], ), ) savefig(en_plot, "cifar_eb_ene.png")