{ "cells": [ { "cell_type": "code", "execution_count": 1, "metadata": { "ExecuteTime": { "end_time": "2018-10-20T10:49:06.978090Z", "start_time": "2018-10-20T10:49:04.602609Z" }, "attributes": { "classes": [], "id": "", "n": "413" }, "scrolled": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Dataset has been loaded\n" ] } ], "source": [ "%load_ext autoreload\n", "%autoreload 2\n", "\n", "import numpy as np\n", "import matplotlib.pyplot as plt\n", "import h5py\n", "from sklearn.model_selection import train_test_split\n", "#import jtplot submodule from jupyterthemes\n", "from jupyterthemes import jtplot\n", "#currently installed theme will be used to\n", "#set plot style if no arguments provided\n", "jtplot.style()\n", "\n", "#now load this dataset \n", "h5f = h5py.File('./datasets/s8_sio2tio2_v2.h5','r')\n", "X = h5f['sizes'][:]\n", "Y = h5f['spectrum'][:]\n", "\n", "#create a train - test split of the dataset\n", "x_train, x_test, y_train, y_test = train_test_split(X, Y, test_size=0.4, random_state=42)\n", "# normalize inputs \n", "#x_test = (x_test - 50)/20 \n", "\n", "print(\"Dataset has been loaded\")\n", "\n", "import numpy as np\n", "import mxnet as mx\n", "\n", "# Step1: Load the model in MXNet\n", "\n", "# Use the same prefix and epoch parameters we used in save_mxnet_model API.\n", "sym, arg_params, aux_params = mx.model.load_checkpoint(prefix='./models/my_mod_convprel', epoch=0)\n", "\n", "# We use the data_names and data_shapes returned by save_mxnet_model API.\n", "mod = mx.mod.Module(symbol=sym, \n", " data_names=['/first_input6'], \n", " context=mx.gpu(), \n", " label_names=None)\n", "mod.bind(for_training=False, \n", " data_shapes=[('/first_input6', (1,8))], \n", " label_shapes=mod._label_shapes)\n", "mod.set_params(arg_params, aux_params, allow_missing=True) \n", "\n", "\n", "#resnet - my_mod_bet input_21\n", "#fullycon - my_mod_fullycon first_input2\n", "#conv1d - my_mod_conv1d - first_input4\n", "#convprel - my_mod_convprel - first_input6" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "ExecuteTime": { "start_time": "2018-10-20T10:50:38.073Z" }, "scrolled": false }, "outputs": [], "source": [ "import time\n", "import de2 as de\n", "import loss_defs as ld\n", "\n", "bnds = [(30, 70)]*8\n", "mats = np.array([3, 4, 3, 4, 3, 4, 3, 4])\n", "lams = np.linspace(300, 1200, 256)\n", "targ_spec = y_test[29]\n", "\n", "from sklearn.model_selection import ParameterGrid\n", "param_grid = {\n", " 'psize': [80, 160, 320, 640], \n", " 'psnew': [10, 20, 40],\n", " 'its_first': [100, 250, 500],\n", " 'its_second': [200, 300, 400],\n", " 'mut': [0.5, 0.75, 0.8, 1.0, 1.2],\n", " 'crossp': [0.3, 0.5, 0.7]\n", " }\n", "grid = ParameterGrid(param_grid) \n", "\n", "\n", "\n", "def de_stat(psize,psnew,its_first,its_second,mut,crossp):\n", " run_time_tot = []\n", " run_pmre = []\n", " reps = 5\n", " targ_spec2 = np.tile(targ_spec, (psize,1))\n", " for rep in range(reps):\n", " start = time.time()\n", " pop, f, b, hstry = de.de_g(\n", " fobj=ld.mxmod_arr_loss, \n", " bounds=bnds, \n", " mut=mut,\n", " crossp=crossp,\n", " popsize=psize, \n", " its=its_first, \n", " target=targ_spec2, \n", " mxmodel=mod) \n", " marg = int(psnew/5)\n", " pnew1 = pop[np.argsort(f)][:psnew-marg]\n", " pnew2 = pop[np.argsort(f)][psnew-marg:psnew]\n", " pnew = np.concatenate((pnew1, pnew2))\n", " b, c, hstry = de.de_c(\n", " fobj=ld.loss_func, \n", " bounds=bnds, \n", " pop=pnew, \n", " history=hstry, \n", " it_start=its_first, \n", " mut=mut,\n", " crossp=crossp,\n", " popsize=psnew, \n", " its=its_second, \n", " target=targ_spec, \n", " mats=mats, \n", " lams=lams)\n", " end = time.time()\n", " run_time_tot.append((end - start)/60.0)\n", " run_pmre.append(c)\n", " return np.mean(run_pmre), np.std(run_pmre), np.mean(run_time_tot)\n", " \n", " \n", "\n", "pm, pstd, rmd = de_stat(psize=80,psnew=20,its_first=500,its_second=300,mut=0.8,crossp=0.7)\n", "\n", "\n", "pm, pstd, rmd\n", "\n", "\n", "\n", "# print(grid)\n", "# for mem in grid:\n", "# for key in mem:\n", "# print(key, mem[key])" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "ExecuteTime": { "start_time": "2018-10-19T18:06:07.282Z" }, "attributes": { "classes": [], "id": "", "n": "414" }, "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "iteration 0\n", "0 2.0318959\n", "50 0.6335647\n", "100 0.43585822\n", "150 0.43585822\n", "200 0.4318153\n", "250 0.40194672\n", "300 0.36907107\n", "350 0.36907107\n", "400 0.3634729\n" ] } ], "source": [ "import time\n", "import de2 as de\n", "import loss_defs as ld\n", "\n", "bnds = [(30, 70)]*8\n", "mats = np.array([3, 4, 3, 4, 3, 4, 3, 4])\n", "lams = np.linspace(300, 1200, 256)\n", "targ_spec = y_test[29]\n", "\n", "psize = 320\n", "targ_spec2 = np.tile(targ_spec, (psize,1))\n", "its_first = 500\n", "psnew = 20\n", "its_second = 300\n", "reps = 100\n", "\n", "\n", "run_hist = []\n", "run_time1 = []\n", "run_time2 = []\n", "run_time_tot = []\n", "run_pmre = []\n", "run_best = []\n", "\n", "for rep in range(reps):\n", " print(\"iteration \", rep)\n", " start = time.time()\n", " pop, f, b, hstry = de.de_g(fobj=ld.mxmod_arr_loss, bounds=bnds, popsize=psize, its=its_first, target=targ_spec2, mxmodel=mod) \n", " #pop, f, b, hstry = de2(fobj=mxmod_arr_loss, bounds=bnds, popsize=psize, its=its_first) \n", " end1 = time.time()\n", " marg = int(psnew/5)\n", " pnew1 = pop[np.argsort(f)][:psnew-marg]\n", " pnew2 = pop[np.argsort(f)][psnew-marg:psnew]\n", " pnew = np.concatenate((pnew1, pnew2))\n", " #b, c, hstry = de_stage2(fobj=loss_func, bounds=bnds, popint=pnew, history=hstry, itprev=its_first, popsize=psnew, its=its_second)\n", " # b, c, hstry = de.de_c(fobj=loss_func, bounds=bnds, popsize=80, its=500)\n", " b, c, hstry = de.de_c(fobj=ld.loss_func, bounds=bnds, pop=pnew, history=hstry, it_start=its_first, popsize=psnew, its=its_second, target=targ_spec, mats=mats, lams=lams)\n", " end = time.time()\n", " run_time1.append((end1 - start)/60.0)\n", " run_time2.append((end - end1)/60.0)\n", " run_time_tot.append((end - start)/60.0)\n", " run_pmre.append(c)\n", " run_best.append(b)\n", " run_hist.append(np.asarray(hstry))\n" ] }, { "cell_type": "code", "execution_count": 122, "metadata": { "ExecuteTime": { "end_time": "2018-10-20T10:21:20.278082Z", "start_time": "2018-10-20T10:21:20.249204Z" } }, "outputs": [ { "data": { "text/plain": [ "(0.3027103117249282,\n", " 0.1032019355203007,\n", " 1.8674999300638835,\n", " 0.0020012622708828745)" ] }, "execution_count": 122, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pm, pstd, rm, rstd" ] }, { "cell_type": "code", "execution_count": 88, "metadata": { "ExecuteTime": { "end_time": "2018-10-19T18:01:38.465084Z", "start_time": "2018-10-19T18:01:38.382183Z" } }, "outputs": [ { "data": { "text/plain": [ "(array([0.2 , 0.7 , 2.7 , 1.6 , 1.9 ,\n", " 1.2 , 0.5 , 0.5 , 0.1 , 0.03333333,\n", " 0. ]),\n", " array([0. , 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 1. , 2.5, 3. ]),\n", " )" ] }, "execution_count": 88, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# import jtplot module in notebook\n", "from jupyterthemes import jtplot\n", "\n", "# choose which theme to inherit plotting style from\n", "# onedork | grade3 | oceans16 | chesterish | monokai | solarizedl | solarizedd\n", "#jtplot.style(theme='monokai')\n", "\n", "# set \"context\" (paper, notebook, talk, poster)\n", "# scale font-size of ticklabels, legend, etc.\n", "# remove spines from x and y axes and make grid dashed\n", "#jtplot.style(context='talk', fscale=1.4, spines=False, gridlines='--')\n", "\n", "# turn on X- and Y-axis tick marks (default=False)\n", "# turn off the axis grid lines (default=True)\n", "# and set the default figure size\n", "#jtplot.style(ticks=True, grid=False, figsize=(6, 4.5))\n", "jtplot.style(grid=False, figsize=(4,2), fscale=0.7, s)\n", "# reset default matplotlib rcParams\n", "#jtplot.reset()\n", "plt.s\n", "plt.hist(run_pmre, bins=[0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 1.0, 2.5, 3], density=True, stacked=True)" ] }, { "cell_type": "code", "execution_count": 110, "metadata": { "ExecuteTime": { "end_time": "2018-10-20T05:57:55.035771Z", "start_time": "2018-10-20T05:57:54.969003Z" } }, "outputs": [ { "data": { "text/plain": [ "(0.0, 2.1)" ] }, "execution_count": 110, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "ax.hist(run_pmre, bins=np.linspace(0, 2, 33), density=True, stacked=True, histtype='stepfilled')\n", "ax.spines['top'].set_visible(False)\n", "ax.spines['right'].set_visible(False)\n", "ax.set_xlim(left=0.0)\n", "#ax.spines['bottom'].set_visible(False)\n", "#ax.spines['left'].set_visible(False)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.0" }, "latex_envs": { "LaTeX_envs_menu_present": true, "autoclose": false, "autocomplete": true, "bibliofile": "biblio.bib", "cite_by": "apalike", "current_citInitial": 1, "eqLabelWithNumbers": true, "eqNumInitial": 1, "hotkeys": { "equation": "Ctrl-E", "itemize": "Ctrl-I" }, "labels_anchors": false, "latex_user_defs": false, "report_style_numbering": false, "user_envs_cfg": false } }, "nbformat": 4, "nbformat_minor": 2 }