use std::io::*;
use std::time::{SystemTime, UNIX_EPOCH};
pub const INPUT_COUNT: usize = 24;
pub const OUTPUT_COUNT: usize = 12;
pub const LEARNING_RATE: f64 = 0.012;
pub fn activation_function(x: f64) -> f64 {
//1. / (1. + std::f64::consts::E.powf(-x))
//x.tanh()
x.max(0.)
}
pub fn inv_activation_function(x: f64) -> f64 {
//f64::ln(x / (1. - x)) //.max(-10000.).min(10000.)
//x.atanh()
x.max(0.)
}
#[allow(dead_code)]
pub fn pseudo_rand() -> f64 {
let start = SystemTime::now();
let since_the_epoch = start
.duration_since(UNIX_EPOCH)
.expect("Time went backwards");
#[allow(arithmetic_overflow)]
const MAX: u128 = 1000000;
// Randomish enough
let res = ((since_the_epoch.as_nanos() * 23525623626 >> 2) % MAX) as f64 / MAX as f64;
res % 1.
}
#[derive(Debug, Clone)]
pub struct DataPoint<const S: usize>(pub [f64; S]);
impl<const S: usize> DataPoint<S> {
const MIN_VALUE: f64 = -38.;
const MAX_VALUE: f64 = 38.;
pub fn new(values: &[f64]) -> Self {
let mut data_point = Self([0.; S]);
data_point.0.clone_from_slice(values);
let range = Self::MAX_VALUE - Self::MIN_VALUE;
for i in 0..S {
data_point.0[i] = (data_point.0[i] - Self::MIN_VALUE) / range
}
data_point
}
pub fn get(&self, i: usize) -> f64 {
let range = Self::MAX_VALUE - Self::MIN_VALUE;
self.0[i] * range + Self::MIN_VALUE
}
}
// Layer of neural network with input and output count
#[derive(Debug, Clone, Copy)]
pub struct Layer<const I: usize, const O: usize> {
pub weights: [[f64; I]; O],
pub biases: [f64; O],
}
impl<const I: usize, const O: usize> Layer<I, O> {
pub fn new() -> Self {
Self {
weights: [[0.; I]; O],
biases: [0.; O],
}
}
pub fn random() -> Self {
let mut layer = Self::new();
for i in 0..O {
for j in 0..I {
layer.weights[i][j] = (pseudo_rand() * 2. - 1.) / 100.;
}
layer.biases[i] = (pseudo_rand() * 2. - 1.) / 100.;
}
layer
}
pub fn propagate(&self, activation: &[f64; I]) -> [f64; O] {
let mut result = [0.; O];
for i in 0..O {
let mut value = 0.;
for j in 0..I {
value += activation[j] * self.weights[i][j];
}
result[i] = activation_function(value + self.biases[i]);
}
result
}
pub fn back_propagate(
&self,
changes: &mut Self,
activation: &[f64; I],
actual_outcome: &[f64; O],
desired_outcome: &[f64; O],
) -> [f64; I] {
let mut desired_activation = activation.clone();
let mut z = [0.; O];
for i in 0..O {
z[i] = self.biases[i];
for j in 0..I {
z[i] += activation[j] * self.weights[i][j];
}
}
for i in 0..O {
let dca = 2. * (actual_outcome[i] - desired_outcome[i]);
let dzb = 1.;
for j in 0..I {
let daz = inv_activation_function(z[i]);
let dzw = activation[j];
let dza = self.weights[i][j];
let dcw = dca * dzw * daz;
let dcb = dzb * daz * dca;
let dca2 = dza * daz * dca;
changes.weights[i][j] -= dcw;
changes.biases[i] -= dcb / I as f64;
desired_activation[j] -= dca2
}
}
desired_activation
}
pub fn apply_changes(&mut self, changes: Layer<I, O>, rate: f64) {
for i in 0..O {
for j in 0..I {
self.weights[i][j] += changes.weights[i][j] * rate
}
self.biases[i] += changes.biases[i] * rate;
}
}
}
#[derive(Debug, Clone)]
pub struct NeuralNetwork<const I: usize, const O: usize, const H: usize, const L: usize> {
pub input_layer: Layer<I, H>,
pub hidden_layers: [Layer<H, H>; L],
pub output_layer: Layer<H, O>,
}
impl<const I: usize, const O: usize, const H: usize, const L: usize> NeuralNetwork<I, O, H, L> {
#[allow(dead_code)]
pub fn new() -> Self {
Self {
input_layer: Layer::new(),
hidden_layers: [Layer::new(); L],
output_layer: Layer::new(),
}
}
#[allow(dead_code)]
pub fn random() -> Self {
Self {
input_layer: Layer::random(),
hidden_layers: [Layer::random(); L],
output_layer: Layer::random(),
}
}
pub fn predict(&self, start_activation: &DataPoint<I>) -> DataPoint<O> {
let mut activation = self.input_layer.propagate(&start_activation.0);
for hidden_layer in self.hidden_layers {
activation = hidden_layer.propagate(&activation);
}
DataPoint(self.output_layer.propagate(&activation))
}
pub fn train(
&self,
changes: &mut Self,
start_activation: &DataPoint<I>,
desired_outcome: &DataPoint<O>,
batch_size: usize,
) -> f64 {
let mut activations = [[0.; H]; L];
for i in 0..L {
let activation = if i == 0 {
self.input_layer.propagate(&start_activation.0)
} else {
activations[i - 1]
};
activations[i] = self.hidden_layers[i].propagate(&activation);
}
let last_activation = if L > 0 {
activations[L - 1]
} else {
self.input_layer.propagate(&start_activation.0)
};
let actual_outcome = self.output_layer.propagate(&last_activation);
let desired_output_activation = self.output_layer.back_propagate(
&mut changes.output_layer,
&last_activation,
&actual_outcome,
&desired_outcome.0,
);
let mut desired_activations = [[0.; H]];
for i in (0..L).rev() {
let prev_desired_activation = if i == L - 1 {
desired_output_activation
} else {
desired_activations[i]
};
let activation = if i == 0 {
self.input_layer.propagate(&start_activation.0)
} else {
activations[i]
};
let desired_activation = self.hidden_layers[i].back_propagate(
&mut changes.hidden_layers[i],
&activation,
&activations[i],
&prev_desired_activation,
);
desired_activations[i] = desired_activation;
}
let _ = self.input_layer.back_propagate(
&mut changes.input_layer,
&start_activation.0,
if L > 0 {
&activations[0]
} else {
&last_activation
},
&(if L > 0 {
desired_activations[0]
} else {
desired_output_activation
}),
);
//println!("outcome: {:#?}", actual_outcome);
//println!("Desired outcome: {:#?}", desired_outcome);
let mut loss = 0.;
for i in 0..O {
let l = (actual_outcome[i] - desired_outcome.0[i]).powi(2);
//println!("i: {} loss {}", i, l);
loss += l;
}
loss / batch_size as f64
}
pub fn apply_changes(&mut self, changes: &Self, batch_size: usize) {
self.input_layer
.apply_changes(changes.input_layer, LEARNING_RATE / batch_size as f64);
for i in 0..L {
self.hidden_layers[i]
.apply_changes(changes.hidden_layers[i], LEARNING_RATE / batch_size as f64)
}
self.output_layer
.apply_changes(changes.output_layer, LEARNING_RATE / batch_size as f64);
}
}
pub fn read_training_data() -> (Vec<DataPoint<INPUT_COUNT>>, Vec<DataPoint<OUTPUT_COUNT>>) {
let mut input = String::new();
stdin()
.read_line(&mut input)
.expect("Unexpected end of input");
let days: i32 = input.trim().parse().unwrap();
let mut input_data = Vec::new();
let mut output_data = Vec::new();
for _ in 0..days {
let mut input = String::new();
stdin()
.read_line(&mut input)
.expect("Unexpected end of input");
let arr = input
.split(" ")
.map(|s| s.trim().parse().unwrap())
.collect::<Vec<f64>>();
input_data.push(DataPoint::new(&arr[..INPUT_COUNT]));
output_data.push(DataPoint::new(&arr[INPUT_COUNT..]));
}
(input_data, output_data)
}
#[allow(dead_code)]
pub fn read_input_data() -> Vec<DataPoint<INPUT_COUNT>> {
let mut input = String::new();
stdin()
.read_line(&mut input)
.expect("Unexpected end of input");
let days: i32 = input.trim().parse().unwrap();
let mut data = Vec::new();
for _ in 0..days {
let mut input = String::new();
stdin()
.read_line(&mut input)
.expect("Unexpected end of input");
let arr = input
.split(" ")
.map(|s| s.trim().parse().unwrap())
.collect::<Vec<f64>>();
data.push(DataPoint::new(&arr[..INPUT_COUNT]));
}
data
}
#[allow(dead_code)]
pub fn main() {
#[cfg(feature = "evaluate")]
let (data, output_data) = read_training_data();
#[cfg(not(feature = "evaluate"))]
let data = read_input_data();
let neural_net = get_neural_network();
let question_mark_net = get_question_mark_network();
#[cfg(feature = "evaluate")]
let mut correct: i32 = 0;
#[cfg(feature = "evaluate")]
let mut incorrect: i32 = 0;
#[cfg(feature = "evaluate")]
let mut correct_distribution = [0; OUTPUT_COUNT];
#[cfg(feature = "evaluate")]
let mut error_distribution = [0; OUTPUT_COUNT];
#[cfg(feature = "evaluate")]
let mut correct_diff = 0.;
#[cfg(feature = "evaluate")]
let mut incorrect_diff = 0.;
#[cfg(feature = "evaluate")]
let mut question_marks = 0;
#[cfg(feature = "evaluate")]
let mut correct_q_marks = 0;
#[cfg(feature = "evaluate")]
let mut incorrect_q_marks = 0;
for i in 0..data.len() {
let result = neural_net.predict(&data[i]);
let mut input_buffer = [0.; 36];
input_buffer[..INPUT_COUNT].clone_from_slice(&data[i].0);
input_buffer[INPUT_COUNT..].clone_from_slice(&result.0);
let question_mark_res = question_mark_net.predict(&DataPoint(input_buffer));
for j in 0..OUTPUT_COUNT {
// False to when testing the actual prediction network
let skip = question_mark_res.0[j] > 0.5155;
#[cfg(feature = "evaluate")]
{
let diff = ((result.get(j.max(1) - 1) + result.get((j + 1).min(OUTPUT_COUNT - 1)))
/ 2.
- result.get(j))
.abs();
print!("{} ", (result.get(j) * 100.).round() / 100.);
let dist = (result.get(j) - output_data[i].get(j)).abs();
if skip {
question_marks += 1;
if dist > 2.05 {
correct_q_marks += 1;
} else if dist < 0.75 {
incorrect_q_marks += 1;
}
} else {
if dist < 0.75 {
print!("+ ");
correct += 1;
correct_distribution[j] += 1;
correct_diff += diff;
} else if dist > 2.05 {
print!("! ");
error_distribution[j] += 1;
incorrect += 1;
incorrect_diff += diff;
}
print!("{} ", (output_data[i].get(j) * 1000.).round() / 1000.);
println!("");
}
}
if skip {
print!("? ");
#[cfg(feature = "evaluate")]
{
print!("{} ", (result.get(j) * 100.).round() / 100.);
}
} else {
#[cfg(not(feature = "evaluate"))]
print!("{} ", result.get(j));
}
}
#[cfg(feature = "evaluate")]
println!("");
}
#[cfg(feature = "evaluate")]
println!("correct distribution: {:#?}", correct_distribution);
#[cfg(feature = "evaluate")]
println!("error distribution: {:#?}", incorrect_diff);
#[cfg(feature = "evaluate")]
println!("correct diff: {:#?}", correct_diff / correct as f64);
#[cfg(feature = "evaluate")]
println!("incorrect diff: {:#?}", incorrect_diff / incorrect as f64);
#[cfg(feature = "evaluate")]
println!("question marks: {:#?}", question_marks);
#[cfg(feature = "evaluate")]
println!(
"correct question marks: {:#?}, incorrect question marks: {:#?}, ",
correct_q_marks, incorrect_q_marks
);
#[cfg(feature = "evaluate")]
println!(
"Correct: {} / {}, Incorrect: {} / {}, score: {}",
correct,
data.len() * OUTPUT_COUNT,
incorrect,
data.len() * OUTPUT_COUNT,
25. * ((correct - incorrect) as f64 / data.len() as f64)
);
}
pub fn get_neural_network() -> NeuralNetwork<INPUT_COUNT, OUTPUT_COUNT, 36, 0> {
NeuralNetwork {
input_layer: Layer {
weights: [
[
-0.006746986588669736,
-0.009014266652303917,
-0.0007451666762135255,
0.006342633373192264,
0.0027298735690419814,
0.009817673852109085,
-0.0019132257273602965,
0.0051745747281944955,
-0.006556324799306717,
0.0005314755032777222,
0.008800575752433806,
-0.004111624073289646,
-0.007724403929998394,
-0.0006366038540770546,
0.00763249607248482,
-0.005279704217124032,
0.002989395313221047,
-0.009922805272174274,
-0.002835005931779126,
0.005434093416031036,
-0.007478107236401326,
0.008909132095923724,
-0.004003068640332424,
0.004266030512601896,
],
[
-0.44036724125208454,
-0.2797412490083827,
-0.17591880536467722,
-0.15680552202416997,
-0.14584703692606665,
0.02464105996179666,
0.010256968198738017,
0.05126235401433671,
0.027289903767786762,
0.0008946043614722157,
-0.04175623884993678,
-0.05919158990423597,
-0.07793502371257117,
-0.0067974942440659405,
0.12018122192140689,
0.2382665665362191,
0.14282239234088148,
0.0737950118568948,
-0.011793228818122758,
-0.22334299215258022,
-0.3745624229285746,
-0.2325499649225885,
0.29964705905847244,
2.0097535603000223,
],
[
0.003988214065538124,
0.012076959958384908,
0.0008048062031606355,
0.015402194229029385,
0.0015280427434335919,
0.007252085474908894,
-0.0061682366081676505,
0.0011391596287868276,
0.00945858253206404,
-0.003185193755728234,
0.004930925680954261,
0.00028117428371370853,
0.008363104621317058,
-0.003955871416988509,
0.0046607342743555415,
0.011473787934980734,
-0.0036382742305343684,
0.0044355096643065445,
-0.006150980476692547,
0.012674736914579028,
0.0033716150884663637,
0.017902798316798453,
0.034643072976146855,
0.04021241116996772,
],
[
-0.006564445565697799,
0.0017046447011766312,
-0.0019081390220672427,
0.005179658194080698,
-0.007732545055587314,
0.0005365549842782301,
0.00762435342663522,
-0.004106545908796469,
0.002981245236070128,
-0.008749649726378724,
-0.0016618475261966435,
-0.00527460814141795,
0.0018131943278634184,
-0.009917698247384886,
-0.0028299048038565038,
0.005439191359419188,
-0.007473010922716006,
0.0007960856473408172,
0.007883877161485224,
0.004271095647663451,
-0.008641109762082155,
-0.00037200988823940707,
0.00671578644448233,
-0.005015106427413544,
],
[
-0.00965819643234242,
-0.0013890964159235552,
-0.006183156440969015,
0.0020859434970898717,
0.00917374334601237,
-0.002557156869449866,
0.004530642867693577,
-0.007200257403056705,
-0.0001124576537122779,
0.008156642169794396,
0.0033625620354106383,
-0.008368338069744328,
-0.0012805381514468372,
0.0069885617876349945,
-0.005923638224191524,
0.0023454618712013316,
0.009433262106518858,
-0.0022976375779393786,
-0.007091697214534005,
0.0011774031495636083,
0.008265203479079159,
-0.003465696239455321,
0.0036221040235637656,
-0.008108795736298791,
],
[
-0.9190209159516507,
-0.6450395417181168,
-0.4646820542282987,
-0.4267987216056822,
-0.2692516573176664,
0.06342531527245934,
0.2950392007379275,
0.49024773981032566,
0.6057870601377741,
0.6298741551282641,
0.5914753454367228,
0.6427730415252573,
0.6589633467374223,
0.8407172150718845,
1.0751432150136353,
1.2495257165557745,
0.9916042818481361,
0.5668724345444398,
0.26205868892787526,
-0.05281890973729224,
-0.15191025732642593,
0.1661967967739054,
0.9767834652962147,
2.7424827828980747,
],
[
0.004154380759685555,
0.00054162076473123,
0.007629420762916333,
-0.004101479256544262,
0.0029863206175647907,
-0.008744579588318344,
-0.0016567798640266436,
0.006612319866047457,
-0.006299880406252018,
-0.009912660597061175,
-0.0028248607533275056,
0.005444239123623493,
-0.0074679609765623415,
0.000801138946429314,
0.00788893891917154,
-0.0038419610036987068,
0.003245839200074572,
-0.0003669205010032827,
0.006720879815267916,
-0.0050100198893737805,
0.0020777803762484864,
-0.009653119375202617,
-0.0025653191299702146,
0.004522481146826952,
],
[
0.01077492893834531,
-0.0006141462663861991,
0.006617174123611476,
-0.005245580518658208,
0.0017406833443151827,
0.010151319863438908,
-0.0027450396492642846,
0.005679425311850294,
0.001068848454732439,
0.009437203426075727,
-0.003497425082581157,
0.004867945237019645,
0.011986006857191618,
0.0004753569198278802,
0.007817077082489882,
-0.0037599933366358664,
0.011148862581737917,
-0.0019320186542260928,
0.006568030582052675,
-0.006126898205689061,
0.002516376967793874,
0.01042991823992817,
8.412358017826641e-5,
0.00985294935308545,
],
[
0.007171864000869709,
-0.004369639883476952,
0.0028886401426411676,
0.01124201596450612,
-0.001376743830558149,
0.007279037571421264,
-0.005465059746200939,
0.010808425022912828,
-0.0022921055915413506,
0.0058107126760006435,
-0.007265559816609989,
0.0009283674316772118,
0.00796185735017895,
-0.004894034631845421,
0.0036298155110653257,
0.011123956958291216,
0.007863987640764394,
-0.003844912363512655,
0.003066008781404618,
0.00983584226684394,
-0.002212942941205049,
0.0046888815307830475,
-0.007121579903392917,
0.00021459365316136404,
],
[
0.002990969592409866,
-0.008739901399119948,
-0.0016520993516704451,
0.006616990038368151,
-0.006295213912081825,
0.001973892528255417,
0.009061683592380684,
0.005448976479244203,
-0.007463192484393455,
-0.00037539534519997044,
0.00789370113303428,
-0.005018477666532173,
0.0032506200865403062,
-0.00966156929340918,
-0.0013924625122187415,
-0.006186549284001895,
0.002082540554058747,
0.009170277448622808,
-0.0025606428496542737,
0.004527144521699135,
-0.007203768376607199,
-0.00011597054446241068,
0.00815311893458282,
0.0033590598389911506,
],
[
0.0005118405501814713,
0.007657675975396126,
-0.004106356618283827,
0.004014357072117953,
-0.00884151083961016,
-0.0015990336567200062,
-0.005017679196983098,
0.0021911936756424263,
0.010645856335411617,
-0.00219297544913757,
0.006111433182215262,
-0.006736041724475694,
0.0015985863849948539,
0.008785666278165134,
0.00531002244261735,
-0.00753245653047694,
0.0006326621612768924,
0.007443868176498684,
-0.004487582815850676,
0.002437390317857727,
0.010507969201414937,
-0.002656993241660425,
-0.0066386244192202645,
-0.00016255476510562637,
],
[
-0.0031947821591558783,
0.003892700081891743,
-0.007838386647559797,
-0.000750404066132315,
0.007518655120342532,
-0.005394393816312422,
-0.009006046782136895,
-0.001917483491298318,
0.006352779908057694,
-0.006558886243799412,
0.0017093090981980838,
0.008796656445398562,
-0.0029349115443550867,
0.004152923876378857,
0.0005396596613471365,
0.0076273380000804105,
-0.0041032301889766375,
0.0029855695560526857,
-0.008744864409658175,
-0.001656822040488682,
0.006610531527993006,
-0.006301262438888728,
-0.009914397418556391,
-0.002828320389113701,
],
[
-0.006101051110949496,
0.001024250317447652,
0.009332547257612345,
-0.0035613976492035442,
0.004759288450790724,
4.055939761189432e-5,
0.008333298018738413,
-0.004604515963808923,
0.0036274815047196538,
-0.009313191929442282,
-0.0010706563556029875,
0.006007960094434147,
-0.005734999598556582,
0.009486707487992938,
-0.002185887049137083,
0.004988336455727969,
-0.006675614137539765,
0.0004273638913760691,
0.008672379730960866,
-0.004304436722017714,
0.0027207469948981396,
-0.000917464587326624,
0.006179465630009933,
-0.005443099948187797,
],
[
0.009742172220547397,
-0.001998186661034799,
0.006276649454797039,
-0.0066177332148064935,
0.00978626593743874,
-0.00312867237069274,
0.005110151457790105,
-0.007879982377702727,
0.0002992210277549249,
0.007334015966483003,
-0.0044328534904752815,
0.0026245060659957084,
-0.0010072966600212598,
0.006059813347766791,
-0.0056611326004358566,
0.001485731801448566,
0.008685915241331133,
-0.0029576828636090464,
0.0041760054873803,
-0.007525206858535601,
-0.00042665389241417005,
-0.00404750195459583,
0.0030125945349654655,
-0.008782537909659912,
],
[
0.012509001983211759,
0.0011883855405418948,
0.01017569681730032,
0.01796286484921605,
0.013027650157543124,
0.0012399754786031017,
0.0070542225171008185,
0.01401321912017155,
-0.0007764363181813122,
0.006582180777747402,
-0.007127870426667323,
0.000572388058956551,
-0.004763873861526558,
0.0033115212319061397,
-0.009345311056607701,
-8.191812190902736e-5,
0.008185745513249956,
-0.0018343692247611188,
0.006606337028216997,
0.015503920595530527,
0.011892882497189684,
0.002877616043470235,
0.014738154449246525,
0.03233006956910437,
],
[
0.00324782206065682,
-0.00848307790101945,
-0.0013952778533513697,
-0.005008037834814822,
0.002079762124715985,
-0.009651137964096728,
-0.0025633381701781347,
0.005705761551990695,
-0.00720643875132286,
0.0010626610582783879,
0.008150460902024748,
0.004537680789240672,
-0.00837451930408126,
-0.00010541935444840592,
0.006982380702275219,
-0.00474851910009153,
0.0023392812000256774,
-0.009391618468129808,
-0.002303818173492816,
-0.005916577924331588,
0.0011712223320402588,
0.009440322620286499,
-0.0034718770215612423,
0.004797223437207331,
],
[
0.000613429186718389,
0.008816698615385265,
0.003925429790351421,
-0.007893661029913793,
-0.0009004175058296559,
0.007247044220209437,
-0.005624611658473198,
0.0028014246328899096,
0.010129523759186597,
-0.0014890920522808108,
-0.006162946005053103,
0.0021756202073828215,
0.009321509809070596,
-0.0023937018821565494,
0.0045807115601763995,
-0.007404442981150489,
-0.0005909658932177132,
0.007489435188720494,
-0.005476473315025632,
-0.009019984504101106,
-0.0018866863879665983,
0.006293770228669955,
-0.006880122437831665,
0.0007722527775562098,
],
[
-0.0025034894850259354,
0.005778708382479223,
0.0010077530687669612,
0.009305646544556482,
-0.0034952876305442155,
0.004890365987873166,
-0.00794318510871832,
0.00030234861898672583,
0.007358640232558653,
-0.004403677508245503,
-0.009231664056186804,
-0.0009811092883701543,
0.00610785490457516,
-0.005619165679238224,
0.0015213718450872331,
0.009883530111982567,
-0.002913314802628293,
0.005360015822006892,
0.0004885644367189579,
0.008654476949996083,
-0.004392282246100755,
0.00370492191574962,
-0.009446100797805897,
-0.0027136506722014063,
],
[
-0.00603378502478864,
-0.009646485380524789,
-0.00255862334538686,
0.005710507123255932,
-0.00720164392469563,
0.0010674281318873425,
0.008155220244798122,
-0.0035757044193294543,
0.00351217392786715,
-0.00010063583741050093,
0.006987175065344594,
-0.0047436905012658275,
0.0023440526205334455,
-0.009386979777624488,
-0.002299178244780877,
0.005969911706958599,
-0.0069423245098185924,
0.008263598073584568,
-0.003467270985187492,
0.0036205592189698134,
-0.008110275216881608,
-0.0010225037594298015,
0.007246604789943001,
-0.005665663019345147,
],
[
0.0016822304023903088,
0.01019284385701193,
-0.00018845760064092892,
0.008726543508135948,
0.018241159257990032,
0.009553945937821344,
0.017795988745210475,
0.0046572257777079285,
0.009883465304715237,
0.004802159048470247,
0.010509840735037869,
-0.0017943881435969098,
0.004904233421934777,
0.012437797864746681,
0.0029591259713624227,
0.013738852281775842,
0.02548270258233759,
0.021570566786246876,
0.008821455657016026,
0.013623056349624577,
0.019326675653658393,
0.004601004110695016,
0.01159735722561128,
-0.0010130648835229487,
],
[
-0.0037527060377217786,
0.0033417331023326436,
-0.008393342698431562,
-0.0013237972562724532,
0.006910640641504849,
-0.006023110161098147,
0.002219096139284668,
0.009291120947509343,
0.005660864640419263,
-0.007257632000997589,
0.0009998601470796262,
0.008079446041419186,
-0.003661549856154111,
0.003414487261556231,
-0.00831536455334569,
-0.0012191103629199784,
-0.004827504402914984,
0.0022760890248964875,
-0.009415542331698156,
-0.0022900539915458266,
0.006022217883000178,
-0.006831479066379579,
0.0015079390043852684,
0.008687452338954146,
],
[
-0.0061285986270854164,
0.0013618962987485982,
0.00967016652838133,
-0.0036741679440088167,
0.004355093773160843,
-0.008380144858834069,
0.00013645513225666193,
-0.004172791259117973,
0.004718111243419429,
0.01208765546315006,
0.0004582831953519094,
0.007766579579299001,
-0.00384379071814359,
0.0036174411633478573,
0.01224584261998525,
0.007453299471241408,
-0.005130503255456362,
0.0010121789077760315,
0.008978075759241456,
-0.004152703273764534,
0.004073540072750863,
0.011603545376375821,
0.0008016730371015189,
0.009930110225629942,
],
[
0.009810619898629523,
-0.0031011238696983627,
0.005168803530074504,
-0.007743606909050485,
0.0005253905818900757,
0.0076131279025140825,
-0.004118669586679841,
-0.008913354419499604,
-0.000645407197155114,
0.006441271480238969,
-0.005289867926692688,
0.0017978533718727206,
0.010066715970088565,
-0.0028452784106726956,
0.005424028515627153,
0.0006308773360135992,
0.008900931813862648,
-0.004010502281233989,
0.004259650014850687,
-0.008652249230530424,
-0.00038319623895232677,
0.00670460492390425,
-0.00502569770479387,
-0.009817853688808177,
],
[
0.014917685454309758,
0.00229914925372042,
0.011406832936560269,
0.019534488395411064,
0.007491374840479498,
0.01408909459588762,
0.008548716850663213,
0.013880179170404199,
-0.00025128850927439903,
0.005705329677844142,
-0.006965787276422247,
-0.0006305561085702932,
0.006939411962613361,
-0.006390832004737702,
-0.009993753279366796,
-0.002030395516985219,
0.007681414320010187,
-0.0027492932406239703,
0.007547398599751938,
0.015739343026079832,
0.004491890323517408,
0.016000478543917913,
0.01673711475915843,
0.03565251135436473,
],
[
0.00234126319900792,
-0.009389636743874446,
-0.0011205366859977502,
0.005967263341069591,
-0.005763636565574677,
0.009442303610781314,
-0.0022885962318541795,
0.004799203893059851,
-0.006931696024554763,
0.00015610406845365532,
0.008425204123846558,
-0.004486995806042377,
0.0037821042501266925,
-0.0010119756700173231,
0.007257124470077563,
-0.005655075396047097,
0.0014327246267149887,
0.009701824567859917,
-0.0032103754525130324,
0.0050587245499766256,
-0.007853475367644951,
0.00041562481950508306,
-0.004378434895623326,
0.00389066550684855,
],
[
0.010572537540124924,
0.019931754606658844,
0.009862210475213063,
0.01820487715127674,
0.005176114391206715,
0.01935065267099381,
0.003927608276017496,
0.008330468212499808,
0.012949487684062013,
-0.0016009159191023262,
0.003980204726395802,
-0.00872730586995876,
-0.002795389466310882,
-0.006615455077632973,
0.0009726895161424519,
-0.009059708431027012,
-0.0004220509800658025,
0.011820582067351378,
0.003148232717061301,
0.014122327674566004,
0.025296865717619976,
0.029730845293878774,
0.030084391282250836,
0.06338931039274523,
],
[
-0.003802055244984535,
0.004464231524126732,
-0.008449834906795453,
-0.00018537579219531756,
-0.004984882885101949,
0.0032850186105420876,
-0.00963384354347644,
-0.0013724346512110814,
0.005708300820404323,
-0.006024641349216769,
0.0010644657990140716,
0.009332962877683443,
0.004539523793743938,
-0.007192653279834559,
-0.00010236417347160417,
0.008169697810666638,
-0.004741339650760221,
0.003531734643310535,
-0.00937678441596841,
-0.001103527825400603,
-0.005891546131827698,
0.002385302232293513,
0.009482760472824061,
-0.0022400125559129923,
],
[
-0.0068010998180238445,
0.001461196584182211,
0.008540446671928126,
0.00492152099178006,
-0.007991633872357637,
0.00027097194443682774,
0.007362753380097823,
-0.004360984431374833,
0.002740266405693662,
-0.00898735186902487,
-0.0018965662899917718,
0.006372993109011243,
0.0015863838842665446,
0.009853146502181416,
-0.0030702889311305477,
0.005181243205632941,
-0.007739048999096216,
0.0005224737495887914,
0.007603726013126928,
-0.004118187121391179,
-0.008912518822109208,
-0.0006673327817047984,
0.0063693899528638066,
-0.00547074245976503,
],
[
0.009262136222589885,
0.02838296408310435,
0.08895743074514792,
0.12462140790659774,
0.10143975365298016,
0.09602370514817937,
0.030509447356588476,
-0.02348476706837973,
-0.11149392968729366,
-0.13471672714524444,
-0.1843920515350602,
-0.21362330804325955,
-0.2346658578937786,
-0.22429286181738645,
-0.20811730334901746,
-0.14736126013948794,
-0.13111532616989055,
-0.10051136318538541,
-0.05733386626251196,
-0.07094382711641757,
0.0013597936764943675,
0.21594823137898006,
0.6562428182552769,
1.5046762940049903,
],
[
0.03087843734860955,
0.028631985193909984,
0.03687986763985806,
0.05598069546954673,
0.07379771572743506,
0.07765822748918315,
0.08104170470667416,
0.07360198805958701,
0.035198528824192,
0.028836902063549046,
0.010945713372325064,
0.011170853767131866,
-0.008470009501518685,
-9.80843680464861e-5,
-0.00028512443049112467,
0.033729268359363594,
0.0651370474797362,
0.06770482740489663,
0.083819084968793,
0.06022874219415434,
0.061486463672328746,
0.06432178062685971,
0.11027952137796389,
0.2112179147261348,
],
[
0.008703513147432342,
0.0072582217920466666,
0.0160021049561688,
0.004475171430344715,
0.011427992979288605,
0.0011659025067428219,
0.0077468840172743225,
0.015500309461290768,
0.0012732256135935549,
0.008751365315586247,
0.002775753845563429,
0.010689834340894565,
-0.002654795031680357,
0.005404387676809622,
0.015724290135634585,
0.005180987659834486,
0.013237718953393287,
0.019948938110733457,
0.016930495865374647,
0.003907562867724632,
0.013732717157439844,
0.026524499665622855,
0.02564851540151025,
0.05452216653173882,
],
[
0.0009035826675958628,
-0.002722418292811121,
0.004353741641159741,
-0.007411754681528308,
-0.0003754596366907451,
0.007874566380198445,
-0.0050805567071782924,
0.0031527606380629073,
-0.009805679071818356,
0.005400083247927093,
-0.006334459519275436,
0.0007482492446523394,
0.009017132922046159,
-0.0039045121060802385,
0.004386579741481411,
-0.008485472046234177,
-0.00018279534443288356,
-0.004923627808363938,
0.0034269783732788907,
-0.009424165634136838,
-0.0010860007126990744,
0.006079845342536799,
-0.005565598219850804,
0.001620963943130147,
],
[
0.005640397115511178,
-0.007269193475134423,
0.0010013834438496842,
0.00927727351705419,
-0.003625851752291831,
0.003466913349710956,
-0.008257754164827229,
-0.0011655359156971532,
-0.00477084974465832,
0.002315947343758653,
-0.009416662041798215,
-0.002329577000075109,
0.005937141188885198,
-0.006974682147680643,
0.001288286578085167,
0.008369219372520657,
0.004753033817129289,
-0.008165216042514606,
9.527257670269342e-5,
0.007174811678139773,
-0.0045670754962349345,
0.0025100217212258987,
-0.00923317596061174,
-0.00215900391495667,
],
[
-0.42638020969615253,
-0.34863321597502656,
-0.34504284045455846,
-0.3836334255380426,
-0.30682540871405156,
-0.1758845492788952,
-0.01160779043480772,
0.07461548842777348,
0.19858246767424959,
0.250617394962426,
0.27104702073288195,
0.2938942445638829,
0.34256477535468244,
0.4071631038965888,
0.4736589608006998,
0.4990084187721829,
0.4154850907295257,
0.2221078225717027,
0.0549240634725874,
-0.02937837693369713,
-0.12198982883324483,
-0.19580201112842674,
-0.32404540173104246,
-0.708363660365267,
],
[
0.02996267979304968,
0.039392754132661564,
0.03204478268795849,
0.04299020327687375,
0.026809914780313433,
0.029974709507441993,
0.027628861851268127,
0.01654788121522299,
0.015319283245669769,
-0.0013712493681144688,
0.003244505548829768,
-0.012359280079375475,
-0.007270852766465776,
-0.0010982099644553389,
-0.012565837969594092,
-0.01479209067591348,
-0.0048859211059328065,
0.011244248629217454,
0.009533886414612943,
0.02215157921649726,
0.040428928459549665,
0.0490317038753121,
0.09429113658079342,
0.1609662295814235,
],
[
-0.0035671649935965287,
0.0035199227352265233,
-0.008211296509228421,
-0.001123722920774704,
0.0071453865855409145,
-0.005766867885199416,
-0.009379654782372593,
-0.0022920231701067236,
0.005976593422104128,
-0.006935477853542766,
0.0013337657002832825,
0.008421475075638155,
-0.003309405683740061,
0.003778653975071739,
-0.007952406437728559,
0.007253289919050434,
-0.004477639563295544,
0.0026100131721309454,
-0.009121291912740397,
-0.0020333917261951594,
0.0062355254277503954,
-0.006676617857873233,
0.00041146295963145294,
-0.0032008388565565537,
],
],
biases: [
-0.008646162061833933,
-0.7254346055100037,
0.009377535568846733,
0.0020730154030125514,
-0.0010209995178127517,
-2.3518023906569745,
-0.007208419442133924,
-0.002614761088368359,
-0.004639248644066404,
-0.008371956056569827,
0.009745986806638051,
0.005452550434165497,
0.0012178307573702995,
-0.0015351316364393915,
0.0006536617805598265,
-0.008114978832361432,
0.009458536358117081,
0.00651508700635762,
0.002599448287053735,
0.0023220593134259965,
0.005335289654632826,
0.002901292121538796,
-0.0027266301396985213,
0.0010920875041126345,
-0.009021538766879169,
0.013906454538110524,
0.00499927587523869,
0.0021457388422270285,
0.284387586033481,
-0.013693125327107548,
-0.005947422434338402,
0.010413703003581153,
0.005971077777518429,
-0.3141255868145693,
0.0303790846350958,
0.003921953866750629,
],
},
hidden_layers: [],
output_layer: Layer {
weights: [
[
-0.006600699999999999,
0.40097577463974776,
0.04181618787770862,
-0.0030140939378590216,
0.004113100000000001,
0.060957949629975854,
-0.0005300000000000005,
0.006809040155877536,
-0.017222881250085503,
-0.008810473065631683,
-0.012747245465550214,
0.0033722109423051446,
-0.010039368987661723,
-0.016642724673072908,
0.03542772527889113,
-0.00271516,
-0.01039975418587838,
-0.01749430804962722,
0.00751642359367234,
-0.04370101298116696,
0.010569031205259295,
0.0039593499939055725,
-0.0030587412876853207,
0.03367449334426104,
0.002036500000000001,
0.04057092223540138,
-0.0029517382031761918,
-0.005290820817022175,
0.3104991657389725,
0.0010360285631178508,
0.022496907966710854,
-0.002583988730562873,
0.0005908534380639503,
-0.17092460909099408,
0.0764289474021438,
-0.00672135475007816,
],
[
-0.00943488,
0.3924061922607449,
0.04137577462089696,
-0.0058472096315908524,
0.009397059999999999,
0.059343521008070804,
0.004753959999999999,
-0.005072901185464917,
-0.016043380117188137,
0.0071849038406291135,
-0.016045225037622186,
-0.00037277847034936323,
-0.0032994010498206385,
-0.00984338710827117,
0.024961341281787387,
0.0013874800000000008,
0.00848407026346428,
-0.019686206602467834,
0.00469286794626953,
-0.041000402946780895,
0.01669424621494643,
0.009763260121137879,
0.0035171004309116297,
0.023240856105809254,
-0.0007976799999999995,
0.04127783634060409,
-0.005120381591078882,
-0.006918912329636313,
0.30752409504442174,
0.019355313307852992,
0.012647422739654756,
0.004797045091424011,
0.006978088736315035,
-0.16102717143535009,
0.07757180777844662,
-0.009543785135287012,
],
[
-0.0053322199999999995,
0.3790215751254007,
0.02537552122664787,
-0.0017460889821829598,
0.0053815799999999995,
0.05690111690479315,
0.0007384799999999992,
0.0015394813323797454,
-0.0072497279202267525,
-0.0075004462222257075,
-0.01246737853712388,
0.005245811940460528,
-0.005441781642770628,
-0.011462146010619689,
0.026001046872660548,
0.00667144,
-0.00854733937479387,
-0.010937876875380642,
0.008808453185379372,
-0.025400176852113335,
0.012843101454582761,
0.005135182970430819,
0.00021852602771889917,
0.04518814979815324,
0.003304959999999999,
0.03150561749433408,
-0.0005828256597509964,
-0.00233982007174528,
0.2962312374976019,
0.03472263153445124,
0.03243791316357002,
0.0027409880418045123,
-0.008301445740687115,
-0.1431697805193732,
0.08481181056115453,
-0.004218582339187895,
],
[
-0.0081664,
0.35927785408126917,
0.038946285641961245,
0.0023630970544790933,
-0.009334480000000001,
0.055646273569589004,
0.00602242,
-0.0026122485336320584,
-0.00578139216917362,
0.008491337187058998,
-0.016435705650984303,
-0.010207969526506464,
0.0022979480070938127,
-0.0065359923594387375,
0.03458275139181335,
0.0026559599999999993,
-0.013845317623919927,
-0.011598330113249684,
0.006020371018076634,
-0.010159164789913258,
0.016974850110689107,
0.007271659707654064,
0.00581219089734724,
0.032082826771373134,
0.00047077999999999953,
0.04876871031155607,
-0.003114031648436225,
-0.019164842969192488,
0.27907853259320253,
0.05577826071832376,
0.02141602484570091,
0.006171500780815748,
0.008136188798536505,
-0.12200281455041061,
0.07773006580258121,
-0.008161688683658607,
],
[
-0.00406376,
0.34206087177913685,
0.01814830515203529,
-0.00046927304381290093,
0.006650039999999999,
0.056527876957787646,
0.002006939999999999,
0.0034910493555074624,
0.003078384670535039,
-0.00616908025133489,
-0.013291772703687877,
0.007437170958933348,
0.0010497746370854186,
-0.007523054893923516,
0.03170863213312178,
0.0079399,
-0.011733898097954805,
-0.002463505539062645,
-0.009847340866828319,
0.0007494131534314332,
0.011648593739269074,
0.0006255515156913313,
0.00200116580907192,
0.03928196057937682,
0.00457344,
0.035280348672341734,
0.00216143874865178,
-0.0021952860353756567,
0.25204783765779204,
0.07369564539683951,
0.02146109843582835,
0.0125666822636721,
-0.005423431808557401,
-0.09493287166488677,
0.0786148118540973,
-0.003994947313316757,
],
[
-0.00689794,
0.3222143730147938,
0.015532757684513369,
0.0036436512517841273,
-0.008066,
0.060164888291080874,
0.0072909,
-0.0015102079281268737,
0.0037603765391015596,
0.009845690260320446,
-0.007846199240055661,
-0.007826053855115837,
0.007193142010688323,
-0.0007947934753713679,
0.03188268586804708,
0.00392442,
-0.015969231466493553,
-0.003086805874083481,
-0.004503018347881936,
0.015896451692764324,
-0.004159929396542353,
0.00017562000227147706,
0.006982158234811525,
0.030368375520451265,
0.0017392600000000003,
0.04536629041821494,
0.0003118927553910761,
-0.018564701674040774,
0.21256064613843678,
0.0811401416082063,
0.026097816198972154,
0.011247728325111407,
-0.007534468270859421,
-0.05758472644815747,
0.05923397692614724,
0.0014706478285925015,
],
[
-0.00279528,
0.30285540678313866,
0.007104955123941899,
0.0008184801045286972,
0.00791852,
0.0666446011542446,
-0.00860646,
0.0042435225544862265,
0.009989670627578651,
-0.004833238281948937,
-0.010111492389901684,
-0.010485811427142918,
0.002459982005202524,
-0.000883694786890605,
0.028714839241700565,
0.00920838,
-0.01165704463432669,
0.0030347934101696244,
-0.008478505554756328,
0.017794322612784404,
0.01156744202194554,
-0.0025426622237078498,
-0.008801104022643941,
0.027770001262624952,
0.0058419,
0.02337737100798449,
0.00472969210642803,
-0.0006506519159019795,
0.17506289249385198,
0.07096879240801635,
0.03031119305002843,
0.016351289216234344,
-0.001185377137409422,
-0.026717184672156443,
0.030422605000710038,
-0.0024659103950991686,
],
[
-0.005629459999999999,
0.27550177065344855,
0.009799885174889191,
0.004925542193627121,
-0.0067975399999999995,
0.07338949384400467,
0.00855936,
-0.0033416027848857245,
0.004755329321307715,
-0.008934400867325993,
0.003224370473004368,
-0.006174034461628964,
0.0015427051998558067,
0.004243303361042249,
0.009272237876125666,
0.0051929,
-0.011589918884866646,
0.000781142706143839,
-0.0031728764790228277,
0.01236335234547821,
-0.002386567182693297,
0.0021703023581383448,
0.008974812518794928,
0.00637791708741974,
0.0018264199999999996,
0.00944374776837126,
0.009431535444978918,
-0.012754530210092168,
0.13600540848298132,
0.05232393548478493,
0.015333318779597422,
0.014916875679961698,
-0.003328741721122296,
0.012240057224280143,
0.021630208853390506,
0.002860218764364692,
],
[
-0.00152682,
0.24760797796984874,
0.012585232504563624,
0.0020912689608388554,
0.00918698,
0.07911138852497929,
-0.007337979999999999,
0.011115561074641355,
0.01057152917202862,
-0.003766140777568437,
0.0007575569296120293,
-0.00912192170211051,
-0.00016750502202749314,
-0.007823280450261701,
0.00866514277618161,
-0.009523160000000001,
-0.004975275655914545,
0.002112468361085713,
-0.007190682113857708,
0.007032585296940082,
0.01248999040672215,
0.020451729053830036,
-0.005886334858974922,
0.005519309730755368,
0.00711038,
0.0069842771338030985,
0.005584654560205607,
0.006716932683717421,
0.10301078432376377,
0.022103588425997404,
0.024118809397243056,
0.014138115885856787,
0.00012272662767616823,
0.04772203161485384,
0.005926696250535683,
-0.0011418329725302117,
],
[
-0.004361,
0.2298929512833438,
0.015479099206606084,
0.006197117222635918,
-0.00552906,
0.08390368588591553,
0.009827840000000001,
0.0029729904524826156,
0.004699934761906904,
0.00028848469819591,
0.011241784789506604,
-0.004963317134063931,
0.0017140676401306146,
-0.011516341612175268,
-0.00451611120046634,
0.00646136,
-0.005947280099257906,
0.008213236554321933,
-0.0018984806478420247,
0.005284150996025203,
-0.002180069414525689,
0.015095808772309928,
0.010946032810153172,
-0.00878015050095725,
0.0030949000000000003,
0.006558809455560555,
0.009296393939901454,
-0.004581035590346625,
0.0806539988953314,
-0.001840244257123164,
0.011966025015375461,
0.011671285290191328,
-0.0028534728514579043,
0.07060513979964612,
0.005534425141169399,
0.004159379517757241,
],
[
-0.00025834000000000024,
0.21514170410717295,
0.016130527528296974,
0.0033651130901536735,
-0.0014264200000000005,
0.08552824768379848,
-0.006069519999999999,
0.015416718109333424,
0.011695823976956558,
-0.0025677648327623805,
0.0065686060730020856,
-0.007743031251831841,
0.001360508096946452,
-0.003911665450118149,
-0.00020392475711822388,
-0.00825468,
-0.0018055868148111132,
0.0032634174253741806,
-0.005916587582129028,
0.005657460571806946,
0.012607752204010288,
0.028543893735655693,
-0.0032756405048571103,
-0.0058859052319242145,
0.00837884,
-0.000945961790094569,
0.006299182243415706,
-0.006988092632977991,
0.06389437075168704,
-0.007852320025239503,
0.024170399472685376,
0.012896251352913442,
0.0013507953601794988,
0.08512153373392031,
-0.004352318538533592,
0.00015967181262622817,
],
[
0.005025599999999999,
0.20356763612432244,
0.01760464366583161,
0.007469376179488077,
-0.0042606,
0.08760063440619897,
-0.0089037,
0.005990688178025485,
-0.005331985141352927,
0.0015005395503295117,
0.015442281577908565,
-0.0033146338884460346,
0.0035619912813245084,
-0.008058832184139542,
-0.007061290433207742,
0.007729839999999999,
0.00494193732493291,
-0.009663862815899874,
-0.001803573788792702,
0.006652925889219365,
-0.002506099211783859,
0.019191823800563387,
0.012951123757120108,
-0.012853285931183985,
0.00436336,
0.003046359698064793,
0.010397803213182153,
-0.0005072184507517189,
0.04991528605821012,
-0.014143864150632528,
0.013159575951256565,
0.011821521404601965,
-0.001490189978555957,
0.09754294486329203,
-0.0012445352158297418,
0.0054813487795713,
],
],
biases: [
0.059883492413685055,
0.056947109324794194,
0.05467006257053706,
0.05496833760030291,
0.06172410253320173,
0.08091423413605339,
0.11208786439600073,
0.1478391255312558,
0.18145863407377816,
0.20621960106208753,
0.21906654695594246,
0.22987062473937794,
],
},
}
}
pub fn get_question_mark_network() -> NeuralNetwork<36, OUTPUT_COUNT, 18, 0> {
NeuralNetwork {
input_layer: Layer {
weights: [
[
0.42744634445080226,
0.3464891200889955,
0.2993720250683245,
-0.2623420516618842,
-0.4399239544021631,
-0.8805216798635933,
-1.277221682477305,
-1.0166480004267446,
-0.6107178676317246,
-1.2553894810977124,
-1.059187471499149,
-1.4185825784335682,
-0.907880055079098,
-0.4270142548517575,
-0.10841665511404633,
0.42007499149510397,
0.011921737555441323,
0.08357408561096341,
0.3548607959649607,
0.39352983630842775,
0.7172412653340512,
0.34513867465712755,
0.9236993450270372,
1.0588896255140658,
0.6355907462673018,
0.507372932465268,
0.5755006890579482,
0.6038188243763499,
0.3913294965651433,
0.3183332988882255,
0.03546187387921928,
-0.050715817311737126,
-0.21578900097934697,
-0.24190496682082427,
-0.4126878137955782,
-0.3958586390849705,
],
[
-0.04683099994805934,
0.02404700004767825,
-0.09326199995878605,
-0.02238399995373238,
-0.05851159995282398,
0.012366400051262926,
0.09505740005086806,
-0.034064599949927464,
0.04862640003982983,
-0.08049559996435121,
0.0021954000323066076,
0.07307340003436906,
0.03694560002777834,
-0.09217639997926665,
-0.009485399978723453,
0.06139260001997625,
-0.05591639997011468,
0.014961600031551088,
0.0976526000223287,
-0.031469399979542054,
-0.06759699997253985,
0.003281000028120331,
0.08597200002469547,
-0.04314999997631145,
0.03954100003400605,
-0.08958099996598792,
-0.01870299996616781,
0.06398800003355345,
0.016047200033025243,
0.09873820003190834,
-0.03038379996982175,
0.05230720002803902,
-0.0768147999739681,
0.0058762000245054105,
0.07675420002368392,
-0.04055479997703802,
],
[
0.015276003756320747,
-0.1043288187730104,
-0.1206887443345173,
-0.17473242144265771,
-0.2792136758465216,
-0.06920513298225459,
0.07870263834847151,
0.2874031251458933,
0.51306570466991,
-0.05307456983738399,
0.139067958257542,
0.21772386394099522,
0.3608666762173362,
0.2926903950233656,
0.022925370580931193,
0.32128191155342495,
0.500582328514254,
0.5682425954017492,
0.1612956646260984,
-0.3479459691920325,
-0.7300587999779811,
-0.89020175483205,
-0.6656837765507624,
-0.5443539882620376,
-0.5020492738913255,
-0.619722506683402,
-0.5334933461018396,
-0.6220083179591622,
-0.4944451096163488,
-0.30581784722291494,
-0.31366505404743994,
-0.09377601228332874,
-0.019460097094817767,
0.14568913960197885,
0.07477153734734644,
0.19990536251422378,
],
[
-0.03414620009536447,
0.04854479990815968,
-0.08057720007521003,
0.08329499992438419,
-0.04582700007074558,
0.03686399991929157,
-0.0922580000913721,
-0.00956700008786626,
0.0613109999262178,
-0.05599800007254578,
0.0148799999305572,
-0.0330606000717734,
0.049630399932110665,
-0.07949160005650686,
0.003199399942893658,
0.07407739993442897,
-0.0432316000769916,
0.02764639993475918,
-0.08966260004782402,
0.0623965999502364,
-0.05491240006522535,
0.015965599924323812,
0.09865659992746618,
-0.030465400073764685,
0.052225599913831224,
-0.07689640008615123,
0.005794599914312432,
0.07667259991522048,
0.040544999916733146,
-0.08857700008076501,
-0.005886000077805653,
0.0649919999254375,
-0.052317000071610234,
0.01856099993048493,
-0.09874800006813271,
-0.027870000067030054,
],
[
0.11964088071698378,
0.17563467152218204,
0.0477950826751969,
0.07535996847174144,
-0.10084596269947439,
-0.08178349650978335,
-0.04410145503662,
-0.1271538633497763,
-0.2510994887395014,
-0.20673231602187941,
-0.14100955658242714,
-0.2993150345638269,
-0.2028987516127573,
-0.09645045493661604,
-0.19571934153503628,
-0.20722182650966664,
-0.14124076971436295,
-0.09717967089124176,
-0.19318250835093043,
-0.10520767503717232,
-0.19398777728465944,
-0.06876913761773636,
0.13326140805669928,
0.14057606771045633,
-0.02375103771736988,
0.0439457807653463,
0.1234485479494395,
-0.0132391219346438,
0.05061422303416391,
0.10290602703286637,
-0.049473515719077016,
-0.12321983790707487,
-0.0662825851630206,
-0.0199346420187038,
-0.13911529060771038,
-0.07914630656555363,
],
[
-0.8242171897721993,
-0.6797933358648341,
-0.7721230926019782,
-0.472139424848828,
-0.3055652177343337,
0.07854156773945542,
0.11831894139697,
0.2864842119960435,
0.20344539401286896,
0.20327237870916517,
0.28470111430576484,
0.40057250924631965,
0.340805002032957,
-0.004630247763267767,
0.058290280036592125,
0.09209100590562472,
0.2743600623396424,
0.6950549976200601,
0.7329388472858384,
0.9754305091704053,
0.6886248583665161,
0.34599466445650545,
-0.5908397430094353,
-0.9641697401263375,
-0.5897193363535074,
-0.6787563684363717,
-0.5960884927772907,
-0.6071035890252897,
-0.45832156995307977,
-0.5515091584741766,
-0.3206829707146418,
-0.14030056815258,
-0.14915865071348305,
0.06295711994016671,
-0.09462370198945227,
0.12101769628489141,
],
[
0.03137799989671543,
-0.08593100010790232,
-0.015053000104606355,
0.067637999897953,
-0.06148400010343589,
0.02120699989622197,
0.09208499990240146,
0.05595719992180327,
-0.0731648000643011,
0.009526199934226449,
0.08040419993842104,
-0.03690480005790414,
0.033973199948163404,
-0.08333580003901427,
-0.012457800032930578,
-0.04858540003780719,
0.02229259994834033,
-0.0950164000565929,
-0.024138400052685915,
0.05855259995401771,
-0.07056940004743939,
0.012121599951239084,
0.08299959995460775,
0.03505879995198582,
-0.08225020005758389,
-0.011372200057601848,
0.07131879994278702,
-0.05780320005659552,
0.024887799944714645,
0.09576579994680663,
-0.02154320005045564,
-0.06948380004731934,
0.013207199955191361,
0.08408519995735901,
-0.0332238000416296,
0.03765419995953875,
],
[
0.012211828442010216,
0.08070924393946144,
0.0480826365677161,
-0.08434775552218232,
-0.0040005910550513,
0.06238833023661301,
-0.061044352318757676,
0.004893045772373958,
0.09004665416857426,
-0.039211634077876215,
-0.07988367933207995,
-0.013686134556660364,
0.06966185674238588,
-0.05456848805827828,
0.02547008665825278,
-0.10717470281168254,
-0.03244887777221688,
0.041657147849218874,
-0.060867773700184945,
0.10053941170583003,
-0.017578609529963717,
0.047569641969423315,
-0.06713966125861559,
-0.0024494973722410207,
0.081580182647157,
-0.04737431269400918,
0.035111675767302224,
-0.012626119058032082,
0.06924839817657172,
-0.061237009677169295,
0.020183943296649163,
-0.11037553653724845,
-0.028743188914052455,
0.04137028161161109,
-0.07608863373296763,
0.07549488631151031,
],
[
0.04406260002537296,
-0.07324639997879094,
-0.0023683999808445733,
0.08032260002314977,
-0.048799399977111683,
0.03389160002396114,
-0.01404899997630489,
0.06864200002659693,
-0.060479999979931774,
0.022211000014960444,
0.09308900001065273,
-0.02421999998729622,
0.0466580000079518,
-0.07065099999260425,
0.08140820001033477,
-0.03590079999275423,
0.03497720001265782,
-0.08233179998286308,
-0.011453799985520914,
0.07123720001304158,
-0.057884799982424406,
0.024806200017515614,
-0.023134399983035858,
0.059556600015256346,
-0.06956539997956677,
0.013125600020434901,
0.08400360002028037,
-0.03330539998002783,
0.037572600019379516,
-0.0797363999816415,
-0.008858399982933751,
-0.04498619998436636,
0.025891800014362684,
-0.09141719998657813,
-0.020539199987132318,
0.06215180001238676,
],
[
-0.11538658964199805,
-0.03490564120054988,
-0.08446869502545533,
-0.19518284482624837,
-0.09771007633554697,
0.027222238878142884,
-0.05991205228767981,
0.0527738096542648,
-0.05592876636114329,
0.05492877390803164,
0.020534326347347875,
0.1208765456085682,
0.19619694236268476,
0.07591128210338133,
0.14322791557918443,
0.02364924643006674,
0.08697035227400193,
0.14524544470477288,
0.06189296544423912,
-0.08671115939145403,
-0.04816407631498518,
-0.000672131752269682,
-0.17446157407995558,
-0.12281401422466089,
-0.22111676388947285,
-0.13820800206837502,
-0.18347209936253334,
-0.09478395068564158,
-0.011104121816199873,
-0.10763497366897361,
-0.01093488270320653,
-0.10182116669047152,
-0.007550458661281779,
0.08095837826793524,
0.054041557826090596,
-0.06630900893295572,
],
[
0.060299440933092134,
-0.06893262142751101,
0.01400882620188111,
0.08525539835114201,
-0.03127764002813087,
0.040636243882720774,
0.005818772221733452,
0.0784182677611891,
-0.03736188125446572,
0.034518572571178754,
-0.0819487749384319,
-0.010447984380486636,
0.07261844462192539,
-0.05624072752264614,
-0.09250641391899131,
-0.022739299648265602,
0.058661057742394176,
-0.07136837644452003,
0.01009590302762209,
0.07973907351246827,
-0.038864372674905216,
0.03082878951743278,
-0.006521557436226661,
0.06382569879213548,
-0.053392544496312234,
0.017480417710147262,
-0.09972576132173198,
-0.028585603574956372,
0.054643458288887524,
-0.07362304077561195,
0.09135202188833089,
-0.03664634935607307,
0.04704777171488705,
-0.08134609241023737,
0.0017456612506731425,
0.07300266556123966,
],
[
0.28910720769005194,
0.19726462595287958,
0.36459930175945116,
0.23735776202546408,
0.272587031714135,
0.46668266571339967,
0.3810924493895574,
0.4012422402232401,
0.1518338632255196,
0.2734320086628156,
0.0019599555960523826,
0.023196074317774863,
-0.1618264619420657,
-0.06630878928499226,
0.0338900511970451,
-0.03747997486421152,
0.15698267730686868,
0.01657637637766937,
0.21119298206176584,
0.09072458246782665,
0.12150268194330045,
0.10579553351134202,
-0.033518124444523116,
-0.049496602832961284,
-0.10445350085270298,
-0.01861797628581179,
-0.0604922580648412,
0.02772973506601239,
-0.09623185996642909,
-0.010446939725545333,
0.056832752711641295,
-0.06535559697353811,
-0.0002224583800691949,
0.07713758425874066,
0.028868510340761277,
-0.0896932482030473,
],
[
0.08124499996251339,
-0.036064000035539244,
0.03481399997472371,
-0.08249500002554677,
-0.01161700002194211,
-0.047744600034977366,
0.02313339995294467,
-0.09417560004545895,
-0.023297600038668317,
0.0593933999635017,
-0.06972860003691943,
0.012962399960815853,
0.0838403999602948,
0.04771259996683752,
-0.08140940003434567,
0.0012815999522220415,
0.07215959994098825,
-0.045149400045173795,
0.025728599975455624,
-0.09158040001846031,
-0.020702400022441267,
-0.05683000003418791,
0.0140479999581598,
0.09673899995135515,
-0.03238300004678549,
0.0503079999532297,
-0.07881400004658137,
0.003876999953772374,
0.07475499995422877,
-0.04255400004511837,
-0.09049480004461305,
-0.007803800044118893,
0.06307419995637961,
-0.05423480004335837,
0.016643199956965633,
0.09933419995714347,
],
[
-0.03756931421808973,
-0.1123765455356951,
-0.07169431804335122,
-0.1991677162826249,
-0.11756068969511715,
-0.25327521926128305,
-0.1393871115443679,
-0.10396551950806433,
-0.24641551990516322,
-0.1985403978426277,
-0.10394495773180272,
-0.04810689019073258,
-0.1843129965667384,
-0.10641930737302635,
-0.021066630279955464,
-0.16248680548450656,
-0.10658965323149272,
-0.20256560429352038,
-0.161437983922352,
-0.26225204563217575,
-0.157834462133891,
-0.28998627896654716,
-0.17161142455691367,
-0.11071981804611984,
-0.0692326977909346,
0.0791142769871079,
-0.04335068319349045,
0.02244113666017857,
-0.0975124445740706,
-0.018950173191572512,
0.08539705099141764,
-0.013077637550934886,
0.10018811336996318,
-0.005955444858443605,
0.1691251205806274,
0.04857753917224621,
],
[
-0.0942572000815345,
-0.023379200076258273,
0.059311799917391564,
-0.06981020007956844,
0.01288079992790817,
-0.035060000076609046,
0.04763099992269168,
-0.08149100008085987,
0.0011999999199664292,
0.07207799992298462,
-0.04523100006920796,
0.02564699993307264,
-0.09166200006119439,
0.0603973999294052,
-0.056911600074579675,
0.013966399930534,
0.09665739992904518,
-0.03246460008090743,
0.05022639990571962,
-0.07889560010068222,
0.003795399903857795,
-0.04414540009754347,
0.03854559990469199,
-0.09057640008630836,
-0.007885400093486218,
0.06299259990658776,
-0.054316400092912887,
0.016561599908184187,
0.099252599909975,
0.05131199991183913,
-0.0659970000870549,
0.0048809999133791245,
0.07575899991324579,
-0.04155000008683806,
0.029327999913407902,
-0.08798100008630408,
],
[
-0.0012272786469435526,
-0.03151746093708857,
-0.1900552555522548,
-0.2629332497035591,
0.010024102727554465,
0.27438347215001524,
0.5116857263376667,
0.328339362512616,
-0.1722902864818803,
-0.18096286986614604,
-0.3095486546501816,
-0.021728884922211388,
-0.29926169584990114,
-0.39548182921932484,
-0.6881087612731224,
-0.42616116861997577,
0.38743849396517627,
0.9968358154734525,
1.5586737929782744,
1.5754209690495944,
1.3416893185647305,
0.9187210442318016,
0.2991060556331546,
-0.13361754138592533,
0.016965154643627616,
-0.013501729950733891,
0.0673650261319118,
0.15894436583958504,
0.03542949259255399,
0.11024684906645375,
0.15077230320141286,
-0.008522082831945929,
0.018690442011641096,
-0.05062038816342568,
0.006123484224281194,
-0.12336801128072351,
],
[
-0.08157259983598741,
0.001118400161949799,
0.07199640016817804,
-0.04531259984288869,
-0.0932531998481875,
-0.010562199850163542,
0.06031580013693878,
-0.0569931998817405,
0.01388480010725486,
0.09657580011100655,
-0.03254619989738573,
0.05014480009548491,
0.0022040000847980187,
0.08489500008202207,
-0.04422699992827149,
0.03846400006769234,
-0.09065799992727637,
-0.019779999914450935,
0.06291100010344147,
-0.06621099988204913,
0.0164800001184122,
-0.03146059988508315,
0.05123040010350148,
-0.07789159990933144,
0.004799400112179021,
0.07567740011213953,
-0.04163159988865821,
0.029246400109737534,
-0.08806259989334227,
0.06399660010274344,
-0.05331239990106289,
0.01756560009549178,
-0.09974339990662208,
-0.028865399908597163,
0.05382560009032729,
-0.07529639991108172,
],
[
0.2820701965215757,
0.5770786424031676,
0.5123492179992043,
1.1988832101111737,
1.2705562010029807,
0.8482189774936136,
0.9321252254303837,
1.0359791428610674,
1.610999134633655,
1.4497750956922602,
1.658168318710395,
1.2153923576641552,
1.0246626826603757,
0.8452880916891169,
0.8213526447350329,
0.6857075505083119,
-0.34445434352308185,
-1.6667225017364655,
-3.2794243405000825,
-3.7640124540273874,
-3.1455238365416403,
-2.388599444043286,
-0.7497806764271588,
0.7216996998931973,
0.2597491204484935,
0.11721941636455416,
0.18055739908433774,
0.24718405844684307,
0.15372448831100352,
0.27608593282050764,
0.23638991162378126,
0.38353621998529763,
0.5291322912322532,
0.5305503042189044,
0.43518153803361076,
0.5300809741376036,
],
],
biases: [
1.5242660990002355,
-0.08849540002418868,
1.9198566465029188,
-0.06399780009135873,
0.19483703045466533,
0.4124215631757178,
-0.0796548000360566,
-0.01324559104118067,
-0.06697019999450254,
0.12663047281046533,
-0.04235064335437128,
0.0003064926781532312,
-0.029787800089000144,
1.3879963761553111,
-0.017103000305655668,
-1.3724676440206105,
0.0073946002897478874,
-1.3317865764181838,
],
},
hidden_layers: [],
output_layer: Layer {
weights: [
[
0.18234032437451095,
-0.043630999999999996,
0.2641478428517428,
-0.008880600000000006,
0.1927332968423842,
-0.21176938711738721,
0.015566400000000003,
0.054517135331564166,
-0.0308646,
-0.09480749986005556,
-0.08194865765381305,
0.0408725951147119,
-0.0425454,
0.4275077828478002,
-0.0889764,
0.02534345477086265,
0.0645926,
0.11584704514024796,
],
[
0.17011192697069666,
0.052912,
0.3035965159066464,
0.006481000000000003,
0.10617394607297755,
-0.046880254972686365,
0.030928,
-0.08424392460694785,
-0.015503,
-0.046861542846061185,
0.018059383956676472,
0.019086224115406374,
-0.0271838,
0.3201554259400315,
-0.07361480000000001,
0.04035812850620226,
0.0799542,
0.10476992014927522,
],
[
0.20058902360752928,
0.0682736,
0.3653203857465187,
0.0218426,
-0.07208550400473594,
-0.018748578669537178,
-0.0725292,
0.012716930074068525,
0.0810398,
-0.028476427715499002,
0.031333573392347894,
-0.013734776310563735,
-0.011822200000000005,
0.19812898264463696,
-0.058253200000000005,
0.048724094351830644,
-0.0235028,
0.1357792482958315,
],
[
0.2575133191026105,
0.08363519999999999,
0.3815668255187421,
0.0372042,
0.043619623575274935,
-0.1769566326465201,
-0.057167600000000006,
-0.0344856128070789,
0.0964014,
-0.06874344405812739,
0.040627977083995424,
-0.05192102652819878,
0.0847208,
0.08035057643912417,
0.0382898,
0.033482564038486144,
-0.008141200000000005,
0.1701515241520935,
],
[
0.3733632818295635,
-0.019821999999999996,
0.42118765594103647,
-0.066253,
0.06638027226002033,
-0.2755781001064551,
-0.041805999999999996,
-0.07801543552491036,
-0.088237,
-0.07007418588241345,
-0.09040567110957483,
-0.09583909128703152,
-0.0999176,
-0.12347300224418516,
0.053651399999999995,
0.028475405240753558,
0.007220399999999993,
0.21752843606120328,
],
[
0.4498058116766299,
-0.004460399999999998,
0.44929007044196495,
-0.050891399999999996,
0.08198206379216376,
-0.28234180896400074,
-0.014631400000000006,
-0.15714788956707107,
0.00830599999999999,
-0.1086210145026551,
-0.04109594083740408,
-0.10149870831986,
-0.08455599999999999,
-0.30927477581730156,
0.06901299999999999,
0.021381092643650564,
-0.0962368,
0.2166281649336416,
],
[
0.5218068627759176,
0.01090120000000001,
0.43640873342029324,
-0.0355298,
0.04588349847023514,
-0.3139134586041102,
0.0819116,
-0.1281696353235962,
0.02366760000000001,
-0.24677594585097049,
-0.04613462985994048,
-0.08945205050883527,
0.01198680000000001,
-0.42528631246427867,
-0.0344442,
-0.0035651296897704246,
-0.08087520000000001,
0.2298715072585596,
],
[
0.5085963372927602,
0.02626280000000001,
0.40473993561487487,
0.06101319999999999,
0.005154892367993992,
-0.2653140128326093,
0.09727319999999999,
-0.09826920511498582,
0.03902920000000001,
-0.22988283090026304,
0.06066909738365115,
-0.11002070560617332,
0.027348400000000005,
-0.4733952659231769,
-0.019082600000000005,
-0.02425934608955974,
-0.06551359999999999,
0.22998917438729546,
],
[
0.49018711298329803,
-0.0771942,
0.4334542285335488,
0.0763748,
-0.010701012425104418,
-0.27298279644244294,
-0.0873652,
-0.01892484544209246,
-0.064428,
-0.16329718747021,
0.04726731137923694,
-0.0448261697340147,
0.042710000000000005,
-0.45887698580412684,
-0.0037209999999999964,
-0.0308619170962527,
0.031029400000000006,
0.2017845802322736,
],
[
0.4676248159208239,
-0.061832599999999995,
0.44220620654985326,
0.09173640000000001,
0.05302384938340335,
-0.2594446072482999,
0.009177600000000008,
0.033296087717350924,
-0.049066399999999996,
-0.11391934562987538,
-0.09174920723320733,
0.04748160286243918,
0.0580716,
-0.42562792092264246,
0.092822,
-0.03746968506350299,
0.046391,
0.16823100632850713,
],
[
0.4478860395854525,
-0.046471,
0.422476821211172,
-0.011720799999999998,
0.12950198381198064,
-0.24260090113763577,
0.024539200000000004,
0.05147997697179741,
-0.0337048,
-0.12882248054867265,
0.03942291199381548,
0.1938743311939254,
-0.0453854,
-0.35597315912149285,
-0.09181639999999999,
-0.07388217165721365,
0.061752600000000005,
0.12810871295278561,
],
[
0.44399993654666864,
0.0500718,
0.392990426560003,
0.0036407999999999996,
0.31406543157003264,
-0.20573001822624498,
0.0399008,
-0.10406482838557077,
0.0628382,
-0.20816301867190887,
0.01732585423803983,
0.25218369054800316,
-0.0300238,
-0.3254323724639905,
-0.0764548,
-0.09458410538716432,
-0.0417046,
0.1017175005515385,
],
],
biases: [
-0.26146181055521084,
-0.14697302294129036,
-0.09550295645913891,
-0.019469771672209105,
0.003016448568348151,
0.04891119936890398,
0.06329027325968214,
0.17339929527099282,
0.14751827308748722,
0.08262650821434614,
-0.0231091865935496,
-0.03126560949201097,
],
},
}
}