Browse Source

all the params

Amir Ziai 5 years ago
parent
commit
e700e7517d
4 changed files with 204 additions and 27 deletions
  1. 2 0
      README.md
  2. 1 2
      conv.py
  3. 197 21
      dev4.ipynb
  4. 4 4
      params.py

+ 2 - 0
README.md

@@ -50,4 +50,6 @@ builder.build_dataset()
 
 ## TODO
 - Define experiments
+- Saliency map, class viz
+- 
 - ...

+ 1 - 2
conv.py

@@ -17,7 +17,6 @@ def convnet_init(model_name: str,
     #   variables is model specific.
     model_ft = None
     input_size = 0
-    output_size = 0
 
     if model_name == "resnet":
         """ Resnet18
@@ -57,7 +56,7 @@ def convnet_init(model_name: str,
         # TODO: this is my attempt to remove the last FC layer, doesn't seem to work for SqueezeNet
         # model_ft.classifier = nn.Identity()
         # model_ft.classifier[1] = nn.Conv2d(512, num_classes, kernel_size=(1, 1), stride=(1, 1))
-        model_ft.classifier[1] = nn.Identity()
+        model_ft.classifier = nn.Identity()
         # model_ft.num_classes = num_classes
         input_size = 224
 

+ 197 - 21
dev4.ipynb

@@ -12,7 +12,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 56,
+   "execution_count": 63,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -25,7 +25,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 57,
+   "execution_count": 64,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -34,27 +34,203 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 58,
+   "execution_count": null,
    "metadata": {},
    "outputs": [
     {
      "name": "stderr",
      "output_type": "stream",
      "text": [
-      "Running param set: {'data_path_base': '/Users/aziai/Downloads/vtest_new2', 'conv_model_name': None, 'num_epochs': 10, 'feature_extract': False, 'batch_size': 64, 'lr': 0.001, 'use_vggish': False, 'momentum': 0.9}\n",
-      "Running param set: {'data_path_base': '/Users/aziai/Downloads/vtest_new2', 'conv_model_name': None, 'num_epochs': 10, 'feature_extract': False, 'batch_size': 64, 'lr': 0.001, 'use_vggish': True, 'momentum': 0.9}\n",
-      "Loading experiment results from cache\n",
-      "Running param set: {'data_path_base': '/Users/aziai/Downloads/vtest_new2', 'conv_model_name': None, 'num_epochs': 10, 'feature_extract': True, 'batch_size': 64, 'lr': 0.001, 'use_vggish': False, 'momentum': 0.9}\n",
-      "Running param set: {'data_path_base': '/Users/aziai/Downloads/vtest_new2', 'conv_model_name': None, 'num_epochs': 10, 'feature_extract': True, 'batch_size': 64, 'lr': 0.001, 'use_vggish': True, 'momentum': 0.9}\n",
-      "Loading experiment results from cache\n",
-      "Running param set: {'data_path_base': '/Users/aziai/Downloads/vtest_new2', 'conv_model_name': 'resnet', 'num_epochs': 10, 'feature_extract': False, 'batch_size': 64, 'lr': 0.001, 'use_vggish': False, 'momentum': 0.9}\n",
-      "Loading experiment results from cache\n",
-      "Running param set: {'data_path_base': '/Users/aziai/Downloads/vtest_new2', 'conv_model_name': 'resnet', 'num_epochs': 10, 'feature_extract': False, 'batch_size': 64, 'lr': 0.001, 'use_vggish': True, 'momentum': 0.9}\n",
-      "Loading experiment results from cache\n",
-      "Running param set: {'data_path_base': '/Users/aziai/Downloads/vtest_new2', 'conv_model_name': 'resnet', 'num_epochs': 10, 'feature_extract': True, 'batch_size': 64, 'lr': 0.001, 'use_vggish': False, 'momentum': 0.9}\n",
-      "Loading experiment results from cache\n",
-      "Running param set: {'data_path_base': '/Users/aziai/Downloads/vtest_new2', 'conv_model_name': 'resnet', 'num_epochs': 10, 'feature_extract': True, 'batch_size': 64, 'lr': 0.001, 'use_vggish': True, 'momentum': 0.9}\n",
-      "Loading experiment results from cache\n"
+      "Running param set: {'data_path_base': '/Users/aziai/Downloads/vtest_new2', 'conv_model_name': 'densenet', 'num_epochs': 10, 'feature_extract': False, 'batch_size': 64, 'lr': 0.001, 'use_vggish': False, 'momentum': 0.9}\n",
+      "Downloading: \"https://download.pytorch.org/models/densenet121-a639ec97.pth\" to /Users/aziai/.cache/torch/checkpoints/densenet121-a639ec97.pth\n",
+      "100%|██████████| 32342954/32342954 [00:03<00:00, 9210604.74it/s] \n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Updating ALL params\n",
+      "Epoch 0/9\n",
+      "----------\n",
+      "train Loss: 0.7583 F1: 0.6549 Acc: 0.5063\n",
+      "val Loss: 0.6403 F1: 0.7969 Acc: 0.6941\n",
+      "\n",
+      "Epoch 1/9\n",
+      "----------\n",
+      "train Loss: 0.6932 F1: 0.6531 Acc: 0.5696\n",
+      "val Loss: 0.7109 F1: 0.4898 Acc: 0.4118\n",
+      "\n",
+      "Epoch 2/9\n",
+      "----------\n",
+      "train Loss: 0.6125 F1: 0.6667 Acc: 0.6709\n",
+      "val Loss: 0.7488 F1: 0.3820 Acc: 0.3529\n",
+      "\n",
+      "Epoch 3/9\n",
+      "----------\n",
+      "train Loss: 0.5145 F1: 0.8462 Acc: 0.8481\n",
+      "val Loss: 0.6949 F1: 0.5455 Acc: 0.4706\n",
+      "\n",
+      "Epoch 4/9\n",
+      "----------\n",
+      "train Loss: 0.4379 F1: 0.9070 Acc: 0.8987\n",
+      "val Loss: 0.6436 F1: 0.6607 Acc: 0.5529\n",
+      "\n",
+      "Epoch 5/9\n",
+      "----------\n",
+      "train Loss: 0.3507 F1: 0.9524 Acc: 0.9494\n",
+      "val Loss: 0.6525 F1: 0.6019 Acc: 0.5176\n",
+      "\n",
+      "Epoch 6/9\n",
+      "----------\n",
+      "train Loss: 0.2782 F1: 0.9639 Acc: 0.9620\n",
+      "val Loss: 0.7106 F1: 0.4946 Acc: 0.4471\n",
+      "\n",
+      "Epoch 7/9\n",
+      "----------\n",
+      "train Loss: 0.2353 F1: 0.9877 Acc: 0.9873\n",
+      "val Loss: 0.7582 F1: 0.4889 Acc: 0.4588\n",
+      "\n",
+      "Epoch 8/9\n",
+      "----------\n",
+      "train Loss: 0.1920 F1: 0.9877 Acc: 0.9873\n",
+      "val Loss: 0.7496 F1: 0.4946 Acc: 0.4471\n",
+      "\n",
+      "Epoch 9/9\n",
+      "----------\n",
+      "train Loss: 0.1625 F1: 0.9880 Acc: 0.9873\n",
+      "val Loss: 0.7183 F1: 0.5657 Acc: 0.4941\n",
+      "\n",
+      "Training complete in 6m 48s\n",
+      "Best val F1  : 0.796875\n",
+      "Best val Acc : 0.694118\n"
+     ]
+    },
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "Running param set: {'data_path_base': '/Users/aziai/Downloads/vtest_new2', 'conv_model_name': 'densenet', 'num_epochs': 10, 'feature_extract': False, 'batch_size': 64, 'lr': 0.001, 'use_vggish': True, 'momentum': 0.9}\n",
+      "Downloading: \"https://users.cs.cf.ac.uk/taylorh23/pytorch/models/vggish-918c2d05.pth\" to /Users/aziai/.cache/torch/checkpoints/vggish-918c2d05.pth\n",
+      "100%|██████████| 288567959/288567959 [04:26<00:00, 1082574.06it/s]\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Updating ALL params\n",
+      "Epoch 0/9\n",
+      "----------\n",
+      "train Loss: 0.6834 F1: 0.4516 Acc: 0.5696\n",
+      "val Loss: 0.6310 F1: 0.8154 Acc: 0.7176\n",
+      "\n",
+      "Epoch 1/9\n",
+      "----------\n",
+      "train Loss: 0.6429 F1: 0.6593 Acc: 0.6076\n",
+      "val Loss: 0.5617 F1: 0.8966 Acc: 0.8235\n",
+      "\n",
+      "Epoch 2/9\n",
+      "----------\n",
+      "train Loss: 0.5885 F1: 0.7407 Acc: 0.6456\n",
+      "val Loss: 0.5736 F1: 0.8951 Acc: 0.8235\n",
+      "\n",
+      "Epoch 3/9\n",
+      "----------\n",
+      "train Loss: 0.4830 F1: 0.8421 Acc: 0.8101\n",
+      "val Loss: 0.6669 F1: 0.6275 Acc: 0.5529\n",
+      "\n",
+      "Epoch 4/9\n",
+      "----------\n",
+      "train Loss: 0.4137 F1: 0.9750 Acc: 0.9747\n",
+      "val Loss: 0.7561 F1: 0.2597 Acc: 0.3294\n",
+      "\n",
+      "Epoch 5/9\n",
+      "----------\n",
+      "train Loss: 0.3440 F1: 0.9877 Acc: 0.9873\n",
+      "val Loss: 0.7366 F1: 0.4419 Acc: 0.4353\n",
+      "\n",
+      "Epoch 6/9\n",
+      "----------\n",
+      "train Loss: 0.2656 F1: 0.9877 Acc: 0.9873\n",
+      "val Loss: 0.6959 F1: 0.5895 Acc: 0.5412\n",
+      "\n",
+      "Epoch 7/9\n",
+      "----------\n",
+      "train Loss: 0.2115 F1: 1.0000 Acc: 1.0000\n",
+      "val Loss: 0.6215 F1: 0.6981 Acc: 0.6235\n",
+      "\n",
+      "Epoch 8/9\n",
+      "----------\n",
+      "train Loss: 0.1942 F1: 0.9647 Acc: 0.9620\n",
+      "val Loss: 0.6100 F1: 0.7273 Acc: 0.6471\n",
+      "\n",
+      "Epoch 9/9\n",
+      "----------\n",
+      "train Loss: 0.1419 F1: 1.0000 Acc: 1.0000\n",
+      "val Loss: 0.7175 F1: 0.6535 Acc: 0.5882\n",
+      "\n",
+      "Training complete in 8m 22s\n",
+      "Best val F1  : 0.896552\n",
+      "Best val Acc : 0.823529\n"
+     ]
+    },
+    {
+     "name": "stderr",
+     "output_type": "stream",
+     "text": [
+      "Running param set: {'data_path_base': '/Users/aziai/Downloads/vtest_new2', 'conv_model_name': 'densenet', 'num_epochs': 10, 'feature_extract': True, 'batch_size': 64, 'lr': 0.001, 'use_vggish': False, 'momentum': 0.9}\n"
+     ]
+    },
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "Params to update\n",
+      "* combined.weight\n",
+      "* combined.bias\n",
+      "Epoch 0/9\n",
+      "----------\n",
+      "train Loss: 0.6883 F1: 0.6538 Acc: 0.5443\n",
+      "val Loss: 0.7030 F1: 0.6261 Acc: 0.4941\n",
+      "\n",
+      "Epoch 1/9\n",
+      "----------\n",
+      "train Loss: 0.6528 F1: 0.6729 Acc: 0.5570\n",
+      "val Loss: 0.6945 F1: 0.6306 Acc: 0.5176\n",
+      "\n",
+      "Epoch 2/9\n",
+      "----------\n",
+      "train Loss: 0.6262 F1: 0.7184 Acc: 0.6329\n",
+      "val Loss: 0.7183 F1: 0.6154 Acc: 0.5294\n",
+      "\n",
+      "Epoch 3/9\n",
+      "----------\n",
+      "train Loss: 0.5804 F1: 0.7191 Acc: 0.6835\n",
+      "val Loss: 0.7631 F1: 0.4667 Acc: 0.4353\n",
+      "\n",
+      "Epoch 4/9\n",
+      "----------\n",
+      "train Loss: 0.5529 F1: 0.7179 Acc: 0.7215\n",
+      "val Loss: 0.7377 F1: 0.5161 Acc: 0.4706\n",
+      "\n",
+      "Epoch 5/9\n",
+      "----------\n",
+      "train Loss: 0.4921 F1: 0.8434 Acc: 0.8354\n",
+      "val Loss: 0.6402 F1: 0.7500 Acc: 0.6706\n",
+      "\n",
+      "Epoch 6/9\n",
+      "----------\n",
+      "train Loss: 0.4559 F1: 0.8667 Acc: 0.8481\n",
+      "val Loss: 0.5956 F1: 0.8455 Acc: 0.7765\n",
+      "\n",
+      "Epoch 7/9\n",
+      "----------\n",
+      "train Loss: 0.4243 F1: 0.8723 Acc: 0.8481\n",
+      "val Loss: 0.5929 F1: 0.8167 Acc: 0.7412\n",
+      "\n",
+      "Epoch 8/9\n",
+      "----------\n"
      ]
     }
    ],
@@ -64,7 +240,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 59,
+   "execution_count": null,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -73,7 +249,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 60,
+   "execution_count": null,
    "metadata": {},
    "outputs": [],
    "source": [
@@ -84,7 +260,7 @@
   },
   {
    "cell_type": "code",
-   "execution_count": 61,
+   "execution_count": 62,
    "metadata": {},
    "outputs": [
     {
@@ -259,7 +435,7 @@
        "2          64             NaN  /Users/aziai/Downloads/vtest_new2   20190602194822             True  0.001       0.9          10  9ca13084e79d88cec23574c0c37fa9109fe87a7026f9bd...       False -1.000000 -1.000000"
       ]
      },
-     "execution_count": 61,
+     "execution_count": 62,
      "metadata": {},
      "output_type": "execute_result"
     }

+ 4 - 4
params.py

@@ -1,7 +1,7 @@
 seed = 0
 n_jobs = 1
 
-data_path_base = '/Users/aziai/Downloads/vtest_new2'
+data_path_base = 'vtest_new2'
 
 # test end-to-end
 experiment_test = {
@@ -17,11 +17,11 @@ experiment_test = {
 
 experiments = {
     'data_path_base': {data_path_base},
-    'conv_model_name': {'resnet', None},  # vgg
+    'conv_model_name': {'resnet', None, 'densenet', 'squeezenet'},  # vgg
     'num_epochs': {10},
     'feature_extract': {True, False},
     'batch_size': {64},
-    'lr': {0.001},
+    'lr': {1e-3, 1e-2},
     'use_vggish': {False, True},
-    'momentum': {0.9}
+    'momentum': {0.9, 0.95}
 }