[INFO] cloning repository https://github.com/Mikndesu/O-reilly-Deep-Learning
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Mikndesu/O-reilly-Deep-Learning" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMikndesu%2FO-reilly-Deep-Learning", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMikndesu%2FO-reilly-Deep-Learning'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 18896afd6745f485b5be1c9f0418a0b5decfdcc1
[INFO] checking Mikndesu/O-reilly-Deep-Learning against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FMikndesu%2FO-reilly-Deep-Learning" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-7-tc1/source/.cargo/config
[INFO] started tweaking git repo https://github.com/Mikndesu/O-reilly-Deep-Learning
[INFO] finished tweaking git repo https://github.com/Mikndesu/O-reilly-Deep-Learning
[INFO] tweaked toml for git repo https://github.com/Mikndesu/O-reilly-Deep-Learning written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Mikndesu/O-reilly-Deep-Learning on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Mikndesu/O-reilly-Deep-Learning already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded proc-macro2 v1.0.75
[INFO] [stderr]   Downloaded plotters-backend v0.3.5
[INFO] [stderr]   Downloaded crossbeam-epoch v0.9.17
[INFO] [stderr]   Downloaded plotters-bitmap v0.3.3
[INFO] [stderr]   Downloaded yeslogic-fontconfig-sys v3.2.0
[INFO] [stderr]   Downloaded pathfinder_simd v0.5.2
[INFO] [stderr]   Downloaded crossbeam-deque v0.8.4
[INFO] [stderr]   Downloaded mopa v0.2.2
[INFO] [stderr]   Downloaded float-ord v0.2.0
[INFO] [stderr]   Downloaded const-cstr v0.3.0
[INFO] [stderr]   Downloaded plotters-svg v0.3.5
[INFO] [stderr]   Downloaded nalgebra-macros v0.2.1
[INFO] [stderr]   Downloaded freetype v0.7.0
[INFO] [stderr]   Downloaded font-kit v0.11.0
[INFO] [stderr]   Downloaded serde_derive v1.0.194
[INFO] [stderr]   Downloaded matrixmultiply v0.3.8
[INFO] [stderr]   Downloaded h2 v0.3.22
[INFO] [stderr]   Downloaded ttf-parser v0.17.1
[INFO] [stderr]   Downloaded serde v1.0.194
[INFO] [stderr]   Downloaded simba v0.8.1
[INFO] [stderr]   Downloaded wide v0.7.13
[INFO] [stderr]   Downloaded nalgebra v0.32.3
[INFO] [stderr]   Downloaded plotters v0.3.5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 25000a1639c10a74f5196026dfeafcfbd712606253713fc181ef1175eec8a1db
[INFO] running `Command { std: "docker" "start" "-a" "25000a1639c10a74f5196026dfeafcfbd712606253713fc181ef1175eec8a1db", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "25000a1639c10a74f5196026dfeafcfbd712606253713fc181ef1175eec8a1db", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "25000a1639c10a74f5196026dfeafcfbd712606253713fc181ef1175eec8a1db", kill_on_drop: false }`
[INFO] [stdout] 25000a1639c10a74f5196026dfeafcfbd712606253713fc181ef1175eec8a1db
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f3918e9545954b282b5c52cf378ec59bf194125bb6697dd025bd1a7a78a43ade
[INFO] running `Command { std: "docker" "start" "-a" "f3918e9545954b282b5c52cf378ec59bf194125bb6697dd025bd1a7a78a43ade", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.151
[INFO] [stderr]    Compiling pkg-config v0.3.28
[INFO] [stderr]    Compiling libm v0.2.8
[INFO] [stderr]    Compiling num-traits v0.2.17
[INFO] [stderr]    Compiling crossbeam-utils v0.8.18
[INFO] [stderr]    Compiling proc-macro2 v1.0.75
[INFO] [stderr]     Checking once_cell v1.19.0
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling rayon-core v1.12.0
[INFO] [stderr]     Checking pin-project-lite v0.2.13
[INFO] [stderr]     Checking bytes v1.5.0
[INFO] [stderr]     Checking bytemuck v1.14.0
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling lock_api v0.4.11
[INFO] [stderr]     Checking futures-core v0.3.30
[INFO] [stderr]     Checking either v1.9.0
[INFO] [stderr]     Checking itoa v1.0.10
[INFO] [stderr]    Compiling semver v1.0.21
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling openssl v0.10.62
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]     Checking flate2 v1.0.28
[INFO] [stderr]     Checking bitflags v2.4.1
[INFO] [stderr]     Checking hashbrown v0.14.3
[INFO] [stderr]     Checking futures-task v0.3.30
[INFO] [stderr]     Checking equivalent v1.0.1
[INFO] [stderr]    Compiling native-tls v0.2.11
[INFO] [stderr]     Checking futures-io v0.3.30
[INFO] [stderr]     Checking memchr v2.7.1
[INFO] [stderr]     Checking futures-sink v0.3.30
[INFO] [stderr]    Compiling rustc_version v0.4.0
[INFO] [stderr]     Checking spin v0.9.8
[INFO] [stderr]     Checking percent-encoding v2.3.1
[INFO] [stderr]     Checking weezl v0.1.7
[INFO] [stderr]     Checking http v0.2.11
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]     Checking openssl-probe v0.1.5
[INFO] [stderr]    Compiling quote v1.0.35
[INFO] [stderr]    Compiling serde v1.0.194
[INFO] [stderr]    Compiling paste v1.0.14
[INFO] [stderr]     Checking form_urlencoded v1.2.1
[INFO] [stderr]     Checking flume v0.11.0
[INFO] [stderr]    Compiling yeslogic-fontconfig-sys v3.2.0
[INFO] [stderr]     Checking indexmap v2.1.0
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]    Compiling cc v1.0.83
[INFO] [stderr]     Checking unicode-normalization v0.1.22
[INFO] [stderr]    Compiling pathfinder_simd v0.5.2
[INFO] [stderr]     Checking safe_arch v0.7.1
[INFO] [stderr]     Checking futures-channel v0.3.30
[INFO] [stderr]     Checking fdeflate v0.3.3
[INFO] [stderr]    Compiling matrixmultiply v0.3.8
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]    Compiling syn v2.0.48
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking mio v0.8.10
[INFO] [stderr]     Checking socket2 v0.5.5
[INFO] [stderr]     Checking getrandom v0.2.11
[INFO] [stderr]     Checking crossbeam-epoch v0.9.17
[INFO] [stderr]     Checking unicode-bidi v0.3.14
[INFO] [stderr]     Checking lebe v0.5.2
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking smallvec v1.11.2
[INFO] [stderr]     Checking crossbeam-deque v0.8.4
[INFO] [stderr]     Checking tower-service v0.3.2
[INFO] [stderr]    Compiling typenum v1.17.0
[INFO] [stderr]     Checking half v2.2.1
[INFO] [stderr]     Checking bit_field v0.10.2
[INFO] [stderr]     Checking png v0.17.10
[INFO] [stderr]     Checking wide v0.7.13
[INFO] [stderr]     Checking gif v0.12.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking idna v0.5.0
[INFO] [stderr]     Checking tokio v1.35.1
[INFO] [stderr]    Compiling cmake v0.1.50
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]     Checking num-complex v0.4.4
[INFO] [stderr]     Checking qoi v0.4.1
[INFO] [stderr]     Checking libloading v0.8.1
[INFO] [stderr]     Checking http-body v0.4.6
[INFO] [stderr]     Checking ryu v1.0.16
[INFO] [stderr]     Checking rayon v1.8.0
[INFO] [stderr]     Checking exr v1.71.0
[INFO] [stderr]     Checking url v2.5.0
[INFO] [stderr]    Compiling openssl-sys v0.9.98
[INFO] [stderr]    Compiling freetype-sys v0.13.1
[INFO] [stderr]     Checking dlib v0.5.2
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking dirs-sys-next v0.1.2
[INFO] [stderr]     Checking encoding_rs v0.8.33
[INFO] [stderr]     Checking ipnet v2.9.0
[INFO] [stderr]     Checking base64 v0.21.5
[INFO] [stderr]     Checking plotters-backend v0.3.5
[INFO] [stderr]     Checking const-cstr v0.3.0
[INFO] [stderr]    Compiling font-kit v0.11.0
[INFO] [stderr]     Checking freetype v0.7.0
[INFO] [stderr]     Checking walkdir v2.4.0
[INFO] [stderr]     Checking pathfinder_geometry v0.5.1
[INFO] [stderr]     Checking dirs-next v2.0.0
[INFO] [stderr]     Checking float-ord v0.2.0
[INFO] [stderr]     Checking iana-time-zone v0.1.59
[INFO] [stderr]     Checking plotters-svg v0.3.5
[INFO] [stderr]     Checking ttf-parser v0.17.1
[INFO] [stderr]     Checking chrono v0.4.31
[INFO] [stderr]     Checking mopa v0.2.2
[INFO] [stderr]     Checking rand_distr v0.4.3
[INFO] [stderr]     Checking simba v0.8.1
[INFO] [stderr]     Checking jpeg-decoder v0.3.0
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]     Checking tiff v0.9.0
[INFO] [stderr]     Checking tokio-util v0.7.10
[INFO] [stderr]    Compiling nalgebra-macros v0.2.1
[INFO] [stderr]     Checking image v0.24.7
[INFO] [stderr]     Checking h2 v0.3.22
[INFO] [stderr]     Checking plotters-bitmap v0.3.3
[INFO] [stderr]     Checking nalgebra v0.32.3
[INFO] [stderr]     Checking plotters v0.3.5
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking hyper v0.14.28
[INFO] [stderr]     Checking hyper-tls v0.5.0
[INFO] [stderr]     Checking reqwest v0.11.23
[INFO] [stderr]     Checking multi_layer_net v0.1.0 (/opt/rustwide/workdir/multi_layer_net)
[INFO] [stderr]     Checking mylib v0.1.0 (/opt/rustwide/workdir/mylib)
[INFO] [stdout] warning: unused variable: `train_flg`
[INFO] [stdout]   --> multi_layer_net/src/layers/affine_layer.rs:14:50
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn forwards(&mut self, x: &na::DMatrix<f64>, train_flg: bool) -> na::DMatrix<f64> {
[INFO] [stdout]    |                                                  ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_train_flg`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `train_flg`
[INFO] [stdout]  --> multi_layer_net/src/layers/relu_layer.rs:8:50
[INFO] [stdout]   |
[INFO] [stdout] 8 |     fn forwards(&mut self, x: &na::DMatrix<f64>, train_flg: bool) -> na::DMatrix<f64> {
[INFO] [stdout]   |                                                  ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_train_flg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `train_flg`
[INFO] [stdout]  --> multi_layer_net/src/layers/sigmoid_layer.rs:8:50
[INFO] [stdout]   |
[INFO] [stdout] 8 |     fn forwards(&mut self, x: &na::DMatrix<f64>, train_flg: bool) -> na::DMatrix<f64> {
[INFO] [stdout]   |                                                  ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_train_flg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dout`
[INFO] [stdout]   --> multi_layer_net/src/layers/softmax_with_loss_layer.rs:23:29
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn backwards(&self, dout: f64) -> na::DMatrix<f64> {
[INFO] [stdout]    |                             ^^^^ help: if this is intentional, prefix it with an underscore: `_dout`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `broadcast_vector_rowwise` is never used
[INFO] [stdout]   --> multi_layer_net/src/lib.rs:24:15
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub(crate) fn broadcast_vector_rowwise<T: Scalar + Copy + Debug + rand_distr::num_traits::Zero>(
[INFO] [stdout]    |               ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `input_size`, `hidden_size_list`, and `output_size` are never read
[INFO] [stdout]   --> multi_layer_net/src/multi_layer_net_extended.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub struct MultiLayerNetExtended {
[INFO] [stdout]    |            --------------------- fields in this struct
[INFO] [stdout] 17 |     input_size: usize,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 18 |     hidden_size_list: Vec<usize>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 19 |     output_size: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking oreilly_deep_learning v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `IntoFont`, `RED`, `WHITE`, `backend::BitMapBackend`, `chart::ChartBuilder`, `drawing::IntoDrawingArea`, and `series::LineSeries`
[INFO] [stdout]   --> src/chapter3/main.rs:6:5
[INFO] [stdout]    |
[INFO] [stdout]  6 |     backend::BitMapBackend,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  7 |     chart::ChartBuilder,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  8 |     drawing::IntoDrawingArea,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]  9 |     series::LineSeries,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 10 |     style::{IntoFont, RED, WHITE},
[INFO] [stdout]    |             ^^^^^^^^  ^^^  ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `train_img_label`
[INFO] [stdout]   --> src/chapter3/show_mnist.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let train_img_label = mnist::load_label(mnist::DatasetType::TestLabel, &dataset_dir);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_train_img_label`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `na::dmatrix`
[INFO] [stdout]  --> src/chapter6/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use na::dmatrix;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IntoParallelRefIterator` and `ParallelBridge`
[INFO] [stdout]   --> src/chapter6/main.rs:13:30
[INFO] [stdout]    |
[INFO] [stdout] 13 |     IndexedParallelIterator, IntoParallelRefIterator, ParallelBridge, ParallelIterator,
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `multi_layer_net::multi_layer_net`
[INFO] [stdout]  --> src/chapter6/over_fit_decay_batch_norm.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use multi_layer_net::multi_layer_net;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sgd`
[INFO] [stdout]  --> src/chapter6/over_fit_decay_batch_norm.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 |     optimiser::{sgd, sgd_ext},
[INFO] [stdout]   |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Network` is never constructed
[INFO] [stdout]   --> src/chapter3/main.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | struct Network {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/chapter3/main.rs:23:12
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl Network {
[INFO] [stdout]    | ------------ associated function in this implementation
[INFO] [stdout] 23 |     pub fn new(
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `step_function` is never used
[INFO] [stdout]   --> src/chapter3/main.rs:42:4
[INFO] [stdout]    |
[INFO] [stdout] 42 | fn step_function(x: na::RowDVector<f64>) -> na::RowDVector<i32> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sigmoid` is never used
[INFO] [stdout]   --> src/chapter3/main.rs:49:4
[INFO] [stdout]    |
[INFO] [stdout] 49 | fn sigmoid(x: na::RowDVector<f64>) -> na::RowDVector<f64> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `relu` is never used
[INFO] [stdout]   --> src/chapter3/main.rs:56:4
[INFO] [stdout]    |
[INFO] [stdout] 56 | fn relu(x: na::RowDVector<f64>) -> na::RowDVector<f64> {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `softmax` is never used
[INFO] [stdout]   --> src/chapter3/main.rs:60:4
[INFO] [stdout]    |
[INFO] [stdout] 60 | fn softmax(x: na::RowDVector<f64>) -> RowDVector<f64> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `identity_fucntion` is never used
[INFO] [stdout]   --> src/chapter3/main.rs:67:4
[INFO] [stdout]    |
[INFO] [stdout] 67 | fn identity_fucntion(x: na::RowDVector<f64>) -> na::RowDVector<f64> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `forward` is never used
[INFO] [stdout]   --> src/chapter3/main.rs:71:4
[INFO] [stdout]    |
[INFO] [stdout] 71 | fn forward() {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `first_layer` is never used
[INFO] [stdout]   --> src/chapter3/main.rs:87:4
[INFO] [stdout]    |
[INFO] [stdout] 87 | fn first_layer(x: na::RowVector2<f64>, network: &Network) -> na::RowVector3<f64> {
[INFO] [stdout]    |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `second_layer` is never used
[INFO] [stdout]   --> src/chapter3/main.rs:96:4
[INFO] [stdout]    |
[INFO] [stdout] 96 | fn second_layer(z1: na::RowVector3<f64>, network: &Network) -> na::RowVector2<f64> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `output_layer` is never used
[INFO] [stdout]    --> src/chapter3/main.rs:105:4
[INFO] [stdout]     |
[INFO] [stdout] 105 | fn output_layer(z2: na::RowVector2<f64>, network: &Network) -> na::RowDVector<f64> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `img_show` is never used
[INFO] [stdout]  --> src/chapter3/show_mnist.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn img_show() {
[INFO] [stdout]   |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `save_img_from_matrix` is never used
[INFO] [stdout]   --> src/chapter3/show_mnist.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn save_img_from_matrix(matrix: na::OMatrix<u8, Const<28>, Const<28>>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `and` is never used
[INFO] [stdout]  --> src/chapter2/main.rs:3:4
[INFO] [stdout]   |
[INFO] [stdout] 3 | fn and(x1: f64, x2: f64) -> i32 {
[INFO] [stdout]   |    ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `nand` is never used
[INFO] [stdout]   --> src/chapter2/main.rs:11:4
[INFO] [stdout]    |
[INFO] [stdout] 11 | fn nand(x1: f64, x2: f64) -> i32 {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `or` is never used
[INFO] [stdout]   --> src/chapter2/main.rs:19:4
[INFO] [stdout]    |
[INFO] [stdout] 19 | fn or(x1: f64, x2: f64) -> i32 {
[INFO] [stdout]    |    ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `xor` is never used
[INFO] [stdout]   --> src/chapter2/main.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn xor(x1: f64, x2: f64) -> i32 {
[INFO] [stdout]    |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `na::dmatrix`
[INFO] [stdout]  --> src/chapter6/main.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use na::dmatrix;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParallelBridge`
[INFO] [stdout]   --> src/chapter6/main.rs:13:55
[INFO] [stdout]    |
[INFO] [stdout] 13 |     IndexedParallelIterator, IntoParallelRefIterator, ParallelBridge, ParallelIterator,
[INFO] [stdout]    |                                                       ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `multi_layer_net::multi_layer_net`
[INFO] [stdout]  --> src/chapter6/over_fit_decay_batch_norm.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use multi_layer_net::multi_layer_net;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sgd`
[INFO] [stdout]  --> src/chapter6/over_fit_decay_batch_norm.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 |     optimiser::{sgd, sgd_ext},
[INFO] [stdout]   |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]  --> src/chapter4/simple_net.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::ops::Deref;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DMatrix`
[INFO] [stdout]  --> src/chapter4/simple_net.rs:3:16
[INFO] [stdout]   |
[INFO] [stdout] 3 | use nalgebra::{DMatrix, DVector};
[INFO] [stdout]   |                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DatasetType`, `load_label`, `load_normalised_image`, and `self`
[INFO] [stdout]  --> src/chapter4/two_layer_net.rs:1:20
[INFO] [stdout]   |
[INFO] [stdout] 1 | use mylib::mnist::{self, load_label, load_normalised_image, DatasetType};
[INFO] [stdout]   |                    ^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OMatrix`
[INFO] [stdout]  --> src/chapter4/main.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use na::{DVector, Dyn, OMatrix};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IndexedParallelIterator`
[INFO] [stdout]   --> src/chapter6/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     IndexedParallelIterator, IntoParallelRefIterator, ParallelBridge, ParallelIterator,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ParallelIterator`
[INFO] [stdout]   --> src/chapter6/main.rs:13:71
[INFO] [stdout]    |
[INFO] [stdout] 13 |     IndexedParallelIterator, IntoParallelRefIterator, ParallelBridge, ParallelIterator,
[INFO] [stdout]    |                                                                       ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ref`
[INFO] [stdout]  --> src/chapter5/two_layer_net.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 |     cell::{Ref, RefCell},
[INFO] [stdout]   |            ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DatasetType`, `load_label`, `load_normalised_image`, and `self`
[INFO] [stdout]  --> src/chapter5/two_layer_net.rs:7:20
[INFO] [stdout]   |
[INFO] [stdout] 7 | use mylib::mnist::{self, load_label, load_normalised_image, DatasetType};
[INFO] [stdout]   |                    ^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::ops::Deref`
[INFO] [stdout]  --> src/chapter4/simple_net.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::ops::Deref;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DMatrix`
[INFO] [stdout]  --> src/chapter4/simple_net.rs:3:16
[INFO] [stdout]   |
[INFO] [stdout] 3 | use nalgebra::{DMatrix, DVector};
[INFO] [stdout]   |                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DatasetType`, `load_label`, `load_normalised_image`, and `self`
[INFO] [stdout]  --> src/chapter4/two_layer_net.rs:1:20
[INFO] [stdout]   |
[INFO] [stdout] 1 | use mylib::mnist::{self, load_label, load_normalised_image, DatasetType};
[INFO] [stdout]   |                    ^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `OMatrix`
[INFO] [stdout]  --> src/chapter4/main.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use na::{DVector, Dyn, OMatrix};
[INFO] [stdout]   |                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `dmatrix`
[INFO] [stdout]  --> src/chapter5/two_layer_net.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | use na::{dmatrix, DMatrix, Scalar};
[INFO] [stdout]   |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `broadcast_vector_rowwise` is never used
[INFO] [stdout]    --> src/chapter6/main.rs:113:8
[INFO] [stdout]     |
[INFO] [stdout] 113 |     fn broadcast_vector_rowwise<T: na::Scalar + Copy + rand_distr::num_traits::Zero>(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AdaGrad` is never constructed
[INFO] [stdout]  --> src/chapter6/optimiser/ada_grad.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct AdaGrad {
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `H` is never constructed
[INFO] [stdout]  --> src/chapter6/optimiser/ada_grad.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | struct H {
[INFO] [stdout]   |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/chapter6/optimiser/ada_grad.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl H {
[INFO] [stdout]    | ------ associated function in this implementation
[INFO] [stdout] 15 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `update` are never used
[INFO] [stdout]   --> src/chapter6/optimiser/ada_grad.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl AdaGrad {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 29 |     pub fn new(lr: f64) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn update(&mut self, params: &Rc<RefCell<Params>>, grads: &Grads) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Momentum` is never constructed
[INFO] [stdout]  --> src/chapter6/optimiser/momentum.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct Momentum {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `V` is never constructed
[INFO] [stdout]   --> src/chapter6/optimiser/momentum.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct V {
[INFO] [stdout]    |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `update` are never used
[INFO] [stdout]   --> src/chapter6/optimiser/momentum.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl Momentum {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 16 |     pub fn new(lr: f64, momentum: f64) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn update(&mut self, params: &Rc<RefCell<Params>>, grads: &Grads) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/chapter6/optimiser/momentum.rs:61:8
[INFO] [stdout]    |
[INFO] [stdout] 60 | impl V {
[INFO] [stdout]    | ------ associated function in this implementation
[INFO] [stdout] 61 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AdaGrad` is never constructed
[INFO] [stdout]  --> src/chapter6/optimiser/ada_grad.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct AdaGrad {
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `H` is never constructed
[INFO] [stdout]  --> src/chapter6/optimiser/ada_grad.rs:9:8
[INFO] [stdout]   |
[INFO] [stdout] 9 | struct H {
[INFO] [stdout]   |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/chapter6/optimiser/ada_grad.rs:15:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl H {
[INFO] [stdout]    | ------ associated function in this implementation
[INFO] [stdout] 15 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `update` are never used
[INFO] [stdout]   --> src/chapter6/optimiser/ada_grad.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 28 | impl AdaGrad {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 29 |     pub fn new(lr: f64) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn update(&mut self, params: &Rc<RefCell<Params>>, grads: &Grads) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Momentum` is never constructed
[INFO] [stdout]  --> src/chapter6/optimiser/momentum.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 4 | struct Momentum {
[INFO] [stdout]   |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `V` is never constructed
[INFO] [stdout]   --> src/chapter6/optimiser/momentum.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout] 10 | struct V {
[INFO] [stdout]    |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `update` are never used
[INFO] [stdout]   --> src/chapter6/optimiser/momentum.rs:16:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | impl Momentum {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout] 16 |     pub fn new(lr: f64, momentum: f64) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn update(&mut self, params: &Rc<RefCell<Params>>, grads: &Grads) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/chapter6/optimiser/momentum.rs:61:8
[INFO] [stdout]    |
[INFO] [stdout] 60 | impl V {
[INFO] [stdout]    | ------ associated function in this implementation
[INFO] [stdout] 61 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ref`
[INFO] [stdout]  --> src/chapter5/two_layer_net.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 |     cell::{Ref, RefCell},
[INFO] [stdout]   |            ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `train_img_label`
[INFO] [stdout]   --> src/chapter3/show_mnist.rs:10:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     let train_img_label = mnist::load_label(mnist::DatasetType::TestLabel, &dataset_dir);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_train_img_label`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `softmax` is never used
[INFO] [stdout]   --> src/chapter3/main.rs:60:4
[INFO] [stdout]    |
[INFO] [stdout] 60 | fn softmax(x: na::RowDVector<f64>) -> RowDVector<f64> {
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gradient_descent` is never used
[INFO] [stdout]   --> src/chapter4/main.rs:10:4
[INFO] [stdout]    |
[INFO] [stdout] 10 | fn gradient_descent(f: fn(&na::DVector<f64>) -> f64, init_x: na::DVector<f64>) -> na::DVector<f64> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `numerical_diff` is never used
[INFO] [stdout]   --> src/chapter4/main.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn numerical_diff(f: fn(f64) -> f64, x: f64) -> f64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `numerical_gradient` is never used
[INFO] [stdout]   --> src/chapter4/main.rs:26:4
[INFO] [stdout]    |
[INFO] [stdout] 26 | fn numerical_gradient(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sum_squared_error` is never used
[INFO] [stdout]   --> src/chapter4/main.rs:45:4
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn sum_squared_error(y: na::DVector<f64>, t: na::DVector<u8>) -> f64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cross_entropy_error` is never used
[INFO] [stdout]   --> src/chapter4/main.rs:55:4
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn cross_entropy_error(
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `cross_entropy_error_from_label` is never used
[INFO] [stdout]   --> src/chapter4/main.rs:71:4
[INFO] [stdout]    |
[INFO] [stdout] 71 | fn cross_entropy_error_from_label(y: na::OMatrix<f64, Dyn, na::Const<10>>, t: Label) -> f64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mini_batch` is never used
[INFO] [stdout]   --> src/chapter4/main.rs:75:4
[INFO] [stdout]    |
[INFO] [stdout] 75 | fn mini_batch() -> Vec<usize> {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SimpleNet` is never constructed
[INFO] [stdout]  --> src/chapter4/simple_net.rs:7:8
[INFO] [stdout]   |
[INFO] [stdout] 7 | struct SimpleNet {
[INFO] [stdout]   |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/chapter4/simple_net.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl SimpleNet {
[INFO] [stdout]    | -------------- associated items in this implementation
[INFO] [stdout] 12 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 19 |     fn predict(&self, x: na::Vector2<f64>) -> na::Vector3<f64> {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     fn softmax(&self, x: na::Vector3<f64>) -> na::DVector<f64> {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn cross_entropy_error(&self, y: na::DVector<f64>, t: &na::DVector<u8>) -> f64 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     fn loss(&self, x: na::Vector2<f64>, t: &na::DVector<u8>) -> f64 {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     fn numerical_gradient(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 70 |     fn numerical_gradient_vec(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `net`
[INFO] [stdout]    --> src/chapter4/simple_net.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |     let net = SimpleNet::new();
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_net`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dout`
[INFO] [stdout]   --> src/chapter5/layers/softmax_with_loss_layer.rs:23:29
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn backwards(&self, dout: f64) -> na::DMatrix<f64> {
[INFO] [stdout]    |                             ^^^^ help: if this is intentional, prefix it with an underscore: `_dout`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sum_squared_error` is never used
[INFO] [stdout]   --> src/chapter4/main.rs:45:4
[INFO] [stdout]    |
[INFO] [stdout] 45 | fn sum_squared_error(y: na::DVector<f64>, t: na::DVector<u8>) -> f64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `numerical_gradient_vec` is never used
[INFO] [stdout]   --> src/chapter4/simple_net.rs:70:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl SimpleNet {
[INFO] [stdout]    | -------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 70 |     fn numerical_gradient_vec(
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `funtion_2` is never used
[INFO] [stdout]    --> src/chapter4/simple_net.rs:126:8
[INFO] [stdout]     |
[INFO] [stdout] 126 |     fn funtion_2(x: &na::DVector<f64>) -> f64 {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Sigmoid` is never constructed
[INFO] [stdout]  --> src/chapter5/layers/sigmoid_layer.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub struct Sigmoid {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/chapter5/layers/sigmoid_layer.rs:22:12
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl Sigmoid {
[INFO] [stdout]    | ------------ associated function in this implementation
[INFO] [stdout] 22 |     pub fn new() -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `numerical_gradient` is never used
[INFO] [stdout]    --> src/chapter5/two_layer_net.rs:185:12
[INFO] [stdout]     |
[INFO] [stdout] 116 | impl TwoLayerNet {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 185 |     pub fn numerical_gradient(&mut self, x: &na::DMatrix<f64>, t: &na::DMatrix<u8>) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dout`
[INFO] [stdout]   --> src/chapter5/layers/softmax_with_loss_layer.rs:23:29
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn backwards(&self, dout: f64) -> na::DMatrix<f64> {
[INFO] [stdout]    |                             ^^^^ help: if this is intentional, prefix it with an underscore: `_dout`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `test_img`
[INFO] [stdout]    --> src/chapter5/two_layer_net.rs:225:9
[INFO] [stdout]     |
[INFO] [stdout] 225 |     let test_img = load_normalised_image(DatasetType::TestImg, &dataset_dir).flatten();
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_test_img`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `test_label`
[INFO] [stdout]    --> src/chapter5/two_layer_net.rs:226:9
[INFO] [stdout]     |
[INFO] [stdout] 226 |     let test_label = load_label(DatasetType::TestLabel, &dataset_dir).as_one_hot();
[INFO] [stdout]     |         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_test_label`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/chapter5/two_layer_net.rs:302:9
[INFO] [stdout]     |
[INFO] [stdout] 302 |     let mut network = TwoLayerNet::new(784, 50, 10);
[INFO] [stdout]     |         ----^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 48.62s
[INFO] running `Command { std: "docker" "inspect" "f3918e9545954b282b5c52cf378ec59bf194125bb6697dd025bd1a7a78a43ade", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f3918e9545954b282b5c52cf378ec59bf194125bb6697dd025bd1a7a78a43ade", kill_on_drop: false }`
[INFO] [stdout] f3918e9545954b282b5c52cf378ec59bf194125bb6697dd025bd1a7a78a43ade
