Grid Search for model tuning
En modellhyperparameter är en egenskap hos en modell som är extern till modellen och vars värde inte kan uppskattas från data. Värdet på hyperparametern måste ställas in innan inlärningsprocessen börjar. Till exempel c i Support Vector Machines, k i k-Nearest Neighbors, antalet dolda lager i neurala nätverk.
En parameter är däremot en intern egenskap hos modellen och dess värde kan uppskattas från data. Exempel: Betakoefficienter i linjär/logistisk regression eller stödvektorer i Support Vector Machines.
Grid-search används för att hitta de optimala hyperparametrarna för en modell som resulterar i de mest ”exakta” förutsägelserna.
Låt oss titta på Grid-Search genom att bygga en klassificeringsmodell på datasetet för bröstcancer.
Importera datasetet och visa de tio översta raderna.
Output :
Varje rad i datamängden har en av två möjliga klasser: godartad (representeras av 2) och malign (representeras av 4). Det finns också 10 attribut i detta dataset (visas ovan) som kommer att användas för prediktion, utom Sample Code Number som är id-nummer.
Rensa data och döpa om klassvärdena till 0/1 för modellbygge (där 1 representerar ett malignt fall). Låt oss också observera fördelningen av klassen.
Output :
Det finns 444 godartade och 239 maligna fall.
Output :
Då modellen inte klassificerar något malignt fall korrekt, är mätvärdena för återkallelse och precision 0.
Nu när vi har den grundläggande noggrannheten kan vi bygga en logistisk regressionsmodell med standardparametrar och utvärdera modellen.
Output :
Genom att passa in den logistiska regressionsmodellen med standardparametrarna har vi en mycket ”bättre” modell. Noggrannheten är 94,7 % och samtidigt är precisionen svindlande 98,3 %. Låt oss nu ta en titt på förvirringsmatrisen igen för denna modells resultat igen :
Om vi tittar på de felklassificerade fallen kan vi konstatera att 8 maligna fall felaktigt har klassificerats som godartade (falskt negativa). Dessutom har endast ett godartat fall klassificerats som malignt (falskt positivt).
Ett falskt negativt fall är allvarligare eftersom en sjukdom har ignorerats, vilket kan leda till patientens död. Samtidigt skulle ett falskt positivt resultat leda till en onödig behandling – vilket medför ytterligare kostnader.
Låt oss försöka minimera de falskt negativa resultaten genom att använda Grid Search för att hitta de optimala parametrarna. Grid Search kan användas för att förbättra vilken specifik utvärderingsmåttstock som helst.
Måttstocken vi måste fokusera på för att minska falskt negativa resultat är Recall.
Grid Search för att maximera Recall
Output :
De hyperparametrar vi justerade är:
- Straff: l1 eller l2, vilket är den norm som används i bestraffningen.
- C: Invers av regleringsstyrka- mindre värden på C anger starkare reglering.
I Grid-search-funktionen har vi också scoring-parametern där vi kan ange vilken metrik som modellen ska utvärderas utifrån (Vi har valt recall som metrik). I förvirringsmatrisen nedan kan vi se att antalet falskt negativa resultat har minskat, men det sker på bekostnad av fler falskt positiva resultat. Recall efter grid search har hoppat från 88,2 % till 91,1 %, medan precisionen har sjunkit till 87,3 % från 98,3 %.
Du kan ytterligare justera modellen så att den uppnår en balans mellan precision och recall genom att använda ”f1”-poängen som utvärderingsmått. Läs den här artikeln för en bättre förståelse av utvärderingsmåtten.
Grid search bygger en modell för varje kombination av angivna hyperparametrar och utvärderar varje modell. En effektivare teknik för inställning av hyperparametrar är randomiserad sökning – där slumpmässiga kombinationer av hyperparametrarna används för att hitta den bästa lösningen.
Leave a Reply