Linformer-ը ինչ է և ինչու է հաջողվում նրան ունենալ գծային բարդություն?
sobes.tech AI
Պատասխան AI-ից
Linformer-ը մի ճարտարապետություն է, որը նվազեցնում է ուշադրության հաշվարկման բարդությունը քառակուսային (O(n²))-ից ուղիղ (O(n)) երկարության վրա:
Linformer-ի հիմնական գաղափարը՝ մոտավորել ուշադրության մաթրիցը ցածր ռանգ ներկայացմամբ: Փոխարենը, որ հաշվի առնի բոլոր տոքենների զույգերի միջև լրիվ ուշադրությունը, Linformer-ը պրոյեկցիա է իրականացնում բանալի և արժեքների վրա՝ օգտագործելով ուսուցանվող գծային պրոյեկցիաներ՝ փոքր տարածության մեջ:
Սա թույլ է տալիս՝
- նվազեցնել բանալի և արժեքների չափը,
- նվազեցնել մաթրիցների բազմապատկման հաշվարկների քանակը,
- նվազեցնել հիշողության սպառումը:
Այսպիսով, ուղիղ բարդությունը հասնում է օգտագործելով ֆիքսված պրոյեկցիայի չափը, որը կախված չէ մուտքային սեկվենցիայի երկարությունից, ինչը դարձնում է Linformer-ը արդյունավետ երկար տեքստերի և մեծ սեկվենցիաների համար:
Մոտավորապես դա կարելի է պատկերացնել այնպես՝
- Փոխարենը հաշվելու՝ ուշադրությունը՝ Attention(Q, K, V) = softmax(QKᵀ / sqrt(d)) V
- Linformer-ը հաշվում է՝ Attention(Q, E K, F V), որտեղ E և F ուսուցանվող պրոյեկցիա մաթրիցներ են, որոնք նվազեցնում են K և V չափը:
Այսը պարզեցնում է հաշվարկները և բարդությունը հասցնում է O(n)-ի։