From 740a828dc2d1b6144c964461a1527cf88ca76f9d Mon Sep 17 00:00:00 2001 From: maskomic Date: Tue, 10 Oct 2023 07:37:41 +0200 Subject: [PATCH] other minor changes --- .gitignore | 8 +++ experimental/plot.pdf | Bin 16784 -> 0 bytes experimental/plot.png | Bin 30195 -> 0 bytes plot.png | Bin 38832 -> 0 bytes scripts/experiments_mill/hmil_classifier.jl | 3 +- test/lhco.jl | 60 ++++++++++++++++++++ 6 files changed, 70 insertions(+), 1 deletion(-) delete mode 100644 experimental/plot.pdf delete mode 100644 experimental/plot.png delete mode 100644 plot.png create mode 100644 test/lhco.jl diff --git a/.gitignore b/.gitignore index 94d419b..b03b432 100755 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,11 @@ +################################################################################ +# Custom # +################################################################################ + +data/times +*.h5 + + ################################################################################ # DrWatson Project Structure # ################################################################################ diff --git a/experimental/plot.pdf b/experimental/plot.pdf deleted file mode 100644 index 536ca0e7093fac9af22e5571b0dc3dc9b90ec83c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16784 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 diff --git a/experimental/plot.png b/experimental/plot.png deleted file mode 100644 index 8e178838cb8362fa90cd4308c712960c4d7d6f62..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 30195 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ⅆ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 diff --git a/scripts/experiments_mill/hmil_classifier.jl b/scripts/experiments_mill/hmil_classifier.jl index bdcdc4b..82a2aec 100644 --- a/scripts/experiments_mill/hmil_classifier.jl +++ b/scripts/experiments_mill/hmil_classifier.jl @@ -45,7 +45,8 @@ function sample_params() return (mdim=mdim, activation=activation, aggregation=aggregation, nlayers=nlayers) end -loss(model, x, y) = Flux.logitcrossentropy(model(x), y) +loss(model, x, y) = Flux.crossentropy(model(x), y) +# loss(model, x, y) = Flux.logitcrossentropy(model(x), y) """ fit(data, parameters) diff --git a/test/lhco.jl b/test/lhco.jl new file mode 100644 index 0000000..2c6b9a2 --- /dev/null +++ b/test/lhco.jl @@ -0,0 +1,60 @@ +using Test +using GroupAD +using PyCall +using Mill + +""" + load_lhco(dataset = "events_anomalydetection_v2.h5") + +This function loads the LHCO2020 dataset (the R&D version for now) +and processes it to get a Mill.jl datasets of normal and anomalous +samples. + +Note: PyCall.jl must be installed, Python/3.8 loaded with pandas, +tables packages installed. If this version is used, the path to +Python must be `/mnt/appl/software/Python/3.8.6-GCCcore-10.2.0/bin/python`. +""" +function load_lhco_from_pandas(dataset = "events_anomalydetection_v2.h5") + file = joinpath(get_lhco_datapath(), dataset) + if occursin("Python/3.8.6-GCCcore-10.2.0", read(`which python`, String)) + pd = pyimport("pandas") + end + + data = Array{Float32}[] + labels = Int[] + + for i in 0:100000:1100000 + df_test = pd.read_hdf(file, start=i, stop=i+100000) + data_array = df_test[:values] + + for row in eachrow(data_array)#[1:100000, :]) + label = row[end] |> Int + push!(labels, label) + zeroix = findfirst(x -> x == 0.0, row) |> Int + d = row[1:zeroix-1] + al = zeros(Float32, 3, length(d)รท3) + al[1,:] = d[1:3:end] + al[2,:] = d[2:3:end] + al[3,:] = d[3:3:end] + push!(data, al) + end + end + + obs0 = labels .== 0 + obs1 = labels .== 1 + + ls0 = size.(data[obs0], 2) + ls1 = size.(data[obs1], 2) + + bagids1 = Mill.length2bags(ls1) + bagids0 = Mill.length2bags(ls0) + + return ( + normal = BagNode(ArrayNode(hcat(data[obs0]...)), bagids0), + anomaly = BagNode(ArrayNode(hcat(data[obs1]...)), bagids1) + ) +end + +@testset "LHCO data" begin + @test 1 == 1 +end \ No newline at end of file