Skip to content
Snippets Groups Projects
pos.ipynb 1.85 MiB
Newer Older
Marcin Wątroba's avatar
Marcin Wątroba committed
{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "9febd313-2446-49bb-8508-997c0b2bc0ca",
   "metadata": {},
   "source": [
    "# Imports and configs"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "1929f9bb-5060-4530-811b-823d69a5b00f",
   "metadata": {},
   "outputs": [],
   "source": [
    "from experiment.luna.luna_record_provider import LunaRecordProvider\n",
    "from sziszapangma.integration.experiment_manager import ExperimentManager\n",
    "from sziszapangma.integration.repository.multi_files_experiment_repository import MultiFilesExperimentRepository\n",
    "from sziszapangma.integration.path_filter import ExtensionPathFilter\n",
    "from pymongo import MongoClient\n",
    "from spacy.tokens.doc import Doc\n",
    "import pandas as pd\n",
    "from experiment.voicelab.voicelab_telco_record_provider import VoicelabTelcoRecordProvider\n",
    "from sziszapangma.integration.repository.experiment_repository import ExperimentRepository\n",
    "from dataclasses import dataclass"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "321a93d9-0c5d-4d42-ba8f-4b704a05d78c",
   "metadata": {},
   "outputs": [],
   "source": [
    "pd.set_option('display.max_rows', None)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "1b0a963f-ef3b-4f0f-bebc-68a0ea3e4f6c",
   "metadata": {},
   "source": [
    "# Load datasets and other pipeline objects"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "bbe2a7bf-bb6d-42ee-b5ce-48e6ec7fcd94",
   "metadata": {},
   "outputs": [],
   "source": [
    "VOICELAB_DATASET_DIRECTORY = 'experiment_data/dataset/voicelab_cbiz_testset_20220322'\n",
    "LUNA_DATASET_DIRECTORY = 'experiment_data/dataset/LUNA.PL'"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "4bb1a1c0-8784-4e0d-9426-13495718e087",
   "metadata": {},
   "outputs": [],
   "source": [
    "## repository collections\n",
    "GOLD_TRANSCRIPT = 'gold_transcript'\n",
    "GOLD_TRANSCRIPT_SPACY = 'gold_transcript_spacy'\n",
    "\n",
    "TECHMO_POLISH_ASR = 'techmo_polish_asr'\n",
    "WORD_TECHMO_MERTICS_WER = 'word_techmo_metrics_wer'\n",
    "WORD_TECHMO_ALIGNMENT_WER = 'word_techmo_alignment_wer'\n",
    "TECHMO_SPACY = 'techmo_spacy'\n",
    "POS_TECHMO_ALIGNMENT_WER = 'pos_techmo_alignment_wer'\n",
    "POS_TECHMO_METRICS_WER = 'pos_techmo_metrics_wer'\n",
    "\n",
    "AJN_POLISH_ASR = 'ajn_polish_asr'\n",
    "WORD_AJN_MERTICS_WER = 'word_ajn_metrics_wer'\n",
    "WORD_AJN_ALIGNMENT_WER = 'word_ajn_alignment_wer'\n",
    "AJN_SPACY = 'ajn_spacy'\n",
    "POS_AJN_ALIGNMENT_WER = 'pos_ajn_metrics_wer'\n",
    "POS_AJN_METRICS_WER = 'pos_ajn_alignment_wer'"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "d4265253-755a-4160-97f7-72604fdf41d1",
   "metadata": {},
   "outputs": [],
   "source": [
    "@dataclass\n",
    "class CollectionsConfig:\n",
    "    config_name: str\n",
    "    gold_transcript: str\n",
    "    gold_transcript_spacy: str\n",
    "    asr: str\n",
    "    word_asr_metric_wer: str\n",
    "    word_asr_alignment_wer: str\n",
    "    asr_spacy: str\n",
    "    pos_asr_metric_wer: str\n",
    "    pos_asr_alignment_wer: str"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "950b0bb8-e5ae-46e0-97a2-a832b7c8a70f",
   "metadata": {},
   "outputs": [],
   "source": [
    "techmo_connections_config = CollectionsConfig(\n",
    "    config_name='TECHMO ASR',\n",
    "    gold_transcript=GOLD_TRANSCRIPT,\n",
    "    gold_transcript_spacy=GOLD_TRANSCRIPT_SPACY,\n",
    "    asr=TECHMO_POLISH_ASR,\n",
    "    word_asr_metric_wer=WORD_TECHMO_MERTICS_WER,\n",
    "    word_asr_alignment_wer=WORD_TECHMO_ALIGNMENT_WER,\n",
    "    asr_spacy=TECHMO_SPACY,\n",
    "    pos_asr_metric_wer=POS_TECHMO_METRICS_WER,\n",
    "    pos_asr_alignment_wer=POS_TECHMO_ALIGNMENT_WER\n",
    ")\n",
    "ajn_connections_config = CollectionsConfig(\n",
    "    config_name='AJN ASR',\n",
    "    gold_transcript=GOLD_TRANSCRIPT,\n",
    "    gold_transcript_spacy=GOLD_TRANSCRIPT_SPACY,\n",
    "    asr=AJN_POLISH_ASR,\n",
    "    word_asr_metric_wer=WORD_AJN_MERTICS_WER,\n",
    "    word_asr_alignment_wer=WORD_AJN_ALIGNMENT_WER,\n",
    "    asr_spacy=AJN_SPACY,\n",
    "    pos_asr_metric_wer=POS_AJN_ALIGNMENT_WER,\n",
    "    pos_asr_alignment_wer=POS_AJN_METRICS_WER\n",
    ")"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "4dec626b-02e4-4c78-a238-04ef2f090ea5",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
Marcin Wątroba's avatar
Marcin Wątroba committed
      "voicelab examples count 801\n",
      "luna examples count 501\n"
Marcin Wątroba's avatar
Marcin Wątroba committed
     ]
    }
   ],
   "source": [
    "voicelab_experiment_repository = MultiFilesExperimentRepository(\n",
    "    'experiment_data/pipeline',\n",
    "    'asr_benchmark_voicelab_cbiz_testset_20220322'\n",
    ")\n",
    "luna_experiment_repository = MultiFilesExperimentRepository(\n",
    "    'experiment_data/pipeline',\n",
    "    'asr_benchmark_luna'\n",
    ")\n",
    "print(f'voicelab examples count {len(voicelab_experiment_repository.get_all_record_ids())}')\n",
    "print(f'luna examples count {len(luna_experiment_repository.get_all_record_ids())}')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "98c6ff1d-4fbd-4b68-9e23-ecea33852b12",
   "metadata": {},
   "outputs": [],
   "source": [
    "voicelab_record_provider = VoicelabTelcoRecordProvider(ExtensionPathFilter(\n",
    "    root_directory=VOICELAB_DATASET_DIRECTORY,\n",
    "    extension='wav',\n",
    "), relation_manager_root_path='experiment_data/dataset_relation_manager_data/voicelab_cbiz_testset_20220322')\n",
    "\n",
    "luna_record_provider = LunaRecordProvider(ExtensionPathFilter(\n",
    "    root_directory=f'{LUNA_DATASET_DIRECTORY}/LUNA.PL',\n",
    "    extension='wav',\n",
    "), relation_manager_root_path='experiment_data/dataset_relation_manager_data/luna')"
   ]
  },
  {
   "cell_type": "code",
Marcin Wątroba's avatar
Marcin Wątroba committed
   "execution_count": 9,
Marcin Wątroba's avatar
Marcin Wątroba committed
   "id": "74bf17ba-8572-4758-8116-794708b6ea08",
   "metadata": {},
   "outputs": [],
   "source": [
    "def get_gold_transcript_for(record_id: str, experiment_repository: ExperimentRepository, \n",
    "                            collections_config: CollectionsConfig) -> str:\n",
    "    gold_trnascript_property = experiment_repository.get_property_for_key(\n",
    "        record_id, collections_config.gold_transcript)\n",
    "    return ' '.join([it['word'] for it in gold_trnascript_property])\n",
    "\n",
    "def get_asr_transcript_for(record_id: str, experiment_repository: ExperimentRepository,\n",
    "                           collections_config: CollectionsConfig) -> str:\n",
    "    gold_trnascript_property = experiment_repository.get_property_for_key(record_id, collections_config.asr)\n",
    "    return gold_trnascript_property['full_text']\n",
    "\n",
    "def get_word_alignment_df(record_id: str, experiment_repository: ExperimentRepository, \n",
    "                        collections_config: CollectionsConfig) -> pd.DataFrame:\n",
    "    word_alignment_wer = experiment_repository.get_property_for_key(record_id, \n",
    "                                                                    collections_config.word_asr_alignment_wer)\n",
    "    arr = [\n",
    "        {\n",
    "            'step_type': it['step_type'],\n",
    "            'reference_word_text': it['step_words']['reference_word']['text'] \n",
    "            if 'reference_word' in it['step_words'] else '',\n",
    "            'hypothesis_word_text': it['step_words']['hypothesis_word']['text']\n",
    "            if 'hypothesis_word' in it['step_words'] else '',\n",
    "        }\n",
    "        for it in word_alignment_wer\n",
    "    ]\n",
    "    return pd.DataFrame(arr)\n",
    "\n",
    "\n",
    "def get_pos_alignment_df(record_id: str, experiment_repository: ExperimentRepository, \n",
    "                        collections_config: CollectionsConfig) -> pd.DataFrame:\n",
    "    pos_alignment_wer = experiment_repository.get_property_for_key(record_id, \n",
    "                                                                   collections_config.pos_asr_alignment_wer)\n",
    "    gold_transcript_spacy = experiment_repository.get_property_for_key(record_id,\n",
    "                                                                       collections_config.gold_transcript_spacy)\n",
    "    gold_trnascript_spacy_word_dict = {it['id']: it['word'] for it in gold_transcript_spacy}\n",
    "    asr_spacy = experiment_repository.get_property_for_key(record_id, collections_config.asr_spacy)\n",
    "    asr_spacy_word_dict = {it['id']: it['word'] for it in asr_spacy}\n",
    "    arr = [\n",
    "        {\n",
    "            'step_type': it['step_type'],\n",
    "            'reference_word_pos': it['step_words']['reference_word']['text'] \n",
    "            if 'reference_word' in it['step_words'] else '',\n",
    "            'reference_word_text': gold_trnascript_spacy_word_dict[it['step_words']['reference_word']['id']] \n",
    "            if 'reference_word' in it['step_words'] else '',\n",
    "            'hypothesis_word_pos': it['step_words']['hypothesis_word']['text']\n",
    "            if 'hypothesis_word' in it['step_words'] else '',\n",
    "            'hypothesis_word_text': asr_spacy_word_dict[it['step_words']['hypothesis_word']['id']] \n",
    "            if 'hypothesis_word' in it['step_words'] else ''\n",
    "        }\n",
    "        for it in pos_alignment_wer\n",
    "    ]\n",
    "    return pd.DataFrame(arr)\n",
    "    \n",
    "    \n",
    "def show_report_for(record_id: str, experiment_repository: ExperimentRepository,\n",
    "                    collections_config: CollectionsConfig):\n",
    "    print('record_id:', record_id)\n",
    "    print('properties_confiog:', collections_config.config_name)\n",
    "    print()\n",
    "    print(f'gold transcript: {get_gold_transcript_for(record_id, experiment_repository, collections_config)}')    \n",
    "    print()\n",
    "    print(f'asr transcript: {get_asr_transcript_for(record_id, experiment_repository, collections_config)}')\n",
    "    print()\n",
    "    print(f\"word wer {experiment_repository.get_property_for_key(record_id, collections_config.word_asr_metric_wer)}\")\n",
    "    print()\n",
    "    print(f\"pos wer {experiment_repository.get_property_for_key(record_id, collections_config.pos_asr_metric_wer)}\")\n",
    "    print()\n",
    "    display(get_word_alignment_df(record_id, experiment_repository, collections_config))\n",
    "    print()\n",
    "    display(get_pos_alignment_df(record_id, experiment_repository, collections_config))\n",
    "    print('--------------------------------------------------------------')\n",
    "    print('--------------------------------------------------------------')\n",
    "    print('--------------------------------------------------------------')"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "327bbc4b-7bcb-4a28-8d4a-22660ecaf6c2",
   "metadata": {},
   "source": [
    "# Report for LUNA and TECHMO ASR"
   ]
  },
  {
   "cell_type": "code",
Marcin Wątroba's avatar
Marcin Wątroba committed
   "execution_count": 10,
Marcin Wątroba's avatar
Marcin Wątroba committed
   "id": "3395e091-3488-4b49-aede-af15a0055a8b",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
Marcin Wątroba's avatar
Marcin Wątroba committed
      "record_id: LUNA.PL__KIEDY__DOBRAJAKOSC__F__2_2007-03-23_22_26_40__2_2007-03-23_22_26_40\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
      "properties_confiog: TECHMO ASR\n",
      "\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
      "gold transcript: dobry wieczór xxx słucham dobry wieczór panu mam do pana prośbę proszę zobaczyć z pętli Szczęśliwickiej sto osiemdziesiąt cztery jutro w sobotę o dwunastej i trzynastej proszę podać rozkład dwunasta dwie tak dwadzieścia dwie tak czterdzieści dwie trzynasta tak samo dziękuję panu dobranoc proszę bardzo dobranoc\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
      "\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
      "asr transcript: dobry wieczór słucham dobry wieczór panu mam do pana prośbę proszę zobaczyć z pętli szczęśliwickiej 100 84 jutro w sobotę o dwunastej i trzynastej proszę podać dwunasta dwie tak 20 dwie tak 40 dwie trzynasta tak samo dziękuję dobranoc\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
      "\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
      "word wer {'classic_wer': 0.2608695652173913}\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
      "\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
      "pos wer {'classic_wer': 0.1956521739130435}\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
      "\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>step_type</th>\n",
       "      <th>reference_word_text</th>\n",
       "      <th>hypothesis_word_text</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
       "      <td>dobry</td>\n",
       "      <td>dobry</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>wieczór</td>\n",
       "      <td>wieczór</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>DELETION</td>\n",
       "      <td>xxx</td>\n",
       "      <td></td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>słucham</td>\n",
       "      <td>słucham</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>CORRECT</td>\n",
       "      <td>dobry</td>\n",
       "      <td>dobry</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>wieczór</td>\n",
       "      <td>wieczór</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>panu</td>\n",
       "      <td>panu</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>mam</td>\n",
       "      <td>mam</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>do</td>\n",
       "      <td>do</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>pana</td>\n",
       "      <td>pana</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>prośbę</td>\n",
       "      <td>prośbę</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
       "      <td>proszę</td>\n",
       "      <td>proszę</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
       "      <td>zobaczyć</td>\n",
       "      <td>zobaczyć</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>z</td>\n",
       "      <td>z</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>pętli</td>\n",
       "      <td>pętli</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>DELETION</td>\n",
       "      <td>Szczęśliwickiej</td>\n",
       "      <td></td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>SUBSTITUTION</td>\n",
       "      <td>sto</td>\n",
       "      <td>szczęśliwickiej</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>SUBSTITUTION</td>\n",
       "      <td>osiemdziesiąt</td>\n",
       "      <td>100</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>SUBSTITUTION</td>\n",
       "      <td>cztery</td>\n",
       "      <td>84</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>jutro</td>\n",
       "      <td>jutro</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>20</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>w</td>\n",
       "      <td>w</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>21</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>sobotę</td>\n",
       "      <td>sobotę</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>22</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>o</td>\n",
       "      <td>o</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>23</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
       "      <td>dwunastej</td>\n",
       "      <td>dwunastej</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>24</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
       "      <td>i</td>\n",
       "      <td>i</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
       "      <td>trzynastej</td>\n",
       "      <td>trzynastej</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>26</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>proszę</td>\n",
       "      <td>proszę</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>27</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>podać</td>\n",
       "      <td>podać</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>28</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>DELETION</td>\n",
       "      <td>rozkład</td>\n",
       "      <td></td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>29</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>dwunasta</td>\n",
       "      <td>dwunasta</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>30</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>dwie</td>\n",
       "      <td>dwie</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>31</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>tak</td>\n",
       "      <td>tak</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>32</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>SUBSTITUTION</td>\n",
       "      <td>dwadzieścia</td>\n",
       "      <td>20</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>33</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>dwie</td>\n",
       "      <td>dwie</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>34</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>tak</td>\n",
       "      <td>tak</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>35</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>SUBSTITUTION</td>\n",
       "      <td>czterdzieści</td>\n",
       "      <td>40</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>36</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>dwie</td>\n",
       "      <td>dwie</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>37</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
       "      <td>trzynasta</td>\n",
       "      <td>trzynasta</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>38</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
       "      <td>tak</td>\n",
       "      <td>tak</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>39</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>samo</td>\n",
       "      <td>samo</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>40</th>\n",
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>dziękuję</td>\n",
       "      <td>dziękuję</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>41</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>DELETION</td>\n",
       "      <td>panu</td>\n",
       "      <td></td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>42</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>DELETION</td>\n",
       "      <td>dobranoc</td>\n",
       "      <td></td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
       "      <th>43</th>\n",
       "      <td>DELETION</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>proszę</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td></td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>44</th>\n",
       "      <td>DELETION</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>bardzo</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td></td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>45</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
       "      <td>dobranoc</td>\n",
       "      <td>dobranoc</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "       step_type reference_word_text hypothesis_word_text\n",
       "0        CORRECT               dobry                dobry\n",
       "1        CORRECT             wieczór              wieczór\n",
       "2       DELETION                 xxx                     \n",
       "3        CORRECT             słucham              słucham\n",
       "4        CORRECT               dobry                dobry\n",
       "5        CORRECT             wieczór              wieczór\n",
       "6        CORRECT                panu                 panu\n",
       "7        CORRECT                 mam                  mam\n",
       "8        CORRECT                  do                   do\n",
       "9        CORRECT                pana                 pana\n",
       "10       CORRECT              prośbę               prośbę\n",
       "11       CORRECT              proszę               proszę\n",
       "12       CORRECT            zobaczyć             zobaczyć\n",
       "13       CORRECT                   z                    z\n",
       "14       CORRECT               pętli                pętli\n",
       "15      DELETION     Szczęśliwickiej                     \n",
       "16  SUBSTITUTION                 sto      szczęśliwickiej\n",
       "17  SUBSTITUTION       osiemdziesiąt                  100\n",
       "18  SUBSTITUTION              cztery                   84\n",
       "19       CORRECT               jutro                jutro\n",
       "20       CORRECT                   w                    w\n",
       "21       CORRECT              sobotę               sobotę\n",
       "22       CORRECT                   o                    o\n",
       "23       CORRECT           dwunastej            dwunastej\n",
       "24       CORRECT                   i                    i\n",
       "25       CORRECT          trzynastej           trzynastej\n",
       "26       CORRECT              proszę               proszę\n",
       "27       CORRECT               podać                podać\n",
       "28      DELETION             rozkład                     \n",
       "29       CORRECT            dwunasta             dwunasta\n",
       "30       CORRECT                dwie                 dwie\n",
       "31       CORRECT                 tak                  tak\n",
       "32  SUBSTITUTION         dwadzieścia                   20\n",
       "33       CORRECT                dwie                 dwie\n",
       "34       CORRECT                 tak                  tak\n",
       "35  SUBSTITUTION        czterdzieści                   40\n",
       "36       CORRECT                dwie                 dwie\n",
       "37       CORRECT           trzynasta            trzynasta\n",
       "38       CORRECT                 tak                  tak\n",
       "39       CORRECT                samo                 samo\n",
       "40       CORRECT            dziękuję             dziękuję\n",
       "41      DELETION                panu                     \n",
       "42      DELETION            dobranoc                     \n",
       "43      DELETION              proszę                     \n",
       "44      DELETION              bardzo                     \n",
       "45       CORRECT            dobranoc             dobranoc"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>step_type</th>\n",
       "      <th>reference_word_pos</th>\n",
       "      <th>reference_word_text</th>\n",
       "      <th>hypothesis_word_pos</th>\n",
       "      <th>hypothesis_word_text</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "  </thead>\n",
       "  <tbody>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>0</th>\n",
       "      <td>CORRECT</td>\n",
       "      <td>ADJ</td>\n",
       "      <td>dobry</td>\n",
       "      <td>ADJ</td>\n",
       "      <td>dobry</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>1</th>\n",
       "      <td>CORRECT</td>\n",
       "      <td>NOUN</td>\n",
       "      <td>wieczór</td>\n",
       "      <td>NOUN</td>\n",
       "      <td>wieczór</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>2</th>\n",
       "      <td>DELETION</td>\n",
       "      <td>PRON</td>\n",
       "      <td>xxx</td>\n",
       "      <td></td>\n",
       "      <td></td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>3</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>VERB</td>\n",
       "      <td>słucham</td>\n",
       "      <td>VERB</td>\n",
       "      <td>słucham</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>4</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>ADJ</td>\n",
       "      <td>dobry</td>\n",
       "      <td>ADJ</td>\n",
       "      <td>dobry</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>5</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>NOUN</td>\n",
       "      <td>wieczór</td>\n",
       "      <td>NOUN</td>\n",
       "      <td>wieczór</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>6</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>NOUN</td>\n",
       "      <td>panu</td>\n",
       "      <td>NOUN</td>\n",
       "      <td>panu</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>7</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>VERB</td>\n",
       "      <td>mam</td>\n",
       "      <td>VERB</td>\n",
       "      <td>mam</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>8</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>ADP</td>\n",
       "      <td>do</td>\n",
       "      <td>ADP</td>\n",
       "      <td>do</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>9</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>NOUN</td>\n",
       "      <td>pana</td>\n",
       "      <td>NOUN</td>\n",
       "      <td>pana</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>10</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>NOUN</td>\n",
       "      <td>prośbę</td>\n",
       "      <td>NOUN</td>\n",
       "      <td>prośbę</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>11</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>VERB</td>\n",
       "      <td>proszę</td>\n",
       "      <td>VERB</td>\n",
       "      <td>proszę</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>12</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>VERB</td>\n",
       "      <td>zobaczyć</td>\n",
       "      <td>VERB</td>\n",
       "      <td>zobaczyć</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>13</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>ADP</td>\n",
       "      <td>z</td>\n",
       "      <td>ADP</td>\n",
       "      <td>z</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>14</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>NOUN</td>\n",
       "      <td>pętli</td>\n",
       "      <td>NOUN</td>\n",
       "      <td>pętli</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>15</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>ADJ</td>\n",
       "      <td>Szczęśliwickiej</td>\n",
       "      <td>ADJ</td>\n",
       "      <td>szczęśliwickiej</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>16</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>NUM</td>\n",
       "      <td>sto</td>\n",
       "      <td>NUM</td>\n",
       "      <td>100</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>17</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>DELETION</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>NOUN</td>\n",
       "      <td>osiemdziesiąt</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td></td>\n",
       "      <td></td>\n",
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>18</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>SUBSTITUTION</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>NUM</td>\n",
       "      <td>cztery</td>\n",
       "      <td>X</td>\n",
       "      <td>84</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>19</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>ADV</td>\n",
       "      <td>jutro</td>\n",
       "      <td>ADV</td>\n",
       "      <td>jutro</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>20</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>ADP</td>\n",
       "      <td>w</td>\n",
       "      <td>ADP</td>\n",
       "      <td>w</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>21</th>\n",
       "      <td>CORRECT</td>\n",
       "      <td>NOUN</td>\n",
       "      <td>sobotę</td>\n",
       "      <td>NOUN</td>\n",
       "      <td>sobotę</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>22</th>\n",
       "      <td>CORRECT</td>\n",
       "      <td>ADP</td>\n",
       "      <td>o</td>\n",
       "      <td>ADP</td>\n",
       "      <td>o</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>23</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>ADJ</td>\n",
       "      <td>dwunastej</td>\n",
       "      <td>ADJ</td>\n",
       "      <td>dwunastej</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>24</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CCONJ</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>i</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CCONJ</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>i</td>\n",
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>25</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>ADJ</td>\n",
       "      <td>trzynastej</td>\n",
       "      <td>ADJ</td>\n",
       "      <td>trzynastej</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>26</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>VERB</td>\n",
       "      <td>proszę</td>\n",
       "      <td>VERB</td>\n",
       "      <td>proszę</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>27</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>VERB</td>\n",
       "      <td>podać</td>\n",
       "      <td>VERB</td>\n",
       "      <td>podać</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>28</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>DELETION</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>NOUN</td>\n",
       "      <td>rozkład</td>\n",
       "      <td></td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td></td>\n",
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>29</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>SUBSTITUTION</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>ADJ</td>\n",
       "      <td>dwunasta</td>\n",
       "      <td>PRON</td>\n",
       "      <td>dwunasta</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>30</th>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>CORRECT</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <td>NUM</td>\n",
       "      <td>dwie</td>\n",
       "      <td>NUM</td>\n",
       "      <td>dwie</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>31</th>\n",
       "      <td>CORRECT</td>\n",
       "      <td>ADV</td>\n",
       "      <td>tak</td>\n",
       "      <td>ADV</td>\n",
       "      <td>tak</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>32</th>\n",
       "      <td>CORRECT</td>\n",
       "      <td>NUM</td>\n",
       "      <td>dwadzieścia</td>\n",
       "      <td>NUM</td>\n",
       "      <td>20</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>33</th>\n",
       "      <td>CORRECT</td>\n",
       "      <td>NUM</td>\n",
       "      <td>dwie</td>\n",
       "      <td>NUM</td>\n",
       "      <td>dwie</td>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "    </tr>\n",
       "    <tr>\n",
Marcin Wątroba's avatar
Marcin Wątroba committed
       "      <th>34</th>\n",
       "      <td>CORRECT</td>\n",
       "      <td>ADV</td>\n",
       "      <td>tak</td>\n",
       "      <td>ADV</td>\n",
       "      <td>tak</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>35</th>\n",
       "      <td>CORRECT</td>\n",
       "      <td>NUM</td>\n",
       "      <td>czterdzieści</td>\n",
       "      <td>NUM</td>\n",
       "      <td>40</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>36</th>\n",
       "      <td>CORRECT</td>\n",
       "      <td>NUM</td>\n",
       "      <td>dwie</td>\n",
       "      <td>NUM</td>\n",
       "      <td>dwie</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>37</th>\n",
       "      <td>CORRECT</td>\n",
       "      <td>NOUN</td>\n",
       "      <td>trzynasta</td>\n",
       "      <td>NOUN</td>\n",
       "      <td>trzynasta</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>38</th>\n",
       "      <td>CORRECT</td>\n",
       "      <td>ADV</td>\n",
       "      <td>tak</td>\n",
       "      <td>ADV</td>\n",