Skip to content

Instantly share code, notes, and snippets.

@shyampagadi
Last active January 11, 2019 07:52
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save shyampagadi/1215938496fdf4cb72977840dfb66ec2 to your computer and use it in GitHub Desktop.
Save shyampagadi/1215938496fdf4cb72977840dfb66ec2 to your computer and use it in GitHub Desktop.
TamilChar.ipynb
Display the source blob
Display the rendered blob
Raw
{
"nbformat": 4,
"nbformat_minor": 0,
"metadata": {
"colab": {
"name": "TamilChar.ipynb",
"version": "0.3.2",
"provenance": [],
"include_colab_link": true
},
"kernelspec": {
"name": "python3",
"display_name": "Python 3"
},
"accelerator": "GPU"
},
"cells": [
{
"cell_type": "markdown",
"metadata": {
"id": "view-in-github",
"colab_type": "text"
},
"source": [
"<a href=\"https://colab.research.google.com/gist/shyampagadi/1215938496fdf4cb72977840dfb66ec2/tamilchar.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>"
]
},
{
"metadata": {
"id": "K3tDOK3P8vUH",
"colab_type": "code",
"colab": {}
},
"cell_type": "code",
"source": [
""
],
"execution_count": 0,
"outputs": []
},
{
"metadata": {
"id": "QJFkOo02ZBQg",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 35
},
"outputId": "5e6d30da-5c62-4002-defe-c3e07316395c"
},
"cell_type": "code",
"source": [
"# ls"
],
"execution_count": 4,
"outputs": [
{
"output_type": "stream",
"text": [
"\u001b[0m\u001b[01;34msample_data\u001b[0m/\n"
],
"name": "stdout"
}
]
},
{
"metadata": {
"id": "JMBQgbtF8984",
"colab_type": "code",
"colab": {}
},
"cell_type": "code",
"source": [
"%reload_ext autoreload\n",
"%autoreload \n",
"%matplotlib inline"
],
"execution_count": 0,
"outputs": []
},
{
"metadata": {
"id": "sJ95LKYf9NSE",
"colab_type": "code",
"colab": {}
},
"cell_type": "code",
"source": [
"from fastai import *\n",
"from fastai.vision import *\n",
"import os\n",
"import matplotlib.pyplot as plt\n",
"\n",
"import matplotlib.image as mpimg"
],
"execution_count": 0,
"outputs": []
},
{
"metadata": {
"id": "Sf9ZZHDx9Szi",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 219
},
"outputId": "fba4f6c1-a0ee-4fec-bdd8-c9058655e38d"
},
"cell_type": "code",
"source": [
"!pip show fastai"
],
"execution_count": 12,
"outputs": [
{
"output_type": "stream",
"text": [
"Name: fastai\n",
"Version: 1.0.39\n",
"Summary: fastai makes deep learning with PyTorch faster, more accurate, and easier\n",
"Home-page: https://github.com/fastai/fastai\n",
"Author: Jeremy Howard\n",
"Author-email: info@fast.ai\n",
"License: Apache Software License 2.0\n",
"Location: /usr/local/lib/python3.6/dist-packages\n",
"Requires: numpy, Pillow, matplotlib, packaging, bottleneck, requests, scipy, numexpr, typing, spacy, pyyaml, dataclasses, nvidia-ml-py3, torchvision, torch, pandas, fastprogress\n",
"Required-by: \n"
],
"name": "stdout"
}
]
},
{
"metadata": {
"id": "MGZJRUbN9Woa",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 217
},
"outputId": "2724ea6b-63bf-4a1b-e110-f052eaa29eb7"
},
"cell_type": "code",
"source": [
"!wget http://www.jfn.ac.lk/wp-content/uploads/2016/04/UJTDchar.zip && unzip -qq UJTDchar.zip -d data_tamil/"
],
"execution_count": 13,
"outputs": [
{
"output_type": "stream",
"text": [
"--2019-01-11 05:35:31-- http://www.jfn.ac.lk/wp-content/uploads/2016/04/UJTDchar.zip\n",
"Resolving www.jfn.ac.lk (www.jfn.ac.lk)... 192.248.56.21\n",
"Connecting to www.jfn.ac.lk (www.jfn.ac.lk)|192.248.56.21|:80... connected.\n",
"HTTP request sent, awaiting response... 200 OK\n",
"Length: 13784829 (13M) [application/zip]\n",
"Saving to: ‘UJTDchar.zip’\n",
"\n",
"UJTDchar.zip 100%[===================>] 13.15M 1.93MB/s in 11s \n",
"\n",
"2019-01-11 05:35:43 (1.16 MB/s) - ‘UJTDchar.zip’ saved [13784829/13784829]\n",
"\n"
],
"name": "stdout"
}
]
},
{
"metadata": {
"id": "rEVP1zza9sTm",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 35
},
"outputId": "3e46a85f-dff5-44f0-e428-fb950bd8e4df"
},
"cell_type": "code",
"source": [
"pwd"
],
"execution_count": 14,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"'/content'"
]
},
"metadata": {
"tags": []
},
"execution_count": 14
}
]
},
{
"metadata": {
"id": "lLVjIKnK9yHE",
"colab_type": "code",
"colab": {}
},
"cell_type": "code",
"source": [
"path = Path(\"data_tamil/UJTDchar/\")\n"
],
"execution_count": 0,
"outputs": []
},
{
"metadata": {
"id": "61ofDFvi91YE",
"colab_type": "code",
"colab": {}
},
"cell_type": "code",
"source": [
"path.ls()\n"
],
"execution_count": 0,
"outputs": []
},
{
"metadata": {
"id": "sHJphucn96D9",
"colab_type": "code",
"colab": {}
},
"cell_type": "code",
"source": [
"bs = 64\n",
"\n",
"tfms = get_transforms(do_flip=False)\n",
"\n",
"data = (ImageItemList.from_folder(path)\n",
" .random_split_by_pct()\n",
" .label_from_folder()\n",
" .transform(tfms,size=32)\n",
" .databunch())"
],
"execution_count": 0,
"outputs": []
},
{
"metadata": {
"id": "F30ZVTpf-dBE",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 441
},
"outputId": "37629d8c-1d21-436b-b489-0022544af317"
},
"cell_type": "code",
"source": [
"data.show_batch(rows=5, figsize=(6,6))\n"
],
"execution_count": 33,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f13403559e8>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "pEpe_Jin-fr0",
"colab_type": "code",
"colab": {}
},
"cell_type": "code",
"source": [
"learn = create_cnn(data, models.resnet34, metrics=error_rate)\n"
],
"execution_count": 0,
"outputs": []
},
{
"metadata": {
"id": "unCYQK0u_Ev0",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 491
},
"outputId": "5ee807c8-0398-42b7-f208-24acb970c2eb"
},
"cell_type": "code",
"source": [
"learn.fit_one_cycle(20)\n"
],
"execution_count": 20,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": [
"Total time: 07:28 <p><table style='width:300px; margin-bottom:10px'>\n",
" <tr>\n",
" <th>epoch</th>\n",
" <th>train_loss</th>\n",
" <th>valid_loss</th>\n",
" <th>error_rate</th>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <th>5.161615</th>\n",
" <th>4.655143</th>\n",
" <th>0.952419</th>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <th>4.589064</th>\n",
" <th>3.974555</th>\n",
" <th>0.853629</th>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <th>3.912420</th>\n",
" <th>3.285117</th>\n",
" <th>0.769758</th>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <th>3.456487</th>\n",
" <th>2.710579</th>\n",
" <th>0.680242</th>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <th>3.114913</th>\n",
" <th>2.329902</th>\n",
" <th>0.616532</th>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <th>2.821953</th>\n",
" <th>2.002966</th>\n",
" <th>0.562097</th>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <th>2.518695</th>\n",
" <th>1.771698</th>\n",
" <th>0.517742</th>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <th>2.346605</th>\n",
" <th>1.611822</th>\n",
" <th>0.464919</th>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <th>2.156139</th>\n",
" <th>1.459478</th>\n",
" <th>0.445968</th>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <th>2.009109</th>\n",
" <th>1.330976</th>\n",
" <th>0.411290</th>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <th>1.915668</th>\n",
" <th>1.234606</th>\n",
" <th>0.378629</th>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <th>1.817298</th>\n",
" <th>1.160861</th>\n",
" <th>0.360484</th>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <th>1.734831</th>\n",
" <th>1.089427</th>\n",
" <th>0.347581</th>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <th>1.626272</th>\n",
" <th>1.044412</th>\n",
" <th>0.327419</th>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <th>1.567121</th>\n",
" <th>1.003165</th>\n",
" <th>0.316532</th>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <th>1.581092</th>\n",
" <th>0.981272</th>\n",
" <th>0.306452</th>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <th>1.477605</th>\n",
" <th>0.946827</th>\n",
" <th>0.300000</th>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <th>1.472635</th>\n",
" <th>0.936248</th>\n",
" <th>0.297177</th>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <th>1.461989</th>\n",
" <th>0.930199</th>\n",
" <th>0.293145</th>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <th>1.445431</th>\n",
" <th>0.938478</th>\n",
" <th>0.298790</th>\n",
" </tr>\n",
"</table>\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "SbzhtQ28AjNi",
"colab_type": "code",
"colab": {}
},
"cell_type": "code",
"source": [
"learn1 = create_cnn(data, models.resnet18, metrics=error_rate)\n"
],
"execution_count": 0,
"outputs": []
},
{
"metadata": {
"id": "QbtUY47sBOjp",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 282
},
"outputId": "0b4166b5-d6f4-4864-e104-883c88ae3424"
},
"cell_type": "code",
"source": [
"learn1.fit_one_cycle(10)\n"
],
"execution_count": 40,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": [
"Total time: 03:24 <p><table style='width:300px; margin-bottom:10px'>\n",
" <tr>\n",
" <th>epoch</th>\n",
" <th>train_loss</th>\n",
" <th>valid_loss</th>\n",
" <th>error_rate</th>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <th>5.050056</th>\n",
" <th>4.421329</th>\n",
" <th>0.915323</th>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <th>4.218866</th>\n",
" <th>3.507938</th>\n",
" <th>0.802823</th>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <th>3.623972</th>\n",
" <th>2.943366</th>\n",
" <th>0.738306</th>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <th>3.285343</th>\n",
" <th>2.554030</th>\n",
" <th>0.666936</th>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <th>2.953789</th>\n",
" <th>2.287436</th>\n",
" <th>0.621371</th>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <th>2.727565</th>\n",
" <th>2.087898</th>\n",
" <th>0.582661</th>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <th>2.581264</th>\n",
" <th>1.924848</th>\n",
" <th>0.543952</th>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <th>2.411030</th>\n",
" <th>1.845320</th>\n",
" <th>0.522984</th>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <th>2.363851</th>\n",
" <th>1.813893</th>\n",
" <th>0.514516</th>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <th>2.353762</th>\n",
" <th>1.796979</th>\n",
" <th>0.511290</th>\n",
" </tr>\n",
"</table>\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "PjSCUaeRBQ83",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 54
},
"outputId": "a58827fb-edca-4b27-bcc6-46a61ca215e9"
},
"cell_type": "code",
"source": [
"learn2 = create_cnn(data, models.resnet50, metrics=error_rate)\n"
],
"execution_count": 41,
"outputs": [
{
"output_type": "stream",
"text": [
"Downloading: \"https://download.pytorch.org/models/resnet50-19c8e357.pth\" to /root/.torch/models/resnet50-19c8e357.pth\n",
"100%|██████████| 102502400/102502400 [00:01<00:00, 86569712.02it/s]\n"
],
"name": "stderr"
}
]
},
{
"metadata": {
"id": "rv28AHcDBknB",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 282
},
"outputId": "a4de7245-a9d9-4ab8-f9a4-bb87bd0c3b22"
},
"cell_type": "code",
"source": [
"learn2.fit_one_cycle(10)\n"
],
"execution_count": 42,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": [
"Total time: 04:28 <p><table style='width:300px; margin-bottom:10px'>\n",
" <tr>\n",
" <th>epoch</th>\n",
" <th>train_loss</th>\n",
" <th>valid_loss</th>\n",
" <th>error_rate</th>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <th>4.890615</th>\n",
" <th>4.222559</th>\n",
" <th>0.900806</th>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <th>4.067413</th>\n",
" <th>3.319573</th>\n",
" <th>0.795161</th>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <th>3.453247</th>\n",
" <th>2.661719</th>\n",
" <th>0.690726</th>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <th>3.002195</th>\n",
" <th>2.249780</th>\n",
" <th>0.627419</th>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <th>2.674265</th>\n",
" <th>1.950333</th>\n",
" <th>0.564113</th>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <th>2.421961</th>\n",
" <th>1.713344</th>\n",
" <th>0.518952</th>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <th>2.219243</th>\n",
" <th>1.581707</th>\n",
" <th>0.477016</th>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <th>2.057996</th>\n",
" <th>1.484621</th>\n",
" <th>0.458065</th>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <th>2.007747</th>\n",
" <th>1.434396</th>\n",
" <th>0.428226</th>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <th>1.942974</th>\n",
" <th>1.441660</th>\n",
" <th>0.442742</th>\n",
" </tr>\n",
"</table>\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "EPaOD6kaBrhf",
"colab_type": "code",
"colab": {}
},
"cell_type": "code",
"source": [
"interp = ClassificationInterpretation.from_learner(learn)\n",
"# interp1 = ClassificationInterpretation.from_learner(learn1)\n",
"# interp2 = ClassificationInterpretation.from_learner(learn2)\n",
"\n"
],
"execution_count": 0,
"outputs": []
},
{
"metadata": {
"id": "sgmdteD3GeZZ",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 126
},
"outputId": "b2901909-9a24-4c32-a5e7-9b20d44653a7"
},
"cell_type": "code",
"source": [
"interp.most_confused(min_val=7)\n"
],
"execution_count": 22,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"[('ன', 'ண', 13),\n",
" ('ணூ', 'னு', 12),\n",
" ('ணி', 'ணீ', 10),\n",
" ('ணூ', 'ணு', 9),\n",
" ('னூ', 'னு', 9),\n",
" ('ப', 'ய', 9)]"
]
},
"metadata": {
"tags": []
},
"execution_count": 22
}
]
},
{
"metadata": {
"id": "sz9D1l3TJYfT",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 181
},
"outputId": "8bd19e06-734d-4dc4-f006-e634e9a84217"
},
"cell_type": "code",
"source": [
"interp = ClassificationInterpretation.from_learner(learn)\n",
"\n",
"interp.most_confused(min_val=6)\n"
],
"execution_count": 54,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"[('ணி', 'ணீ', 8),\n",
" ('ணீ', 'ணி', 8),\n",
" ('ன', 'ண', 8),\n",
" ('னூ', 'னு', 8),\n",
" ('சு', 'க', 7),\n",
" ('ணூ', 'ணு', 7),\n",
" ('னூ', 'ணூ', 7),\n",
" ('லூ', 'லு', 7),\n",
" ('ளி', 'ளீ', 7)]"
]
},
"metadata": {
"tags": []
},
"execution_count": 54
}
]
},
{
"metadata": {
"id": "-TNU9A3wGhp7",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 126
},
"outputId": "5ff5b5fe-8360-42da-9108-bfadc01109eb"
},
"cell_type": "code",
"source": [
"interp1.most_confused(min_val=7)\n"
],
"execution_count": 48,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"[('ணி', 'ணீ', 11),\n",
" ('டூ', 'டு', 10),\n",
" ('ணூ', 'ணு', 10),\n",
" ('ன', 'ண', 10),\n",
" ('ஞி', 'ஞீ', 8),\n",
" ('னூ', 'ணூ', 8)]"
]
},
"metadata": {
"tags": []
},
"execution_count": 48
}
]
},
{
"metadata": {
"id": "Zbu13YoHJXiO",
"colab_type": "code",
"colab": {}
},
"cell_type": "code",
"source": [
""
],
"execution_count": 0,
"outputs": []
},
{
"metadata": {
"id": "XkcEzkkFG6yK",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 199
},
"outputId": "1b6156c2-13da-42e7-9d8e-7bc4e2b104e1"
},
"cell_type": "code",
"source": [
"interp2.most_confused(min_val=7)\n"
],
"execution_count": 49,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"[('ணூ', 'ணு', 12),\n",
" ('ஓ', 'ஒ', 11),\n",
" ('லூ', 'லு', 11),\n",
" ('சு', 'க', 9),\n",
" ('ணி', 'ணீ', 9),\n",
" ('ன', 'ண', 9),\n",
" ('று', 'றூ', 9),\n",
" ('ச', 'க', 8),\n",
" ('ல்', 'வ்', 8),\n",
" ('வீ', 'லீ', 8)]"
]
},
"metadata": {
"tags": []
},
"execution_count": 49
}
]
},
{
"metadata": {
"id": "cJ1lxmQLHCeQ",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 108
},
"outputId": "719edcb6-3529-424c-f31a-96cb35903a9b"
},
"cell_type": "code",
"source": [
"learn.lr_find()\n"
],
"execution_count": 50,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": [
"\n",
" <div>\n",
" <style>\n",
" /* Turns off some styling */\n",
" progress {\n",
" /* gets rid of default border in Firefox and Opera. */\n",
" border: none;\n",
" /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
" background-size: auto;\n",
" }\n",
" .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
" background: #F44336;\n",
" }\n",
" </style>\n",
" <progress value='0' class='' max='1', style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
" 0.00% [0/1 00:00<00:00]\n",
" </div>\n",
" \n",
"<table style='width:300px; margin-bottom:10px'>\n",
" <tr>\n",
" <th>epoch</th>\n",
" <th>train_loss</th>\n",
" <th>valid_loss</th>\n",
" <th>error_rate</th>\n",
" </tr>\n",
"</table>\n",
"\n",
"\n",
" <div>\n",
" <style>\n",
" /* Turns off some styling */\n",
" progress {\n",
" /* gets rid of default border in Firefox and Opera. */\n",
" border: none;\n",
" /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
" background-size: auto;\n",
" }\n",
" .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
" background: #F44336;\n",
" }\n",
" </style>\n",
" <progress value='0' class='progress-bar-interrupted' max='155', style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
" Interrupted\n",
" </div>\n",
" "
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {
"tags": []
}
},
{
"output_type": "stream",
"text": [
"LR Finder is complete, type {learner_name}.recorder.plot() to see the graph.\n"
],
"name": "stdout"
}
]
},
{
"metadata": {
"id": "mKw1_ElYHpQR",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 279
},
"outputId": "5b43163f-b007-4784-dd4e-9ee204b183fe"
},
"cell_type": "code",
"source": [
"learn.recorder.plot()\n"
],
"execution_count": 51,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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\n/wF1LL8pIOj8CgAAAABJRU5ErkJggg==\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f13432a6a58>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "fByp0nNMH8ht",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 282
},
"outputId": "b61e7d9c-a733-43d9-9dff-9a5b396f81a7"
},
"cell_type": "code",
"source": [
"learn.fit_one_cycle(10, max_lr=slice(1e-6,1e-3))\n"
],
"execution_count": 23,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": [
"Total time: 03:40 <p><table style='width:300px; margin-bottom:10px'>\n",
" <tr>\n",
" <th>epoch</th>\n",
" <th>train_loss</th>\n",
" <th>valid_loss</th>\n",
" <th>error_rate</th>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <th>1.453218</th>\n",
" <th>0.931448</th>\n",
" <th>0.290323</th>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <th>1.464600</th>\n",
" <th>0.924112</th>\n",
" <th>0.295968</th>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <th>1.471036</th>\n",
" <th>0.921937</th>\n",
" <th>0.294758</th>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <th>1.451248</th>\n",
" <th>0.907334</th>\n",
" <th>0.288710</th>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <th>1.440550</th>\n",
" <th>0.909502</th>\n",
" <th>0.292742</th>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <th>1.478362</th>\n",
" <th>0.900380</th>\n",
" <th>0.292339</th>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <th>1.429569</th>\n",
" <th>0.900046</th>\n",
" <th>0.287097</th>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <th>1.389312</th>\n",
" <th>0.876026</th>\n",
" <th>0.281452</th>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <th>1.368363</th>\n",
" <th>0.888276</th>\n",
" <th>0.284274</th>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <th>1.385348</th>\n",
" <th>0.883871</th>\n",
" <th>0.284677</th>\n",
" </tr>\n",
"</table>\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "Mf8sbtYlIJz6",
"colab_type": "code",
"colab": {}
},
"cell_type": "code",
"source": [
"learn.unfreeze()\n"
],
"execution_count": 0,
"outputs": []
},
{
"metadata": {
"id": "PbtdvwkOJ4RK",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 370
},
"outputId": "5f7d81b5-6556-49a2-dd48-464355f67880"
},
"cell_type": "code",
"source": [
"learn.lr_find()\n",
"learn.recorder.plot()\n"
],
"execution_count": 56,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": [
"\n",
" <div>\n",
" <style>\n",
" /* Turns off some styling */\n",
" progress {\n",
" /* gets rid of default border in Firefox and Opera. */\n",
" border: none;\n",
" /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
" background-size: auto;\n",
" }\n",
" .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
" background: #F44336;\n",
" }\n",
" </style>\n",
" <progress value='0' class='' max='1', style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
" 0.00% [0/1 00:00<00:00]\n",
" </div>\n",
" \n",
"<table style='width:300px; margin-bottom:10px'>\n",
" <tr>\n",
" <th>epoch</th>\n",
" <th>train_loss</th>\n",
" <th>valid_loss</th>\n",
" <th>error_rate</th>\n",
" </tr>\n",
"</table>\n",
"\n",
"\n",
" <div>\n",
" <style>\n",
" /* Turns off some styling */\n",
" progress {\n",
" /* gets rid of default border in Firefox and Opera. */\n",
" border: none;\n",
" /* Needs to be in here for Safari polyfill so background images work as expected. */\n",
" background-size: auto;\n",
" }\n",
" .progress-bar-interrupted, .progress-bar-interrupted::-webkit-progress-bar {\n",
" background: #F44336;\n",
" }\n",
" </style>\n",
" <progress value='0' class='progress-bar-interrupted' max='155', style='width:300px; height:20px; vertical-align: middle;'></progress>\n",
" Interrupted\n",
" </div>\n",
" "
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {
"tags": []
}
},
{
"output_type": "stream",
"text": [
"LR Finder is complete, type {learner_name}.recorder.plot() to see the graph.\n"
],
"name": "stdout"
},
{
"output_type": "display_data",
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f134026c4e0>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "pTZm8kpRJ8w-",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 491
},
"outputId": "b403c2dc-5ef0-4c5c-8342-5adaa929bc72"
},
"cell_type": "code",
"source": [
"learn.fit_one_cycle(20, max_lr=slice(1e-6,1e-4))\n"
],
"execution_count": 25,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": [
"Total time: 07:58 <p><table style='width:300px; margin-bottom:10px'>\n",
" <tr>\n",
" <th>epoch</th>\n",
" <th>train_loss</th>\n",
" <th>valid_loss</th>\n",
" <th>error_rate</th>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <th>1.359349</th>\n",
" <th>0.872376</th>\n",
" <th>0.280645</th>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <th>1.331598</th>\n",
" <th>0.864304</th>\n",
" <th>0.272581</th>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <th>1.334399</th>\n",
" <th>0.843112</th>\n",
" <th>0.274194</th>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <th>1.289960</th>\n",
" <th>0.808161</th>\n",
" <th>0.254032</th>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <th>1.259184</th>\n",
" <th>0.760671</th>\n",
" <th>0.242742</th>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <th>1.210884</th>\n",
" <th>0.726754</th>\n",
" <th>0.235887</th>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <th>1.149012</th>\n",
" <th>0.705938</th>\n",
" <th>0.229435</th>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <th>1.141096</th>\n",
" <th>0.677554</th>\n",
" <th>0.218145</th>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <th>1.089823</th>\n",
" <th>0.652167</th>\n",
" <th>0.210887</th>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <th>1.051004</th>\n",
" <th>0.630465</th>\n",
" <th>0.208065</th>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <th>1.036839</th>\n",
" <th>0.625999</th>\n",
" <th>0.199194</th>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <th>1.019265</th>\n",
" <th>0.608203</th>\n",
" <th>0.202016</th>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <th>0.986249</th>\n",
" <th>0.601325</th>\n",
" <th>0.199597</th>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <th>0.962092</th>\n",
" <th>0.582049</th>\n",
" <th>0.195565</th>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <th>0.954287</th>\n",
" <th>0.579694</th>\n",
" <th>0.195161</th>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <th>0.927917</th>\n",
" <th>0.576833</th>\n",
" <th>0.197581</th>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <th>0.933147</th>\n",
" <th>0.567133</th>\n",
" <th>0.190726</th>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <th>0.963091</th>\n",
" <th>0.579889</th>\n",
" <th>0.191532</th>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <th>0.963954</th>\n",
" <th>0.569898</th>\n",
" <th>0.191935</th>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <th>0.940461</th>\n",
" <th>0.563028</th>\n",
" <th>0.185484</th>\n",
" </tr>\n",
"</table>\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "fgQoDIzlKUX7",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 282
},
"outputId": "f8df93ca-e7cd-4a50-a5ca-b0e8463fddbd"
},
"cell_type": "code",
"source": [
"learn.fit_one_cycle(10, max_lr=slice(1e-6,1e-4))\n"
],
"execution_count": 26,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": [
"Total time: 03:56 <p><table style='width:300px; margin-bottom:10px'>\n",
" <tr>\n",
" <th>epoch</th>\n",
" <th>train_loss</th>\n",
" <th>valid_loss</th>\n",
" <th>error_rate</th>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <th>0.934947</th>\n",
" <th>0.560729</th>\n",
" <th>0.186694</th>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <th>0.945061</th>\n",
" <th>0.570229</th>\n",
" <th>0.187097</th>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <th>0.886350</th>\n",
" <th>0.549593</th>\n",
" <th>0.186694</th>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <th>0.873843</th>\n",
" <th>0.534081</th>\n",
" <th>0.181048</th>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <th>0.890537</th>\n",
" <th>0.514606</th>\n",
" <th>0.179032</th>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <th>0.868268</th>\n",
" <th>0.511551</th>\n",
" <th>0.176210</th>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <th>0.823566</th>\n",
" <th>0.508024</th>\n",
" <th>0.177016</th>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <th>0.798203</th>\n",
" <th>0.498044</th>\n",
" <th>0.173387</th>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <th>0.820269</th>\n",
" <th>0.512798</th>\n",
" <th>0.173387</th>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <th>0.829651</th>\n",
" <th>0.509253</th>\n",
" <th>0.175806</th>\n",
" </tr>\n",
"</table>\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "nCInp70_LvNs",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 282
},
"outputId": "bc313ef1-3f6f-4731-c6f5-9250a40284d4"
},
"cell_type": "code",
"source": [
"learn.fit_one_cycle(10, max_lr=slice(1e-6,1e-4))\n"
],
"execution_count": 27,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": [
"Total time: 04:07 <p><table style='width:300px; margin-bottom:10px'>\n",
" <tr>\n",
" <th>epoch</th>\n",
" <th>train_loss</th>\n",
" <th>valid_loss</th>\n",
" <th>error_rate</th>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <th>0.832711</th>\n",
" <th>0.500628</th>\n",
" <th>0.167742</th>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <th>0.818182</th>\n",
" <th>0.493620</th>\n",
" <th>0.171371</th>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <th>0.821090</th>\n",
" <th>0.484388</th>\n",
" <th>0.166532</th>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <th>0.795152</th>\n",
" <th>0.479186</th>\n",
" <th>0.163710</th>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <th>0.770198</th>\n",
" <th>0.489078</th>\n",
" <th>0.170161</th>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <th>0.778283</th>\n",
" <th>0.462451</th>\n",
" <th>0.166532</th>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <th>0.764830</th>\n",
" <th>0.449926</th>\n",
" <th>0.159677</th>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <th>0.726306</th>\n",
" <th>0.446824</th>\n",
" <th>0.158065</th>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <th>0.737291</th>\n",
" <th>0.454182</th>\n",
" <th>0.159677</th>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <th>0.758379</th>\n",
" <th>0.444904</th>\n",
" <th>0.154435</th>\n",
" </tr>\n",
"</table>\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "3FgD20A3M6hu",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 282
},
"outputId": "98a06d3e-3c13-4b1b-a9b1-3ddcfc98b226"
},
"cell_type": "code",
"source": [
"learn.fit_one_cycle(10, max_lr=slice(1e-6,1e-4))\n"
],
"execution_count": 28,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": [
"Total time: 04:01 <p><table style='width:300px; margin-bottom:10px'>\n",
" <tr>\n",
" <th>epoch</th>\n",
" <th>train_loss</th>\n",
" <th>valid_loss</th>\n",
" <th>error_rate</th>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <th>0.724900</th>\n",
" <th>0.445703</th>\n",
" <th>0.161694</th>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <th>0.743114</th>\n",
" <th>0.442317</th>\n",
" <th>0.157661</th>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <th>0.725578</th>\n",
" <th>0.440042</th>\n",
" <th>0.150806</th>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <th>0.751806</th>\n",
" <th>0.429576</th>\n",
" <th>0.155242</th>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <th>0.706180</th>\n",
" <th>0.440388</th>\n",
" <th>0.156048</th>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <th>0.683823</th>\n",
" <th>0.417646</th>\n",
" <th>0.151613</th>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <th>0.676574</th>\n",
" <th>0.407489</th>\n",
" <th>0.149194</th>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <th>0.694142</th>\n",
" <th>0.417346</th>\n",
" <th>0.149597</th>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <th>0.677310</th>\n",
" <th>0.422604</th>\n",
" <th>0.144758</th>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <th>0.685183</th>\n",
" <th>0.412695</th>\n",
" <th>0.146371</th>\n",
" </tr>\n",
"</table>\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "HCHIO5j6Phvw",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 282
},
"outputId": "340cb6e0-f612-473e-8a88-e2d84d0d5e37"
},
"cell_type": "code",
"source": [
"learn.fit_one_cycle(10, max_lr=slice(1e-6,1e-4))\n"
],
"execution_count": 29,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": [
"Total time: 03:59 <p><table style='width:300px; margin-bottom:10px'>\n",
" <tr>\n",
" <th>epoch</th>\n",
" <th>train_loss</th>\n",
" <th>valid_loss</th>\n",
" <th>error_rate</th>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <th>0.677901</th>\n",
" <th>0.405892</th>\n",
" <th>0.143145</th>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <th>0.674445</th>\n",
" <th>0.409667</th>\n",
" <th>0.149194</th>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <th>0.670505</th>\n",
" <th>0.400655</th>\n",
" <th>0.136694</th>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <th>0.657202</th>\n",
" <th>0.404602</th>\n",
" <th>0.145968</th>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <th>0.642167</th>\n",
" <th>0.392161</th>\n",
" <th>0.140726</th>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <th>0.628095</th>\n",
" <th>0.387555</th>\n",
" <th>0.134274</th>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <th>0.635053</th>\n",
" <th>0.381124</th>\n",
" <th>0.135887</th>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <th>0.625795</th>\n",
" <th>0.380629</th>\n",
" <th>0.142339</th>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <th>0.615483</th>\n",
" <th>0.382094</th>\n",
" <th>0.143145</th>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <th>0.623411</th>\n",
" <th>0.382974</th>\n",
" <th>0.142742</th>\n",
" </tr>\n",
"</table>\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "Tq5Cqa1hkASB",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 282
},
"outputId": "8b8b6c48-3385-44d1-872a-3df5ffbeef83"
},
"cell_type": "code",
"source": [
"learn.fit_one_cycle(10, max_lr=slice(1e-6,1e-4))\n"
],
"execution_count": 30,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": [
"Total time: 04:02 <p><table style='width:300px; margin-bottom:10px'>\n",
" <tr>\n",
" <th>epoch</th>\n",
" <th>train_loss</th>\n",
" <th>valid_loss</th>\n",
" <th>error_rate</th>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <th>0.614695</th>\n",
" <th>0.384235</th>\n",
" <th>0.138306</th>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <th>0.626228</th>\n",
" <th>0.400169</th>\n",
" <th>0.141532</th>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <th>0.608501</th>\n",
" <th>0.377684</th>\n",
" <th>0.132258</th>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <th>0.617692</th>\n",
" <th>0.382222</th>\n",
" <th>0.137097</th>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <th>0.610812</th>\n",
" <th>0.369686</th>\n",
" <th>0.130242</th>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <th>0.586773</th>\n",
" <th>0.359422</th>\n",
" <th>0.128629</th>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <th>0.587970</th>\n",
" <th>0.352535</th>\n",
" <th>0.124194</th>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <th>0.580206</th>\n",
" <th>0.362878</th>\n",
" <th>0.129839</th>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <th>0.567712</th>\n",
" <th>0.361866</th>\n",
" <th>0.127823</th>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <th>0.590830</th>\n",
" <th>0.357432</th>\n",
" <th>0.125000</th>\n",
" </tr>\n",
"</table>\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "rCJvGAAvk9YF",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 282
},
"outputId": "6a1cf21c-bff8-4b45-c21c-bf0c88ae1f20"
},
"cell_type": "code",
"source": [
"learn.fit_one_cycle(10, max_lr=slice(1e-6,1e-4))\n"
],
"execution_count": 31,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": [
"Total time: 04:23 <p><table style='width:300px; margin-bottom:10px'>\n",
" <tr>\n",
" <th>epoch</th>\n",
" <th>train_loss</th>\n",
" <th>valid_loss</th>\n",
" <th>error_rate</th>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <th>0.564858</th>\n",
" <th>0.352834</th>\n",
" <th>0.125403</th>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <th>0.578128</th>\n",
" <th>0.353374</th>\n",
" <th>0.127823</th>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <th>0.580453</th>\n",
" <th>0.362502</th>\n",
" <th>0.131452</th>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <th>0.582047</th>\n",
" <th>0.350588</th>\n",
" <th>0.128226</th>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <th>0.576151</th>\n",
" <th>0.352339</th>\n",
" <th>0.126210</th>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <th>0.553395</th>\n",
" <th>0.335535</th>\n",
" <th>0.121371</th>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <th>0.539481</th>\n",
" <th>0.338247</th>\n",
" <th>0.123387</th>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <th>0.537185</th>\n",
" <th>0.335409</th>\n",
" <th>0.121371</th>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <th>0.558858</th>\n",
" <th>0.337784</th>\n",
" <th>0.123387</th>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <th>0.544044</th>\n",
" <th>0.336509</th>\n",
" <th>0.121774</th>\n",
" </tr>\n",
"</table>\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "sWmwzusZl7Ul",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 282
},
"outputId": "54392836-a74b-4cca-905f-9564e72ddb7e"
},
"cell_type": "code",
"source": [
"learn.fit_one_cycle(10, max_lr=slice(1e-6,1e-4))\n"
],
"execution_count": 32,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": [
"Total time: 04:32 <p><table style='width:300px; margin-bottom:10px'>\n",
" <tr>\n",
" <th>epoch</th>\n",
" <th>train_loss</th>\n",
" <th>valid_loss</th>\n",
" <th>error_rate</th>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <th>0.544624</th>\n",
" <th>0.332303</th>\n",
" <th>0.122581</th>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <th>0.551355</th>\n",
" <th>0.330528</th>\n",
" <th>0.119758</th>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <th>0.545784</th>\n",
" <th>0.340690</th>\n",
" <th>0.123790</th>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <th>0.548746</th>\n",
" <th>0.353809</th>\n",
" <th>0.132661</th>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <th>0.546866</th>\n",
" <th>0.327028</th>\n",
" <th>0.122177</th>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <th>0.533087</th>\n",
" <th>0.334419</th>\n",
" <th>0.124194</th>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <th>0.527066</th>\n",
" <th>0.333981</th>\n",
" <th>0.124597</th>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <th>0.508359</th>\n",
" <th>0.322388</th>\n",
" <th>0.121371</th>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <th>0.518765</th>\n",
" <th>0.322574</th>\n",
" <th>0.121774</th>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <th>0.518262</th>\n",
" <th>0.321248</th>\n",
" <th>0.117742</th>\n",
" </tr>\n",
"</table>\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "ziyniU0GnAlY",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 282
},
"outputId": "4e24b3e9-4d26-4381-c9ee-462f318bf86a"
},
"cell_type": "code",
"source": [
"learn.fit_one_cycle(10, max_lr=slice(1e-6,1e-4))\n"
],
"execution_count": 33,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": [
"Total time: 04:32 <p><table style='width:300px; margin-bottom:10px'>\n",
" <tr>\n",
" <th>epoch</th>\n",
" <th>train_loss</th>\n",
" <th>valid_loss</th>\n",
" <th>error_rate</th>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <th>0.511512</th>\n",
" <th>0.322867</th>\n",
" <th>0.121774</th>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <th>0.515479</th>\n",
" <th>0.319719</th>\n",
" <th>0.122177</th>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <th>0.511797</th>\n",
" <th>0.325853</th>\n",
" <th>0.123387</th>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <th>0.506297</th>\n",
" <th>0.323242</th>\n",
" <th>0.116129</th>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <th>0.528809</th>\n",
" <th>0.322545</th>\n",
" <th>0.115323</th>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <th>0.495206</th>\n",
" <th>0.322759</th>\n",
" <th>0.115726</th>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <th>0.491529</th>\n",
" <th>0.319389</th>\n",
" <th>0.123387</th>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <th>0.494980</th>\n",
" <th>0.328322</th>\n",
" <th>0.123790</th>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <th>0.487183</th>\n",
" <th>0.320324</th>\n",
" <th>0.120565</th>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <th>0.475456</th>\n",
" <th>0.310815</th>\n",
" <th>0.116532</th>\n",
" </tr>\n",
"</table>\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "w1O3eCN7oFSB",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 282
},
"outputId": "2e0fb2c2-41a1-4d35-8cb8-3c4047c1261a"
},
"cell_type": "code",
"source": [
"learn.fit_one_cycle(10, max_lr=slice(1e-6,1e-4))\n"
],
"execution_count": 34,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": [
"Total time: 04:31 <p><table style='width:300px; margin-bottom:10px'>\n",
" <tr>\n",
" <th>epoch</th>\n",
" <th>train_loss</th>\n",
" <th>valid_loss</th>\n",
" <th>error_rate</th>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <th>0.484868</th>\n",
" <th>0.326900</th>\n",
" <th>0.121774</th>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <th>0.474733</th>\n",
" <th>0.317945</th>\n",
" <th>0.120565</th>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <th>0.489337</th>\n",
" <th>0.316081</th>\n",
" <th>0.118548</th>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <th>0.507071</th>\n",
" <th>0.308575</th>\n",
" <th>0.118952</th>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <th>0.477215</th>\n",
" <th>0.313354</th>\n",
" <th>0.118548</th>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <th>0.500569</th>\n",
" <th>0.310097</th>\n",
" <th>0.112500</th>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <th>0.471501</th>\n",
" <th>0.299690</th>\n",
" <th>0.112903</th>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <th>0.461486</th>\n",
" <th>0.304802</th>\n",
" <th>0.119758</th>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <th>0.450170</th>\n",
" <th>0.305007</th>\n",
" <th>0.117339</th>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <th>0.447379</th>\n",
" <th>0.300014</th>\n",
" <th>0.112903</th>\n",
" </tr>\n",
"</table>\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "AiFwxFBvpLVS",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 282
},
"outputId": "d75c16fe-636b-4be3-f4a9-3a4db0bff4f9"
},
"cell_type": "code",
"source": [
"learn.fit_one_cycle(10, max_lr=slice(1e-6,1e-4))\n"
],
"execution_count": 35,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": [
"Total time: 04:31 <p><table style='width:300px; margin-bottom:10px'>\n",
" <tr>\n",
" <th>epoch</th>\n",
" <th>train_loss</th>\n",
" <th>valid_loss</th>\n",
" <th>error_rate</th>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <th>0.447232</th>\n",
" <th>0.296899</th>\n",
" <th>0.110081</th>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <th>0.456767</th>\n",
" <th>0.307013</th>\n",
" <th>0.117339</th>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <th>0.462643</th>\n",
" <th>0.298034</th>\n",
" <th>0.115726</th>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <th>0.456478</th>\n",
" <th>0.295791</th>\n",
" <th>0.113710</th>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <th>0.476035</th>\n",
" <th>0.294816</th>\n",
" <th>0.114516</th>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <th>0.445997</th>\n",
" <th>0.305940</th>\n",
" <th>0.114113</th>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <th>0.440201</th>\n",
" <th>0.298044</th>\n",
" <th>0.116532</th>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <th>0.433854</th>\n",
" <th>0.296150</th>\n",
" <th>0.112500</th>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <th>0.439275</th>\n",
" <th>0.290504</th>\n",
" <th>0.112500</th>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <th>0.432122</th>\n",
" <th>0.296607</th>\n",
" <th>0.117742</th>\n",
" </tr>\n",
"</table>\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "dljTNBG3qPlK",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 282
},
"outputId": "f252774c-477b-4497-9f34-aae1e05c8b5f"
},
"cell_type": "code",
"source": [
"learn.fit_one_cycle(10, max_lr=slice(1e-6,1e-4))\n"
],
"execution_count": 36,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": [
"Total time: 04:30 <p><table style='width:300px; margin-bottom:10px'>\n",
" <tr>\n",
" <th>epoch</th>\n",
" <th>train_loss</th>\n",
" <th>valid_loss</th>\n",
" <th>error_rate</th>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <th>0.448016</th>\n",
" <th>0.305691</th>\n",
" <th>0.115323</th>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <th>0.435944</th>\n",
" <th>0.302144</th>\n",
" <th>0.116129</th>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <th>0.441144</th>\n",
" <th>0.296270</th>\n",
" <th>0.119355</th>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <th>0.451244</th>\n",
" <th>0.300726</th>\n",
" <th>0.118145</th>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <th>0.460523</th>\n",
" <th>0.299343</th>\n",
" <th>0.121774</th>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <th>0.435072</th>\n",
" <th>0.307556</th>\n",
" <th>0.123387</th>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <th>0.439189</th>\n",
" <th>0.295640</th>\n",
" <th>0.115323</th>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <th>0.421499</th>\n",
" <th>0.291870</th>\n",
" <th>0.112500</th>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <th>0.419138</th>\n",
" <th>0.295316</th>\n",
" <th>0.114113</th>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <th>0.409973</th>\n",
" <th>0.298082</th>\n",
" <th>0.115726</th>\n",
" </tr>\n",
"</table>\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "lofO1vturUXn",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 282
},
"outputId": "2690ddeb-58ee-4192-9e08-7b3841367401"
},
"cell_type": "code",
"source": [
"learn.fit_one_cycle(10, max_lr=slice(1e-6,1e-4))\n"
],
"execution_count": 37,
"outputs": [
{
"output_type": "display_data",
"data": {
"text/html": [
"Total time: 04:29 <p><table style='width:300px; margin-bottom:10px'>\n",
" <tr>\n",
" <th>epoch</th>\n",
" <th>train_loss</th>\n",
" <th>valid_loss</th>\n",
" <th>error_rate</th>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <th>0.430609</th>\n",
" <th>0.300358</th>\n",
" <th>0.117339</th>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <th>0.421707</th>\n",
" <th>0.299224</th>\n",
" <th>0.116532</th>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <th>0.424202</th>\n",
" <th>0.290908</th>\n",
" <th>0.113306</th>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <th>0.418592</th>\n",
" <th>0.301273</th>\n",
" <th>0.118548</th>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <th>0.427190</th>\n",
" <th>0.295504</th>\n",
" <th>0.118145</th>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <th>0.412434</th>\n",
" <th>0.303648</th>\n",
" <th>0.118952</th>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <th>0.411372</th>\n",
" <th>0.290878</th>\n",
" <th>0.122177</th>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <th>0.403699</th>\n",
" <th>0.285810</th>\n",
" <th>0.119355</th>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <th>0.400160</th>\n",
" <th>0.289247</th>\n",
" <th>0.114113</th>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <th>0.398836</th>\n",
" <th>0.287260</th>\n",
" <th>0.114516</th>\n",
" </tr>\n",
"</table>\n"
],
"text/plain": [
"<IPython.core.display.HTML object>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "qdo0c5ztwmJj",
"colab_type": "code",
"colab": {}
},
"cell_type": "code",
"source": [
""
],
"execution_count": 0,
"outputs": []
},
{
"metadata": {
"id": "JoMmpAHEw8Mr",
"colab_type": "code",
"colab": {}
},
"cell_type": "code",
"source": [
""
],
"execution_count": 0,
"outputs": []
},
{
"metadata": {
"id": "NpeTWp8vyJhU",
"colab_type": "code",
"colab": {}
},
"cell_type": "code",
"source": [
""
],
"execution_count": 0,
"outputs": []
},
{
"metadata": {
"id": "1AC2fgfFtcBv",
"colab_type": "code",
"colab": {}
},
"cell_type": "code",
"source": [
"filename = 'data_tamil/UJTDchar/test_data/Ta(1).jpg'\n"
],
"execution_count": 0,
"outputs": []
},
{
"metadata": {
"id": "i2Isfyzxufns",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 35
},
"outputId": "da6cb709-4f11-4cb4-de91-fad4527050de"
},
"cell_type": "code",
"source": [
"img = open_image(filename)\n",
"losses = learn.predict(img)\n",
"prediction = losses[0];\n",
"prediction"
],
"execution_count": 49,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"Category ஊ"
]
},
"metadata": {
"tags": []
},
"execution_count": 49
}
]
},
{
"metadata": {
"id": "AREqQb80ukkr",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 260
},
"outputId": "f9a338a4-5101-4fea-dbfa-29fab1093f9d"
},
"cell_type": "code",
"source": [
"img=mpimg.imread(filename)\n",
"imgplot = plt.imshow(img)\n",
"plt.show()"
],
"execution_count": 50,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAXcAAADzCAYAAAB9llaEAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMS4yLCBo\ndHRwOi8vbWF0cGxvdGxpYi5vcmcvNQv5yAAAHDFJREFUeJzt3X+UXGWd5/F3VfWPhCYJRBgiOawZ\nRua7eHB3VnSGjGCioDKIIhIWXJaRyB4dBCbnsOws+AMDzIgMB9kBHB0VQZhFAoOSOLIIgwq4DJrh\nOCwqfnUdUZaABJGQn91dXbV/VGVSqXpu9/NUVac7D5/XORy6nvvtp557b/W3bu597veW6vU6IiKS\nl/JMD0BERPpPyV1EJENK7iIiGVJyFxHJkJK7iEiGlNxFRDI0MNMD2GkMOuZkDgDVQOzgRHy/pYQx\njFbSpoWOsTkpvt0+jLCNrR3t+zI/ZRDRaoPxsdVSLT4YKDHe0TbAINVA+1BtOLrfWugDUBSb8mlO\nOKwpMVrQxSC1wPpVAm1FJib2jY5N+XSWEoIrRdui1PmmNbYkjAJq5fjPUcKfNcPEf4aCu2NgEKqB\nBdWEjDEwFB8LUIkPrSd9PsNpblYfuc/qwfVBJWVv74XKme/BUubrl3RktLcpZb7v6OHI3cyuAY6i\n8d2+yt3Xtyw7DvgEjS/ju9398l4HKiIi8br6+jKzZcBh7r4UOBu4ti3kWuAU4I3A28zsNT2NUkRE\nknT7b5NjgbsA3P0JYH8zmw9gZocCL7j7U+5eA+5uxouIyB7S7WmZRcCjLa83Ntteav5/Y8uy54Df\niRlI6JsmeMlimk5VDyeeZBxOufBZYF6vfSRc00nZbJXk7/3wBa6hUHtC1+WE9Zu+s6jFF+8qwWXx\nF/sqs/2yS7n9ZfwF4MCvT2raZncUTSQYDOynhEkH06kflzv6tT0nG0vUOEOTIoYITwbJZbbMPOaz\nmZc62nOZLTPEMGOBmSa5zJapMMxEYFk2s2XKQNvHIJvZMoPDMB7Yr3vnbJmgbg92NtA4Qt/pYOCZ\ngmWLm20iIrKHdJvc7wVWAJjZ64AN7r4ZwN2fBOab2RIzGwBObMaLiMge0tVpGXd/2MweNbOHafzD\n7VwzOwvY5O5fBc4BvtwMX+PuP+nLaEVEJEpp1jysY2KicyCVCkwEzsRNJJwXK8f/4yTh9G4jPuGr\ncSBwJ+oAI1SD7QlnH6sJ5x4TzlOOJv6brhaInwtsD8SmdJ1yzSSl3/pE/MWKwcq2giX7AS92tE4k\nXK4ol/eLjq2n9BsfCtWCT/7QAIy1LRtMvC5VStmD8X9Q9fZxTWJ4INBv4HpCo+PobqknXvWsJuyU\niVr8zp5TLu99d6iKiEh3lNxFRDKk5C4ikiEldxGRDCm5i4hkSMldRCRDSu4iIhlSchcRyZCSu4hI\nhpTcRUQyNGsekE3odttKJdxeji+pmrKKA6W0Ep6VhNvBx0P35w9ALXRP8kBCWdXyjvjYiYXRocOj\naR+N6txwe6jK8FhCoYeUwsPD9fgxD1YS7h2fKPi8VcLLKpX4ks31hPLApXLCvfG1hBIWQ5Nst6Hd\n37M+jQXPawmrNzzZmNuEui0RLqs7mrKJE8sPpJTuLyeUSi46RteRu4hIhpTcRUQypOQuIpIhJXcR\nkQwpuYuIZEjJXUQkQ0ruIiIZUnIXEclQ1zcxmdlfAsc0+7jC3b/SsuxJ4Cn414eBnuHuT3c/TBER\nSdFVcjezNwNHuPtSM3sF8H3gK21hf+TuCbdaiohIv3R7WuZB4NTmzy8CI2aWcnetiIhMo1K9nlBM\nIcDMPgAc4+5ntrQ9CXwHWNL8/8XuPvkb1Wp1yroEICKSKFjlpqfCYWZ2EnA28La2RZcA9wAvAHcB\npwB/N2ln1bHOtqE5MBYojDUUX7GnnvKPk4m0okgpdYMmAv+uqbDrokSr8YRyWWVGo2OHqgkjriX+\nQywUXhkMFtYKbYsi9YStXA4VZyuMTTioKSrYVR6AWmcRtFrCAVOtknJAE99vKSG2XLCNSwxQbyvy\nVktMGdsTavzNTfjzq9QD+aJIKbR+gxAo2rYjobxXKfHER31ie3TsnKQ/v3DVvl4uqL4d+AhwvLtv\nal3m7je3xN0NvJapkruIiPRNV+dBzGwBcBVworu/0L7MzL5hZjvr5y4DftDbMEVEJEW3R+6nAQcA\nt5vZzrZvAo+7+1ebR+uPmNl2GjNpdNQuIrIH9XxBtW/GdnQOROfcp6Rz7rvonPsuOufeIv9z7sEd\nqOkpIiIZUnIXEcmQkruISIaU3EVEMqTkLiKSoVkzW6YamAow0GjvMFqPn01SKcWvXyX4bsUGGY6O\nDfVctH5bEoYxlDB5YThhZk0lMAtkUrXAVIeBofCdx/WEqQAps0mKZrWEVPtwXFO0A8vx266aMBuo\nVp6e8k0DRZOBStA+qSg5XaTsPgIz4wqUkmbLhLbbCLA10D4UaAubSNwYlVJoblyBhBxHaUSzZURE\nXi6U3EVEMqTkLiKSISV3EZEMKbmLiGRIyV1EJENK7iIiGVJyFxHJkJK7iEiGlNxFRDI0a8oPbA2U\nHyi6QTjlkRqlhNt4S6WEW35JeyBCZSLwPVqpwETgluSUB2UkhG5L+CpPLD4QLMQwDMGCB8MJmzm0\n2QpjEx5yMpTysI6ih5wMlWGs8z2f+mX8UyXPPudPo2Pv+Mq66NgF+86Pjg0+MQbC5RVSnlADUInf\nJ9WUv6eUD35g/UoVqIfaE9avnnhoXAs8HKRIuXCndCoxR+UHREReLpTcRUQy1NUDss1sOXAH8MNm\n0+Pufn7L8uOAT9D4B9Hd7n55j+MUEZEEXSX3pgfcfUXBsmuBtwNPAw+Y2Z3u/qMe3ktERBL0/bSM\nmR0KvODuT7l7DbgbOLbf7yMiIsV6OXJ/jZmtAxYCl7r7fc32RcDGlrjngN+ZqrO5hL9pRnoYIACl\nlO+vabwEUXRxvxJYMD3PZGCf6el2UsHHmSRs5pRNUUl7MkS8yZ7fMNTZ0SGv/nfRXd9737cTBjJN\nJssCvWQIIGVD9/xWRQo+RMFneCRInjiUNM8vJTas2+35U+BS4HbgUOBbZvZqdw89HiVqG2wPtGkq\nZEzH8aGaCrmLpkK20FTIXe1751TIYHtXyd3dnwbWNF/+zMyeBRYDPwc20Dh632lxs01ERPaQrs5D\nmNkZZnZh8+dFwEE0Lp7i7k8C881siZkNACcC9/ZnuCIiEqPbk8zrgGVm9hCwFjgH+E9mdnJz+TnA\nl4GHgDXu/pOeRyoiItFmTfmBLYHyA/s22jvsmzLk+NNcxY+BL1LeFh9bfSnwfq+E6jMdzXd/7nPR\n3Z5+7uro2M2VhPOwleCl0GL1zrPr9bFNlIYWdLT/tw//1+huP7r6kujYhGfLs2A8ft8tPWjfYPt3\nX6jxBws7j4/GDjsyuu8vff6vomOPX3Z0dOw73nZidOw3/tdDwfZfvvQb/s38/Xdre35zwmce2JFw\nHaRejr+adsHHroiO/YuPr+pom1OCHaE/94R8MTDZhfaAsaRz7vHH3XOoqPyAiMjLhZK7iEiGlNxF\nRDKk5C4ikiEldxGRDCm5i4hkSMldRCRDSu4iIhlSchcRyZCSu4hIhqathHKqOeHisIXt0VJKlFZT\nbmAHyr+JDl17Q+ft0id98NOsveHPO9rPOvevo/vdnLAL7bXxz0x59MGvRMcCjMzdHGyvb/t/HW0X\nfuyC6H5P+OOzomO/fPNN0bHXro6/ff27//RA0rLnDz0muu8DEm5J3/CrH0fHnvme06Njr/x0cQmE\n9mXvOvWPo/sFOP29Z0bHvue0oge7dTrl9JOiY0N1yOcAY4HcUEmoJ556ZFxJSEb15NrKnXTkLiKS\nISV3EZEMKbmLiGRIyV1EJENK7iIiGVJyFxHJkJK7iEiGuprnbmZnA60TWF/v7vu2LB8H/nfL8mPd\nPXESuYiIdKur5O7uNwA3AJjZMuA/toVscvflvQ1NRES61Y87VC8BzuhDPyIi0ic9JXczewPwlLs/\n27ZojpndCrwKuNPdP9XL+4iISJpSvV7v+pfN7G+AL7v7t9va/wT4W6AOPAh80N3/abK+6kzUS1S6\nHouIyMtUsBBNr6dllgPntze6+2d3/mxm9wOvBaZI7lto/5ops4AamzpiayyIHuBALToUqlsTgoHR\n+EJON37+yo62lRfczo2far9cAY88E1+96OIr/2d07OsPiS+2dNvq90XHAhx3xuGdjfscDtue6Ghe\ns+Zvo/s9/cM3R8c+9PhT0bHrv/DZqYOavnHFOcH2ezbVOX5B59/VN7a+Ibrv0959SHTsbbdeHB37\nsY9cFh178B+uDLafc/LJfOarX92t7Z0nnxzdL8DKk+M/RytXHBcde+rp742Onah0prk5wI5AbMqh\n7hxSkgtMsCU6tsTc6NgK4XzRdXI3s4OBLe4+1tZuwMdpnIevAG8E/q7b9xERkXS9HLm/Enhu5wsz\nuwh4wN3/0cyeAr4H1IB17v693oYpIiIpuk7u7v4o8Ectrz/Z8vN/73FcIiLSA92hKiKSISV3EZEM\nKbmLiGRIyV1EJENK7iIiGVJyFxHJUD8Kh/VFmaHo9vGEG8NKCV9flYHEqsQJnd//4MMdbSsvCLc/\nP/e10zEEapX48g6j5cSyFKWCvgPtP/o/Ht/vePw+GU6oXvEvG56bOqhp6YnvTFr21uMuj+77yg/8\nXnQsm86cOqZpYiB+/20aGole9mJ0rw2jE/F/rAvLY1MHNQ0G7lwvjK3P62wsDTGnHni/UkpK3J4Q\nm5Zsq/Xx+OBS+A5VHbmLiGRIyV1EJENK7iIiGVJyFxHJkJK7iEiGlNxFRDKk5C4ikiEldxGRDCm5\ni4hkSMldRCRDs6b8ALXAA2HL4fbhhG7rKXfRlxO/60pzokM/8z/+Jrr93/77E6P7XVJaFB37qv/w\nlujY1592SnQswPrHHupoe8NRv8v6x37V0X75tXdG9/uWFfG33C/ZPzqU2tBodOzvvfX4pGV2TOBh\n4QXWL/3d6Fgq8R/mMp0P7i5SnyiObV+W8rcHMLccn2JqO+LLDzCaUINkOPB3XQFqgfaUhBF48PZk\nJhIev11LyC1FdOQuIpKhqK8eMzsCWAtc4+7Xm9khwC00vv+eAc5099G237kGOAqoA6vcfX1fRy4i\nIoWmPHI3sxHgOuD+lubLgE+7+zHA/wXe3/Y7y4DD3H0pcDZwbd9GLCIiU4o5LTMKnABsaGlbDqxr\n/vw14Li23zkWuAvA3Z8A9jez+T2NVEREok2Z3N296u7thYtHWk7DPAe8sm35ImBjy+uNzTYREdkD\nSvXIq8Nmthp4vnnO/Tl3/61m+6uBm939D1tiPwd83d3XNl9/B3i/u/+k8A3q1BMu8IuISEMwc3Y7\nFXKLmc1tHtEvZvdTNjRftx6pH0zjwmuxevO/VmUgYcZTsNuEL4xSaUti509Fh27+xb90tM1b8g42\nP/n1jvaUqZAbXjooOjZlKuR3H7w1Ohbglz8ITYU8hvWPdLb/wRvfFN3vmxOmQt625ubo2NUXfiQ6\n9m1HLA62n3TWh1h70193tNsx/yV+HCvjn7p1212fjI796FU3RseOLD0/2H7xu97KFevu261txbve\nGt0vwHnvXhkdu+qk34+OPeG0FfGDGA7Mka0MwES1sz0lYVQCvz+JCeKfrjRR2ic6dqjgBEy3UyH/\nAdg5EfoU4J625fcCKwDM7HXABnff3OV7iYhIoimP3M3sSOBqYAkwbmYrgDOAm8zsg8AvgC81Y28D\nVrr7w2b2qJk9TOPY+9xpGr+IiARMmdzd/VEas2Padfz7zN1Pb/n5op5GJiIiXZs95QdCp6+GCtoT\nnnI/nnDiaSg+NNkDX+s8t37i+e8Ittdfiu93kG3Rsb947MHo2EUHtE+AmkKtcxz1sU38/ps6rx98\n8fbOdS5y6iknRMemfJg/9ckPR8euuenzhcs2VTtvmX/y2c7rK0VWfmhVdCzzXhUfu2MwOnS/anEp\nhvZl8+JHAMBAPb6kwPbyvvEdDx8YHRo6jV4C6qXOT0xK9YFyqHzBZCrx+2Q04Yx5Ud5S+QERkQwp\nuYuIZEjJXUQkQ0ruIiIZUnIXEcmQkruISIaU3EVEMqTkLiKSISV3EZEMKbmLiGRIyV1EJEPRD+uY\ndqNbOgcyvC+MdtZYHx2Or0GRUKaFA3khIRrY8kR06NG/fXRH23c21jn6wM7CF+8+75Lofs/5+KXR\nsQkleZiTEAudpfihWb8j0L41oUb/UEptoHp8vWwm4mv33/KlcJ34M89exS03/FVH+2fvb3+8QbFv\n3npldOzw6K+iYxmcGx06RvgJmENlGGvfV4mHg6WEkueBUi+FtqWkrUBtmfmEc8PchM9mfKWYpoRt\nF1+RB4YKHtahI3cRkQwpuYuIZEjJXUQkQ0ruIiIZUnIXEcmQkruISIaiJh+Z2RHAWuAad7/ezA4B\nbqQxG2gc+M/u/mxL/HLgDuCHzabH3f38fg5cRESKTZnczWwEuA64v6X5z4HPufvtZnYucAHwZ22/\n+oC7r+jbSEVEJFrMaZlR4ASg9c6MDwF3Nn/eCLyiz+MSEZEeTHnk7u5VoGpmrW1bAcysApwLXBb4\n1deY2TpgIXCpu9/XlxGLiMiUossPmNlq4Hl3v775ugLcAri7X9oWuxg4GrgdOBT4FvBqdy++q7Ze\nrSfdfywiIlBQfqCXbHoj8NP2xA7g7k8Da5ovf2ZmzwKLgZ8X9lZ/qbMQSXkh1DrrvWwuL4we5Gh0\nJBww/uuEaGDLj6NDjzqis7bMI0/XOWpx53757nPxtXOoHBAfOx5fm2RhbXt8v0CohMimep0Fpc71\neylpklZ87EhwFL32WlznY0e9zpzA+o0OHx7fef3F+Njq89GhpVp8nZ2BgfDWGBufYGhw94pE1WpC\n8RWgnrKlK/EVjf70kk9Ex152yaqOtgXApkBsSk2l4XratiChjtf4eDBfBw0Oh7dxV1MhzewMYMzd\nP1603MwubP68CDgIeLqb9xIRkXQxs2WOBK4GlgDjZrYC+C1gh5l9uxn2I3f/kJndBqwE1gG3mtlJ\nwBBwzqSnZEREpK9iLqg+CiyP6czdT295+c4uxyQiIj3SHaoiIhlSchcRyZCSu4hIhpTcRUQypOQu\nIpIhJXcRkQxFlx+YflsDAxkBtna0bmckuteUb6/havxdfQCMJ9xdOBy467Q8FwJ3gm4qxz+5Pv4+\nNpiXsK9Ltc7tPvkvVDrbCtaPhPWDhLsAqzviY8vxW64WWjegXBqiVu+8fWNHaSh+HAlKCdsi5XNf\ntCWGKDPW9p6l8bR8MVgJb7uQlBs+JxLurZ8ItA0Tvns9aRsH9v1kBgo+R0G1hNhy+MOsI3cRkQwp\nuYuIZEjJXUQkQ0ruIiIZUnIXEcmQkruISIaU3EVEMqTkLiKSISV3EZEMKbmLiGRo1pQf2Nr5eOyC\n4gMwUo9/EDLVhO+vetp3XXUwITZwg/AcIHTD/JyEBz1TT7jlvhT/+N9tic9OD93iPQ/YHGhP6Xku\nKSUh4rdbNTTgAhOV4WD7MGVGA7erD1d/E9/5QHwZhGrClhslPOaQUkHsPsC2trbUwgoDKbsv5XnT\nlVDxgLB6pbNMQKk0j3q989M5XorfxuXEY+NKwvqVUtJyZVjlB0REXi6ivqbM7AhgLXCNu19vZjcB\nRwK/boZc5e5fb/uda4CjaByRr3L39X0btYiITGrK5G5mI8B1wP1tiy52978v+J1lwGHuvtTMDge+\nCCztdbAiIhIn5rTMKHACsCGh32OBuwDc/QlgfzObnz48ERHpxpTJ3d2r7h4oys15ZvZNM7vNzA5o\nW7YI2NjyemOzTURE9oC0KRG73AL82t3/2cwuAlYD500SP+WUgLmEv2mCj+VIuKJNwoyWVCkbryg2\nPH8loedS4CEgfbBPn/qZ13MPKTswPnYg4VkIk+2N4dCnduAV8Z0n6MfnLVXPn4Np+/vrfTZQqdT5\n6Zyex6w07eHpK119Bty99fz7OuAzbSEb2P1I/WDgmcn6DP3TQFMhI2gqZAtNhdxJUyF3eRlMhQw2\nd/VdYmZ3mtmhzZfLgR+0hdwLrGjGvg7Y4O6hv3MREZkGMbNljgSuBpYA42a2gsbsmTVmtg3YAqxs\nxt4GrHT3h83sUTN7mMb38bnTNH4REQnQHaqtdFrmX+m0zC46LbOLTsvsMotOywQ/RLMmuRNI7iIi\nMiWVHxAReblQchcRyZCSu4hIhpTcRUQypOQuIpIhJXcRkQwpuYuIZEjJXUQkQ0ruIiIZUnIXEcmQ\nkruISIaU3EVEMqTkLiKSISV3EZEMKbmLiGRIyV1EJENK7iIiGVJyFxHJUNQDA83sCGAtcI27X29m\ndwAHNhcvBB5x9w+0xJ8FXA78rNl0n7v/Rd9GLSIik5oyuZvZCHAdcP/ONnc/tWX5F4EvBH51jbtf\n2I9BiohImpjTMqPACcCG9gVmZsB+7v69fg9MRES6N+WRu7tXgWojj3dYReOoPmSZmd0DDAIXuvv3\nux6liIgk6fqCqpkNAUe7+7cCix8BVrv78cBHgZu7fR8REUnXy2yZZUDwdIy7/9jdv978+R+BA82s\n0sN7iYhIgl6S+xuAx0ILzOzPzOy9zZ+PADa6+0QP7yUiIgliZsscCVwNLAHGzWwF8B7gleya6rgz\ndq27nwTcCtxiZn/SfI+z+zxuERGZRKler8/0GHaaNQMREdmLlEKNukNVRCRDSu4iIhlSchcRyZCS\nu4hIhpTcRUQypOQuIpKhqJK/e0hwOo+IiKTTkbuISIaU3EVEMqTkLiKSISV3EZEMKbmLiGRIyV1E\nJEOzaSrkbszsGuAoGtUiV7n7+hkeUt+Y2XLgDuCHzabH3f38mRtRfzRr968FrnH3683sEOAWoAI8\nA5zp7qMzOcZeBNbvJuBI4NfNkKt2PqRmb2RmfwkcQyMvXAGsJ5P9F1i3d5HRvguZlcndzJYBh7n7\nUjM7HPgisHSGh9VvD7j7ipkeRL+Y2QiN5+ne39J8GfBpd7/DzD4BvB/4zEyMr1cF6wdwsbv//QwM\nqa/M7M3AEc2/uVcA36exrnv9/itYt2+Syb4rMltPyxwL3AXg7k8A+5vZ/JkdkkxhFDgB2NDSthxY\n1/z5a8Bxe3hM/RRav5w8CJza/PlFYIR89l9o3bJ/7OesPHIHFgGPtrze2Gx7aWaGMy1eY2brgIXA\npe5+30wPqBfuXgWqZtbaPNLyz/jnaDy9a69UsH4A55nZBTTW7zx3f36PD64Pmo/B3Np8eTZwN/D2\nHPZfwbpNkMm+KzJbj9zb5Vaa4KfApcBJwPuAG8xsaGaHNO1y24fQOB99kbu/BfhnYPXMDqd3ZnYS\njQR4XtuivX7/ta1bdvuu3Ww9ct9A40h9p4NpXNDJgrs/DaxpvvyZmT0LLAZ+PnOjmhZbzGyuu2+n\nsX5ZndJw99bz7+vYC89HtzKztwMfAY53901mls3+a183dr92stfvu5DZeuR+L7ACwMxeB2xw980z\nO6T+MbMzzOzC5s+LgIOAp2d2VNPiH4BTmj+fAtwzg2PpOzO708wObb5cDvxgBofTEzNbAFwFnOju\nLzSbs9h/oXXLad8VmU0PyN6NmX0SeBNQA85198dmeEh9Y2bzgFuB/YAhGufc757ZUfXGzI4ErgaW\nAOM0vqzOAG4C5gC/AFa6+/gMDbEnBet3HXARsA3YQmP9npupMfbCzD5A49TET1qa3wd8gb18/xWs\n2400Ts/s9fuuyKxN7iIi0r3ZelpGRER6oOQuIpIhJXcRkQwpuYuIZEjJXUQkQ0ruIiIZUnIXEcmQ\nkruISIb+PyuC0FMUg/5rAAAAAElFTkSuQmCC\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f6672beaa90>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "LB2eP03Ku5BN",
"colab_type": "code",
"colab": {}
},
"cell_type": "code",
"source": [
"filename1 = 'data_tamil/UJTDchar/test_data/Ta(21).jpg'\n"
],
"execution_count": 0,
"outputs": []
},
{
"metadata": {
"id": "VlD3oalxzYYx",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 35
},
"outputId": "0109588b-1124-4b75-fead-2223a8ee497a"
},
"cell_type": "code",
"source": [
"img = open_image(filename1)\n",
"losses = learn.predict(img)\n",
"prediction = losses[0];\n",
"prediction"
],
"execution_count": 80,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"Category ஙீ"
]
},
"metadata": {
"tags": []
},
"execution_count": 80
}
]
},
{
"metadata": {
"id": "budbXzFyzfr4",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 265
},
"outputId": "52fdc1d6-e7c3-4714-ca4f-e612ca1cfb86"
},
"cell_type": "code",
"source": [
"img=mpimg.imread(filename1)\n",
"imgplot = plt.imshow(img)\n",
"plt.show()"
],
"execution_count": 81,
"outputs": [
{
"output_type": "display_data",
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f6671a88550>"
]
},
"metadata": {
"tags": []
}
}
]
},
{
"metadata": {
"id": "dZFnguxNzooA",
"colab_type": "code",
"colab": {}
},
"cell_type": "code",
"source": [
"interp = ClassificationInterpretation.from_learner(learn)\n"
],
"execution_count": 0,
"outputs": []
},
{
"metadata": {
"id": "IEa6XALCz1NV",
"colab_type": "code",
"colab": {
"base_uri": "https://localhost:8080/",
"height": 508
},
"outputId": "84fbe294-360c-4bcc-9efb-20b43d432f7e"
},
"cell_type": "code",
"source": [
"interp.most_confused(min_val=2)\n"
],
"execution_count": 69,
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"[('ன', 'ண', 13),\n",
" ('ணி', 'ணீ', 10),\n",
" ('ணூ', 'னு', 10),\n",
" ('ணூ', 'ணு', 9),\n",
" ('லூ', 'லு', 9),\n",
" ('னூ', 'னு', 8),\n",
" ('னூ', 'ணூ', 7),\n",
" ('ணீ', 'ணி', 6),\n",
" ('ளு', 'ளூ', 6),\n",
" ('ளூ', 'ளு', 6),\n",
" ('நூ', 'ஞூ', 5),\n",
" ('ப', 'ய', 5),\n",
" ('ஒ', 'ஓ', 4),\n",
" ('ஙீ', 'ஙி', 4),\n",
" ('ணு', 'ணூ', 4),\n",
" ('து', 'தூ', 4),\n",
" ('நு', 'நூ', 4),\n",
" ('ழ', 'ழ்', 4),\n",
" ('ழு', 'ழூ', 4),\n",
" ('ஞூ', 'ஞு', 3),\n",
" ('ண', 'ை', 3),\n",
" ('ன', 'ை', 3),\n",
" ('னீ', 'னி', 3),\n",
" ('மி', 'யி', 3),\n",
" ('ற', 'ற்', 3),\n",
" ('று', 'றூ', 3),\n",
" ('ள்', 'ன்', 3)]"
]
},
"metadata": {
"tags": []
},
"execution_count": 69
}
]
},
{
"metadata": {
"id": "OHZTVOW8z5yU",
"colab_type": "code",
"colab": {}
},
"cell_type": "code",
"source": [
""
],
"execution_count": 0,
"outputs": []
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment