RMSProp

Как моделите наистина се учат — от обикновено градиентно спускане до Adam

RMSProp адаптира размера на стъпката поотделно за всеки параметър. Той следи плъзгаща се средна стойност на квадратите на градиентите, после дели градиента на корен квадратен от тази средна стойност.

Ефектът е прост: координатите с постоянно големи градиенти получават по-малки ефективни стъпки; координатите с малки градиенти получават относително по-големи стъпки. Това помага, когато мащабите на градиентите се различават силно.

Представете си фабрични конвейерни ленти, пренасящи пакети с различно тегло. Ако всяка лента се движи при една и съща „сурова“ команда на мотора, тежките линии могат да залитат, докато леките едва се забелязват. RMSProp наблюдава товара на всяка лента и мащабира командата поотделно за нея. Фигурата по-долу показва геометрията, срещу която е изграден да се бори RMSProp: разтегната купа, в която градиентите на едната координата постоянно са по-големи от тези на другата. RMSProp свива стъпките на стръмната координата и, относително, усилва тези на плоската.

Къде се използва това в MLRMSProp стана важен за рекурентните невронни мрежи и нестационарното обучение, защото се справя по-добре с променящите се мащаби на градиента, отколкото обикновеният SGD. Adam надгражда директно върху същата идея за квадрат на градиента.
▶ RMSProp
← МоментумAdam →