{ "cells": [ { "cell_type": "code", "execution_count": 18, "metadata": { "collapsed": false, "deletable": true, "editable": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Populating the interactive namespace from numpy and matplotlib\n" ] } ], "source": [ "%pylab inline" ] }, { "cell_type": "markdown", "metadata": { "deletable": true, "editable": true }, "source": [ "# Diarization evaluation metrics" ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "collapsed": false, "deletable": true, "editable": true }, "outputs": [], "source": [ "from pyannote.core import Annotation, Segment" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "collapsed": false, "deletable": true, "editable": true }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "execution_count": 20, "metadata": {}, "output_type": "execute_result" } ], "source": [ "reference = Annotation()\n", "reference[Segment(0, 10)] = 'A'\n", "reference[Segment(12, 20)] = 'B'\n", "reference[Segment(24, 27)] = 'A'\n", "reference[Segment(30, 40)] = 'C'\n", "reference" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "collapsed": false, "deletable": true, "editable": true }, "outputs": [ { "data": { "image/png": "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\nYRn6hdXSKyxDv7BaeoVlnN7dj1/mATuWfIJ7unv3ko9hG6qqvXqF1dIvrJZeYRn6hdXSKyxDv7Ba\neoVlVNXeZR9jyhUAAADAYAQ6AAAAAINZNtD50+NSBVuRXmEZ+oXV0issQ7+wWnqFZegXVkuvsIyl\n+2WpRZEBAAAAmJ8pVwAAAACDWVWgU1XnVdU9VfXxqnrN8S6KsVXVp6vqzqq6bS0rdbO1VdXbquqB\nqrprxbETq+p9VfUf0/0T56yRzeEIvbKnqu6dxpfbqupFc9bI5lBVT6mqW6rqY1V1d1VdNh03tnCI\no/SL8YWHqarHVtWHq+r2qVf+YDr+PVX1oemz0XVV9Zi5a2V+R+mXq6vqUyvGll1z18rmUFUnVNVH\nq+pvpv2lx5ZHDHSq6oQkf5zkJ5KcmeTCqjrzWItny3tBd+/yNX0cxtVJzjvo2GuS3NzdpyW5edqH\nq3NoryTJFdP4squ7/3aDa2Jz+lqS3+juM5OcneSS6b2KsYXDOVK/JMYXHu6rSc7t7qcn2ZXkvKo6\nO8kfZdEr35fkf5L80ow1snkcqV+S5DdXjC23zVcim8xlSfav2F96bFnNFTrPTvLx7v5kd/9fkncm\nOX8NxQKku/8hyRcOOnx+krdP229P8jMbWhSb0hF6BQ7R3fd190em7S9n8eboyTG2cBhH6Rd4mF54\ncNp99HTrJOcmefd03NhCkqP2Cxyiqk5N8pNJrpr2K2sYW1YT6Dw5yWdX7P9n/NLj6DrJTVW1r6pe\nOXcxDOFJ3X3ftP1fSZ40ZzFser9aVXdMU7JMoeFhqmpnkmck+VCMLTyCg/olMb5wkGlKxG1JHkjy\nviSfSPLF7v7adIrPRnzDwf3S3QfGlsunseWKqvqWGUtk83hTkt9K8tC0f1LWMLZYFJnj4fnd/cws\npuldUlU/OndBjKMXX73nrxkcyVuSPDWLS5nvS/KGecthM6mqxyV5T5Jf7+4vrfyZsYWDHaZfjC8c\noru/3t27kpyaxcyFp81cEpvYwf1SVT+Y5LVZ9M2zkpyY5LdnLJFNoKpenOSB7t53rP/WagKde5M8\nZcX+qdMxOKzuvne6fyDJ9Vn88oOjub+qvitJpvsHZq6HTaq775/eLD2U5M9ifGFSVY/O4sP5O7r7\nr6fDxhYO63D9YnzhaLr7i0luSfKcJE+oqh3Tj3w24hAr+uW8aZpnd/dXk/x5jC0kz0vy01X16SyW\ntDk3yZuzhrFlNYHOrUlOm1ZcfkySlya5cS1Vs/VV1bdX1eMPbCf58SR3Hf1RkBuTvGLafkWSG2as\nhU3swIfzyUtifCHfmHf+1iT7u/uNK35kbOEQR+oX4wsHq6pTquoJ0/a3JvmxLNZcuiXJz02nGVtI\ncsR++bcVf1ioLNZEMbZsc9392u4+tbt3ZpGvvL+7X5Y1jC21uAL5EU5afG3jm5KckORt3X35Gmtn\ni6uq783iqpwk2ZHkL/ULK1XVtUnOSXJykvuT/H6S9yZ5V5LvTvKZJD/f3RbD3eaO0CvnZDEdopN8\nOsnFK9ZIYZuqqucn+cckd+abc9F/J4t1UYwtPMxR+uXCGF9Yoap+KIuFSU/I4g/h7+ruP5ze774z\ni+kzH01y0XT1BdvYUfrl/UlOSVJJbkvyqhWLJ7PNVdU5SV7d3S9ey9iyqkAHAAAAgM3DosgAAAAA\ngxHoAAAAAAxGoAMAAAAwGIEOAAAAwGAEOgAAAACD2TF3AQAAj6SqTkpy87T7nUm+nuS/p/2vdPdz\nZykMAGAmvrYcABhKVe1J8mB3v37uWgAA5mLKFQAwtKp6cLo/p6o+WFU3VNUnq+p1VfWyqvpwVd1Z\nVU+dzjulqt5TVbdOt+fN+woAAJYn0AEAtpKnJ3lVkjOSvDzJ93f3s5NcleTXpnPenOSK7n5Wkp+d\nfgYAMBRr6AAAW8mt3X1fklTVJ5LcNB2/M8kLpu0XJjmzqg485juq6nHd/eCGVgoAcAwEOgDAVvLV\nFdsPrdh/KN983/OoJGd39/9uZGEAAOvJlCsAYLu5Kd+cfpWq2jVjLQAAayLQAQC2m0uT7K6qO6rq\nY1msuQMAMBRfWw4AAAAwGFfoAAAAAAxGoAMAAAAwGIEOAAAAwGAEOgAAAACDEegAAAAADEagAwAA\nADAYgQ4AAADAYAQ6AAAAAIP5fwoSI2HqcHWvAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "execution_count": 21, "metadata": {}, "output_type": "execute_result" } ], "source": [ "hypothesis = Annotation()\n", "hypothesis[Segment(2, 13)] = 'a'\n", "hypothesis[Segment(13, 14)] = 'd'\n", "hypothesis[Segment(14, 20)] = 'b'\n", "hypothesis[Segment(22, 38)] = 'c'\n", "hypothesis[Segment(38, 40)] = 'd'\n", "hypothesis" ] }, { "cell_type": "markdown", "metadata": { "deletable": true, "editable": true }, "source": [ "## Diarization error rate" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "collapsed": false, "deletable": true, "editable": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "DER = 0.516\n" ] } ], "source": [ "from pyannote.metrics.diarization import DiarizationErrorRate\n", "diarizationErrorRate = DiarizationErrorRate()\n", "print(\"DER = {0:.3f}\".format(diarizationErrorRate(reference, hypothesis, uem=Segment(0, 40))))" ] }, { "cell_type": "markdown", "metadata": { "deletable": true, "editable": true }, "source": [ "### Optimal mapping" ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "collapsed": false, "deletable": true, "editable": true }, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "reference" ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "collapsed": false, "deletable": true, "editable": true }, "outputs": [ { "data": { "image/png": "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\nYRn6hdXSKyxDv7BaeoVlnN7dj1/mATuWfIJ7unv3ko9hG6qqvXqF1dIvrJZeYRn6hdXSKyxDv7Ba\neoVlVNXeZR9jyhUAAADAYAQ6AAAAAINZNtD50+NSBVuRXmEZ+oXV0issQ7+wWnqFZegXVkuvsIyl\n+2WpRZEBAAAAmJ8pVwAAAACDWVWgU1XnVdU9VfXxqnrN8S6KsVXVp6vqzqq6bS0rdbO1VdXbquqB\nqrprxbETq+p9VfUf0/0T56yRzeEIvbKnqu6dxpfbqupFc9bI5lBVT6mqW6rqY1V1d1VdNh03tnCI\no/SL8YWHqarHVtWHq+r2qVf+YDr+PVX1oemz0XVV9Zi5a2V+R+mXq6vqUyvGll1z18rmUFUnVNVH\nq+pvpv2lx5ZHDHSq6oQkf5zkJ5KcmeTCqjrzWItny3tBd+/yNX0cxtVJzjvo2GuS3NzdpyW5edqH\nq3NoryTJFdP4squ7/3aDa2Jz+lqS3+juM5OcneSS6b2KsYXDOVK/JMYXHu6rSc7t7qcn2ZXkvKo6\nO8kfZdEr35fkf5L80ow1snkcqV+S5DdXjC23zVcim8xlSfav2F96bFnNFTrPTvLx7v5kd/9fkncm\nOX8NxQKku/8hyRcOOnx+krdP229P8jMbWhSb0hF6BQ7R3fd190em7S9n8eboyTG2cBhH6Rd4mF54\ncNp99HTrJOcmefd03NhCkqP2Cxyiqk5N8pNJrpr2K2sYW1YT6Dw5yWdX7P9n/NLj6DrJTVW1r6pe\nOXcxDOFJ3X3ftP1fSZ40ZzFser9aVXdMU7JMoeFhqmpnkmck+VCMLTyCg/olMb5wkGlKxG1JHkjy\nviSfSPLF7v7adIrPRnzDwf3S3QfGlsunseWKqvqWGUtk83hTkt9K8tC0f1LWMLZYFJnj4fnd/cws\npuldUlU/OndBjKMXX73nrxkcyVuSPDWLS5nvS/KGecthM6mqxyV5T5Jf7+4vrfyZsYWDHaZfjC8c\noru/3t27kpyaxcyFp81cEpvYwf1SVT+Y5LVZ9M2zkpyY5LdnLJFNoKpenOSB7t53rP/WagKde5M8\nZcX+qdMxOKzuvne6fyDJ9Vn88oOjub+qvitJpvsHZq6HTaq775/eLD2U5M9ifGFSVY/O4sP5O7r7\nr6fDxhYO63D9YnzhaLr7i0luSfKcJE+oqh3Tj3w24hAr+uW8aZpnd/dXk/x5jC0kz0vy01X16SyW\ntDk3yZuzhrFlNYHOrUlOm1ZcfkySlya5cS1Vs/VV1bdX1eMPbCf58SR3Hf1RkBuTvGLafkWSG2as\nhU3swIfzyUtifCHfmHf+1iT7u/uNK35kbOEQR+oX4wsHq6pTquoJ0/a3JvmxLNZcuiXJz02nGVtI\ncsR++bcVf1ioLNZEMbZsc9392u4+tbt3ZpGvvL+7X5Y1jC21uAL5EU5afG3jm5KckORt3X35Gmtn\ni6uq783iqpwk2ZHkL/ULK1XVtUnOSXJykvuT/H6S9yZ5V5LvTvKZJD/f3RbD3eaO0CvnZDEdopN8\nOsnFK9ZIYZuqqucn+cckd+abc9F/J4t1UYwtPMxR+uXCGF9Yoap+KIuFSU/I4g/h7+ruP5ze774z\ni+kzH01y0XT1BdvYUfrl/UlOSVJJbkvyqhWLJ7PNVdU5SV7d3S9ey9iyqkAHAAAAgM3DosgAAAAA\ngxHoAAAAAAxGoAMAAAAwGIEOAAAAwGAEOgAAAACD2TF3AQAAj6SqTkpy87T7nUm+nuS/p/2vdPdz\nZykMAGAmvrYcABhKVe1J8mB3v37uWgAA5mLKFQAwtKp6cLo/p6o+WFU3VNUnq+p1VfWyqvpwVd1Z\nVU+dzjulqt5TVbdOt+fN+woAAJYn0AEAtpKnJ3lVkjOSvDzJ93f3s5NcleTXpnPenOSK7n5Wkp+d\nfgYAMBRr6AAAW8mt3X1fklTVJ5LcNB2/M8kLpu0XJjmzqg485juq6nHd/eCGVgoAcAwEOgDAVvLV\nFdsPrdh/KN983/OoJGd39/9uZGEAAOvJlCsAYLu5Kd+cfpWq2jVjLQAAayLQAQC2m0uT7K6qO6rq\nY1msuQMAMBRfWw4AAAAwGFfoAAAAAAxGoAMAAAAwGIEOAAAAwGAEOgAAAACDEegAAAAADEagAwAA\nADAYgQ4AAADAYAQ6AAAAAIP5fwoSI2HqcHWvAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "hypothesis" ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "collapsed": false, "deletable": true, "editable": true }, "outputs": [ { "data": { "text/plain": [ "{'a': 'A', 'b': 'B', 'c': 'C'}" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diarizationErrorRate.optimal_mapping(reference, hypothesis)" ] }, { "cell_type": "markdown", "metadata": { "deletable": true, "editable": true }, "source": [ "### Details" ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "{'confusion': 7.0,\n", " 'correct': 22.0,\n", " 'diarization error rate': 0.5161290322580645,\n", " 'false alarm': 7.0,\n", " 'missed detection': 2.0,\n", " 'total': 31.0}" ] }, "execution_count": 26, "metadata": {}, "output_type": "execute_result" } ], "source": [ "diarizationErrorRate(reference, hypothesis, detailed=True, uem=Segment(0, 40))" ] }, { "cell_type": "markdown", "metadata": { "deletable": true, "editable": true }, "source": [ "## Clusters purity and coverage" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Purity = 0.828\n" ] } ], "source": [ "from pyannote.metrics.diarization import DiarizationPurity\n", "purity = DiarizationPurity()\n", "print(\"Purity = {0:.3f}\".format(purity(reference, hypothesis, uem=Segment(0, 40))))" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Coverage = 0.759\n" ] } ], "source": [ "from pyannote.metrics.diarization import DiarizationCoverage\n", "coverage = DiarizationCoverage()\n", "print(\"Coverage = {0:.3f}\".format(coverage(reference, hypothesis, uem=Segment(0, 40))))" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.4.3" } }, "nbformat": 4, "nbformat_minor": 0 }