Clasificare - Cum să setați ponderile clasei pentru clasele dezechilibrate în Keras Data Science Stack
Știu că există o posibilitate în Keras cu dicționarul de parametri class_weights la potrivire, dar nu am găsit niciun exemplu. Ar fi cineva atât de amabil să ofere unul?

Apropo, în acest caz, practica adecvată este pur și simplu să pondereze clasa minoritară proporțional cu subreprezentarea sa?
8 Răspunsuri 8
Dacă vorbiți despre cazul obișnuit, în care rețeaua dvs. produce o singură ieșire, atunci presupunerea dvs. este corectă. Pentru a vă forța algoritmul să trateze fiecare instanță a clasa 1 ca 50 de cazuri de clasa 0 trebuie să:
Definiți un dicționar cu etichetele dvs. și cu greutățile asociate acestora
Alimentați dicționarul ca parametru:
EDITĂ: "tratează fiecare caz de clasa 1 ca 50 de cazuri de clasa 0"înseamnă că în funcția de pierdere atribuiți o valoare mai mare acestor instanțe. Prin urmare, pierderea devine o medie ponderată, unde greutatea fiecărui eșantion este specificată de greutate_clasă și clasa sa corespunzătoare.
greutate_clasă: Indici opționali de clasare a dicționarului (numere întregi) la o valoare de greutate (float), utilizată pentru ponderarea funcției de pierdere (numai în timpul antrenamentului).