Käyttämällä sklearn.metrics Pythonissa laskin keskimääräisen tarkkuuden (keskiarvon_tuloksella) ja tarkkuuden (luokitusraportilla) testattaessa mallin mittareita. Sain kuitenkin erilaisia vastauksia (vastaavasti 0,89 vs. 0,93). Luin molempien asiakirjat ja tiedän, että yhtälöt ovat erilaiset, mutta toivoin saavani intuitiivisen selityksen näiden kahden välisistä eroista ja siitä, milloin niitä tulisi käyttää toistensa välillä.
Kommentit
- Tätä on vaikea käsitellä ihmisillä. Sinun tulee linkittää dokumentaatioon, jonka tulkinnassa on vaikeuksia, & kopioi teksti / yhtälöt, joita et ymmärrä '. Jne. Sinun on annettava riittävä konteksti, jotta tämä voidaan tulkita. Haluamme, että ketjut voivat pystyä seisomaan yksin.
- tässä artikkelissa on yksityiskohtainen kuvaus ja esimerkkejä Keskimääräisen tarkkuuden erittely (mAP)
vastaus
Tarkkuus viittaa tarkkuuteen tietyllä päätösrajalla. Jos esimerkiksi lasket minkä tahansa mallin tuotoksen alle 0,5 negatiiviseksi ja yli 0,5 positiiviseksi. Mutta joskus (varsinkin jos luokkasi eivät ole tasapainossa tai jos haluat suosia tarkkuutta palauttamisen sijasta tai päinvastoin), saatat haluta muuttaa tätä kynnystä. Keskimääräinen tarkkuus antaa keskimääräisen tarkkuuden kaikilla mahdollisilla kynnyksillä, mikä on myös samanlainen kuin tarkkuuden palautuskäyrän alla oleva alue. On hyödyllistä vertailla sitä, kuinka hyvin mallit järjestävät ennusteita ottamatta huomioon mitään erityistä päätöksentekokynnystä.
Viite: https://scikit-learn.org/stable/modules/generated/sklearn.metrics.average_precision_score.html
vastaus
Tarkkuus on Pr = TP / (TP + FP) missä on TP ja FP ovat tosi- ja vääriä positiivisia. Joten käytämme tätä mittaria arvioidaksemme järjestelmät, kuten luokittelijat, jotta tiedämme kuinka tarkasti löysimme positiivisia. jos luokittelijasi merkitsi merkinnän Tosi, vaikka se olisikin väärä todellisuudessa, se lisää FP: tä, mikä puolestaan vähentää Pr: tä. Joten järjestelmäsi ei ole tarkka. joten luokittelijoiden osalta meidän ei tarvitse tietää, mikä merkintä on suurin todennäköisyys kuulua luokkaan tai vastaaviin.
missä sanotaan, että rakensit sovelluksen, joka etsii musiikkia Videot. joten jos kappaleesta tehdään kysely (sanotaan, haluan irtautua), jos kyselystä saadut 5 ensimmäistä merkintää eivät liity lauluun tai yhtyeeseen ”Queen” ja merkinnät 6-10 liittyvät toisiinsa heille, niin sovelluksesi on tuhlausta. Joten näissä tapauksissa, joissa järjestyksellä on merkitystä, laskemme tarkkuuden ja palautuksen (Re = TP / (TP + FN)) ja käyrän alla oleva alue on MAP (keskimääräinen keskimääräinen tarkkuus).
idea on seuraava, koska todellisten todellisten merkintöjen lukumäärä on kiinteä, siirtyminen seuraavaan merkintään joko lisää palauttamista (kun kohtaat tosi positiivisen) tai pitää sen samana (kun kohtaat väärän positiivisen), missä tarkkuuden vähentyessä ( jos FP havaittiin) ja pysyy samana tai kasvaa (jos TP havaittiin), joten jos saat epäolennaisia tuloksia alussa, tarkkuus pysyy melkein 0, mikä tekee MAP: stä 0, missä ikään kuin löytäisit kaikki tarkat tulokset käynnistys (mikä tarkoittaa periaatteessa nolla FP: tä), joten tarkkuus on lähellä arvoa 1, tuloksena on MAP lähellä 1. mikä todistaa järjestelmän parhaaksi.
Tässä artikkelissa on yksityiskohtainen kuvaus ja esimerkkejä