{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"pygments_lexer":"ipython3","nbconvert_exporter":"python","version":"3.6.4","file_extension":".py","codemirror_mode":{"name":"ipython","version":3},"name":"python","mimetype":"text/x-python"}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"code","source":"#!/usr/bin/python3                                                                                                                                                                                                 \n\nimport tensorflow as tf\nimport pandas as pd\n\nprint(\"TensorFlow version:\", tf.__version__)\n\n## space separated values                                                                                                                                                                                          \ninput = pd.read_csv(\"../input/cryptography/hash_train_input.csv\", delimiter=\",\")\noutput = pd.read_csv(\"../input/cryptography/hash_train_output.csv\", delimiter=\",\")\n\ninput = input.iloc[:,1:11]\noutput = output.iloc[:,1:11]\n\ninput = input/255.0 # converts characters to 0-1 interval!                                                                                                                                                         \n\nprint(input)                                                                                                                                                                                                     \nprint(output)                                                                                                                                                                                                    \n\n# 10-140-140-10 neural network                                                                                                                                                                                     \nDIM = 140 # was 140                                                                                                                                                                                                 \n\nmodel = tf.keras.models.Sequential([\n#    tf.keras.layers.Flatten(input_shape=(10)),                                                                                                                                                                    \n    tf.keras.Input(shape=(10,)),\n    tf.keras.layers.Dense(DIM, activation='relu'),\n    tf.keras.layers.Dense(DIM, activation='relu'),\n    tf.keras.layers.Dense(10)\n])\n\n# loss_fn = tf.keras.losses.MeanSquaredError()                                                                                                                                                                     \nloss_fn = tf.keras.losses.MeanAbsoluteError()\n\nmodel.compile(optimizer='adam',\n              loss=loss_fn,\n              metrics=['mse'])\n\nmodel.fit(input, output, epochs=15)\n\nres = model.evaluate(input, output, verbose=2)\n\nprint(\"Error is: sum(|err|)/(N*dim(err)).\")\n\nprint(\"Final error is \" + str(res[0]))\n","metadata":{"_uuid":"8f2839f25d086af736a60e9eeb907d3b93b6e0e5","_cell_guid":"b1076dfc-b9ad-4769-8c92-a6c4dae69d19","execution":{"iopub.status.busy":"2022-08-02T17:48:29.580701Z","iopub.execute_input":"2022-08-02T17:48:29.581083Z","iopub.status.idle":"2022-08-02T17:49:17.680839Z","shell.execute_reply.started":"2022-08-02T17:48:29.581052Z","shell.execute_reply":"2022-08-02T17:49:17.679566Z"},"trusted":true},"execution_count":null,"outputs":[]}]}