{
  "id": 83473,
  "title": "Cifar-10 RBF kernel 2 features ensemble [LB 0.9304]",
  "url": "/competitions/cifar-10/discussion/83473",
  "author_name": "nor",
  "post_date": "2019-03-10T09:51:22.130000",
  "votes": 1,
  "comment_count": 0,
  "views": 0,
  "content": "<p><a href=\"https://www.kaggle.com/wordroid/cifar-10-rbf-2-features-ensemble-lb-0-9304\">Cifar-10 RBF 2 features ensemble [LB 0.9304]</a></p>\n\n<p>In Cifar-10 we tried the ensemble method with Digit Recognizer. Please see also '<a href=\"https://www.kaggle.com/wordroid/digit-recognizer-rbf-2-features-ensemble-0-99657\">Does RBF kernel with two fixed Landmarks work well in ensemble?</a>'.</p>\n\n<p>(Submitting the output submit.csv of <a href=\"https://www.kaggle.com/wordroid/cifar-10-rbf-2-features-ensemble-lb-0-9304\">this kernel</a> with '<a href=\"https://www.kaggle.com/c/cifar-10\">CIFAR-10 - Object Recognition in Images</a>' gives 0.9304.)</p>\n\n<h2>Whole model</h2>\n\n<p>The input of network is 32x32x3, since the image data of Cifar-10 is an ordinary RGB image.</p>\n\n<p>|...|MODEL|INPUT|OUTPUT|\n|-------------|:-------------|-----:|-----:|\n|1| image converter | 32 x 32 x 3 | 512 |\n|2| classifier | 512 | 10 |</p>\n\n<p>In this trial with Cifar-10, we try to make the configuration of the classifier different from Digit Recognizer.</p>\n\n<h3>classifier</h3>\n\n<p>|...|LAYER|INPUT|OUTPUT|DESC|\n|--:|:-------------|---:|---:|:-----|\n|LAYER-1| GaussianKernel(RBF) | 512 | 2 | .|\n|LAYER-2| GaussianKernel(RBF) | 2 | 10 | 10 fixed Landmarks |</p>\n\n<p>Digit Recognizer used fixed values for the two landmarks of LAYER-1, but here we use a fixed value for the 10 landmarks of LAYER-2. <strong>The landmark of LAYER-1 will be trained.</strong></p>\n\n<p>The 10 landmarks used are shown below. We change this landmarks little by little during 300 epochs. While maintaining the positional relationship of individual landmarks, we gradually reduce the radius of the circle. When using circle-3 from the beginning it did not converge well.</p>\n\n<p>|LM|fixed 10 landmarks|\n|--:|:--:|\n|circle-1|<img src=\"http://yunopon.sakura.ne.jp/sblo_files/wordroid/image/ttt00107.png\" alt=\"\">|\n|circle-2|<img src=\"http://yunopon.sakura.ne.jp/sblo_files/wordroid/image/ttt00108.png\" alt=\"\">|\n|circle-3|<img src=\"http://yunopon.sakura.ne.jp/sblo_files/wordroid/image/ttt00109.png\" alt=\"\">|</p>\n\n<p>Let's see the output of LAYER-1 and the landmark of LAYER-2. You can see that the output of LAYER-1 is distributed around the landmark of LAYER-2.</p>\n\n<p>|state|image|\n|--:|:--:|\n|<a href=\"https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10001\">10001</a>|<img src=\"http://yunopon.sakura.ne.jp/sblo_files/wordroid/image/ttt00110.png\" alt=\"\">|</p>\n\n<h2>Result</h2>\n\n<p>Individual learner only use two variables at classifier. Since we are trying to represent feature values with two variables, the bias is high and it looks like a weak learner. Therefore, the generalization performance of each learner is not so high.</p>\n\n<p>The results of ensemble of these individual results are very good.</p>\n\n<p>|state|train data<br>f1_score|test data<br>kaggle LB|\n|:--|--:|--:|\n|<a href=\"https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10001\">10001</a>|0.96747|0.87210|\n|<a href=\"https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10002\">10002</a>|0.96433|0.87170|\n|<a href=\"https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10003\">10003</a>|0.95208|0.86900|\n||||\n|<a href=\"https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-ensemble01\">3 learners above</a>|0.99123|<strong>0.91760</strong>|\n||||\n|<a href=\"https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10004\">10004</a>|0.95641|0.87220|\n|<a href=\"https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10005\">10005</a>|0.95259|0.86310|\n|<a href=\"https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10006\">10006</a>|0.95889|0.87910|\n|<a href=\"https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-ensemble01\">6 learners above</a>|0.99444|<strong>0.92530</strong>|\n|<a href=\"https://www.kaggle.com/wordroid/cifar-10-rbf-2-features-ensemble-lb-0-9304\">9 learners</a>|0.99534|<strong>0.93040</strong>|</p>",
  "messages": [
    {
      "id": 487186,
      "postDate": "2019-03-10T09:51:22.130Z",
      "content": "<p><a href=\"https://www.kaggle.com/wordroid/cifar-10-rbf-2-features-ensemble-lb-0-9304\">Cifar-10 RBF 2 features ensemble [LB 0.9304]</a></p>\n\n<p>In Cifar-10 we tried the ensemble method with Digit Recognizer. Please see also '<a href=\"https://www.kaggle.com/wordroid/digit-recognizer-rbf-2-features-ensemble-0-99657\">Does RBF kernel with two fixed Landmarks work well in ensemble?</a>'.</p>\n\n<p>(Submitting the output submit.csv of <a href=\"https://www.kaggle.com/wordroid/cifar-10-rbf-2-features-ensemble-lb-0-9304\">this kernel</a> with '<a href=\"https://www.kaggle.com/c/cifar-10\">CIFAR-10 - Object Recognition in Images</a>' gives 0.9304.)</p>\n\n<h2>Whole model</h2>\n\n<p>The input of network is 32x32x3, since the image data of Cifar-10 is an ordinary RGB image.</p>\n\n<p>|...|MODEL|INPUT|OUTPUT|\n|-------------|:-------------|-----:|-----:|\n|1| image converter | 32 x 32 x 3 | 512 |\n|2| classifier | 512 | 10 |</p>\n\n<p>In this trial with Cifar-10, we try to make the configuration of the classifier different from Digit Recognizer.</p>\n\n<h3>classifier</h3>\n\n<p>|...|LAYER|INPUT|OUTPUT|DESC|\n|--:|:-------------|---:|---:|:-----|\n|LAYER-1| GaussianKernel(RBF) | 512 | 2 | .|\n|LAYER-2| GaussianKernel(RBF) | 2 | 10 | 10 fixed Landmarks |</p>\n\n<p>Digit Recognizer used fixed values for the two landmarks of LAYER-1, but here we use a fixed value for the 10 landmarks of LAYER-2. <strong>The landmark of LAYER-1 will be trained.</strong></p>\n\n<p>The 10 landmarks used are shown below. We change this landmarks little by little during 300 epochs. While maintaining the positional relationship of individual landmarks, we gradually reduce the radius of the circle. When using circle-3 from the beginning it did not converge well.</p>\n\n<p>|LM|fixed 10 landmarks|\n|--:|:--:|\n|circle-1|<img src=\"http://yunopon.sakura.ne.jp/sblo_files/wordroid/image/ttt00107.png\" alt=\"\">|\n|circle-2|<img src=\"http://yunopon.sakura.ne.jp/sblo_files/wordroid/image/ttt00108.png\" alt=\"\">|\n|circle-3|<img src=\"http://yunopon.sakura.ne.jp/sblo_files/wordroid/image/ttt00109.png\" alt=\"\">|</p>\n\n<p>Let's see the output of LAYER-1 and the landmark of LAYER-2. You can see that the output of LAYER-1 is distributed around the landmark of LAYER-2.</p>\n\n<p>|state|image|\n|--:|:--:|\n|<a href=\"https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10001\">10001</a>|<img src=\"http://yunopon.sakura.ne.jp/sblo_files/wordroid/image/ttt00110.png\" alt=\"\">|</p>\n\n<h2>Result</h2>\n\n<p>Individual learner only use two variables at classifier. Since we are trying to represent feature values with two variables, the bias is high and it looks like a weak learner. Therefore, the generalization performance of each learner is not so high.</p>\n\n<p>The results of ensemble of these individual results are very good.</p>\n\n<p>|state|train data<br>f1_score|test data<br>kaggle LB|\n|:--|--:|--:|\n|<a href=\"https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10001\">10001</a>|0.96747|0.87210|\n|<a href=\"https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10002\">10002</a>|0.96433|0.87170|\n|<a href=\"https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10003\">10003</a>|0.95208|0.86900|\n||||\n|<a href=\"https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-ensemble01\">3 learners above</a>|0.99123|<strong>0.91760</strong>|\n||||\n|<a href=\"https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10004\">10004</a>|0.95641|0.87220|\n|<a href=\"https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10005\">10005</a>|0.95259|0.86310|\n|<a href=\"https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10006\">10006</a>|0.95889|0.87910|\n|<a href=\"https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-ensemble01\">6 learners above</a>|0.99444|<strong>0.92530</strong>|\n|<a href=\"https://www.kaggle.com/wordroid/cifar-10-rbf-2-features-ensemble-lb-0-9304\">9 learners</a>|0.99534|<strong>0.93040</strong>|</p>",
      "rawMarkdown": "[Cifar-10 RBF 2 features ensemble [LB 0.9304]](https://www.kaggle.com/wordroid/cifar-10-rbf-2-features-ensemble-lb-0-9304)\n\nIn Cifar-10 we tried the ensemble method with Digit Recognizer. Please see also '[Does RBF kernel with two fixed Landmarks work well in ensemble?](https://www.kaggle.com/wordroid/digit-recognizer-rbf-2-features-ensemble-0-99657)'.\n\n(Submitting the output submit.csv of [this kernel](https://www.kaggle.com/wordroid/cifar-10-rbf-2-features-ensemble-lb-0-9304) with '[CIFAR-10 - Object Recognition in Images](https://www.kaggle.com/c/cifar-10)' gives 0.9304.)\n\n## Whole model\nThe input of network is 32x32x3, since the image data of Cifar-10 is an ordinary RGB image.\n\n|...|MODEL|INPUT|OUTPUT|\n|-------------|:-------------|-----:|-----:|\n|1| image converter | 32 x 32 x 3 | 512 |\n|2| classifier | 512 | 10 |\n\nIn this trial with Cifar-10, we try to make the configuration of the classifier different from Digit Recognizer.\n\n### classifier\n\n|...|LAYER|INPUT|OUTPUT|DESC|\n|--:|:-------------|---:|---:|:-----|\n|LAYER-1| GaussianKernel(RBF) | 512 | 2 | .|\n|LAYER-2| GaussianKernel(RBF) | 2 | 10 | 10 fixed Landmarks |\n\nDigit Recognizer used fixed values for the two landmarks of LAYER-1, but here we use a fixed value for the 10 landmarks of LAYER-2. **The landmark of LAYER-1 will be trained.**\n\nThe 10 landmarks used are shown below. We change this landmarks little by little during 300 epochs. While maintaining the positional relationship of individual landmarks, we gradually reduce the radius of the circle. When using circle-3 from the beginning it did not converge well.\n\n|LM|fixed 10 landmarks|\n|--:|:--:|\n|circle-1|![](http://yunopon.sakura.ne.jp/sblo_files/wordroid/image/ttt00107.png)|\n|circle-2|![](http://yunopon.sakura.ne.jp/sblo_files/wordroid/image/ttt00108.png)|\n|circle-3|![](http://yunopon.sakura.ne.jp/sblo_files/wordroid/image/ttt00109.png)|\n\nLet's see the output of LAYER-1 and the landmark of LAYER-2. You can see that the output of LAYER-1 is distributed around the landmark of LAYER-2.\n\n|state|image|\n|--:|:--:|\n|[10001](https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10001)|![](http://yunopon.sakura.ne.jp/sblo_files/wordroid/image/ttt00110.png)|\n\n\n\n## Result\nIndividual learner only use two variables at classifier. Since we are trying to represent feature values with two variables, the bias is high and it looks like a weak learner. Therefore, the generalization performance of each learner is not so high.\n\nThe results of ensemble of these individual results are very good.\n\n|state|train data<br>f1_score|test data<br>kaggle LB|\n|:--|--:|--:|\n|[10001](https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10001)|0.96747|0.87210|\n|[10002](https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10002)|0.96433|0.87170|\n|[10003](https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10003)|0.95208|0.86900|\n||||\n|[3 learners above](https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-ensemble01)|0.99123|**0.91760**|\n||||\n|[10004](https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10004)|0.95641|0.87220|\n|[10005](https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10005)|0.95259|0.86310|\n|[10006](https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10006)|0.95889|0.87910|\n|[6 learners above](https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-ensemble01)|0.99444|**0.92530**|\n|[9 learners](https://www.kaggle.com/wordroid/cifar-10-rbf-2-features-ensemble-lb-0-9304)|0.99534|**0.93040**|",
      "votes": 1
    }
  ],
  "comments": [],
  "raw_markdown_by_id": {
    "487186": "[Cifar-10 RBF 2 features ensemble [LB 0.9304]](https://www.kaggle.com/wordroid/cifar-10-rbf-2-features-ensemble-lb-0-9304)\n\nIn Cifar-10 we tried the ensemble method with Digit Recognizer. Please see also '[Does RBF kernel with two fixed Landmarks work well in ensemble?](https://www.kaggle.com/wordroid/digit-recognizer-rbf-2-features-ensemble-0-99657)'.\n\n(Submitting the output submit.csv of [this kernel](https://www.kaggle.com/wordroid/cifar-10-rbf-2-features-ensemble-lb-0-9304) with '[CIFAR-10 - Object Recognition in Images](https://www.kaggle.com/c/cifar-10)' gives 0.9304.)\n\n## Whole model\nThe input of network is 32x32x3, since the image data of Cifar-10 is an ordinary RGB image.\n\n|...|MODEL|INPUT|OUTPUT|\n|-------------|:-------------|-----:|-----:|\n|1| image converter | 32 x 32 x 3 | 512 |\n|2| classifier | 512 | 10 |\n\nIn this trial with Cifar-10, we try to make the configuration of the classifier different from Digit Recognizer.\n\n### classifier\n\n|...|LAYER|INPUT|OUTPUT|DESC|\n|--:|:-------------|---:|---:|:-----|\n|LAYER-1| GaussianKernel(RBF) | 512 | 2 | .|\n|LAYER-2| GaussianKernel(RBF) | 2 | 10 | 10 fixed Landmarks |\n\nDigit Recognizer used fixed values for the two landmarks of LAYER-1, but here we use a fixed value for the 10 landmarks of LAYER-2. **The landmark of LAYER-1 will be trained.**\n\nThe 10 landmarks used are shown below. We change this landmarks little by little during 300 epochs. While maintaining the positional relationship of individual landmarks, we gradually reduce the radius of the circle. When using circle-3 from the beginning it did not converge well.\n\n|LM|fixed 10 landmarks|\n|--:|:--:|\n|circle-1|![](http://yunopon.sakura.ne.jp/sblo_files/wordroid/image/ttt00107.png)|\n|circle-2|![](http://yunopon.sakura.ne.jp/sblo_files/wordroid/image/ttt00108.png)|\n|circle-3|![](http://yunopon.sakura.ne.jp/sblo_files/wordroid/image/ttt00109.png)|\n\nLet's see the output of LAYER-1 and the landmark of LAYER-2. You can see that the output of LAYER-1 is distributed around the landmark of LAYER-2.\n\n|state|image|\n|--:|:--:|\n|[10001](https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10001)|![](http://yunopon.sakura.ne.jp/sblo_files/wordroid/image/ttt00110.png)|\n\n\n\n## Result\nIndividual learner only use two variables at classifier. Since we are trying to represent feature values with two variables, the bias is high and it looks like a weak learner. Therefore, the generalization performance of each learner is not so high.\n\nThe results of ensemble of these individual results are very good.\n\n|state|train data<br>f1_score|test data<br>kaggle LB|\n|:--|--:|--:|\n|[10001](https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10001)|0.96747|0.87210|\n|[10002](https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10002)|0.96433|0.87170|\n|[10003](https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10003)|0.95208|0.86900|\n||||\n|[3 learners above](https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-ensemble01)|0.99123|**0.91760**|\n||||\n|[10004](https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10004)|0.95641|0.87220|\n|[10005](https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10005)|0.95259|0.86310|\n|[10006](https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-s10006)|0.95889|0.87910|\n|[6 learners above](https://www.kaggle.com/wordroid/cifar10-gkernel-2-features-gkgk7-da-ensemble01)|0.99444|**0.92530**|\n|[9 learners](https://www.kaggle.com/wordroid/cifar-10-rbf-2-features-ensemble-lb-0-9304)|0.99534|**0.93040**|"
  }
}