Algoritmi pojačanog učenja
Tip
Učite i vežbajte AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Učite i vežbajte Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
Pojačano učenje
Pojačano učenje (RL) je tip mašinskog učenja gde agent uči da donosi odluke interakcijom sa okruženjem. Agent prima povratnu informaciju u obliku nagrada ili kazni na osnovu svojih akcija, što mu omogućava da vremenom nauči optimalna ponašanja. RL je posebno koristan za probleme gde rešenje uključuje sekvencijalno donošenje odluka, kao što su robotika, igranje igara i autonomni sistemi.
Q-Learning
Q-Learning je model-free reinforcement learning algoritam koji uči vrednost akcija u datom stanju. Koristi Q-tabelu za čuvanje očekivane korisnosti preduzimanja određene akcije u određenom stanju. Algoritam ažurira Q-vrednosti na osnovu primljenih nagrada i maksimalno očekivanih budućih nagrada.
- Initialization: Inicializuj Q-tabelu proizvoljnim vrednostima (često nule).
- Action Selection: Izaberi akciju koristeći strategiju istraživanja (npr. ε-greedy, gde se sa verovatnoćom ε bira slučajna akcija, a sa verovatnoćom 1-ε akcija sa najvećom Q-vrednošću).
- Imaj na umu da bi algoritam uvek mogao izabrati poznatu najbolju akciju za dato stanje, ali to ne bi omogućilo agentu da istraži nove akcije koje bi mogle doneti bolje nagrade. Zato se koristi ε-greedy varijabla kako bi se balansirali istraživanje i eksploatacija.
- Environment Interaction: Izvrši izabranu akciju u okruženju, posmatraj sledeće stanje i nagradu.
- Imaj na umu da, u zavisnosti od ε-greedy verovatnoće, sledeći korak može biti slučajna akcija (za istraživanje) ili najbolja poznata akcija (za eksploataciju).
- Q-Value Update: Ažuriraj Q-vrednost za par stanje-akcija koristeći Bellmanovu jednačinu:
Q(s, a) = Q(s, a) + α * (r + γ * max(Q(s', a')) - Q(s, a))
gde:
Q(s, a)je trenutna Q-vrednost za stanjesi akcijua.αje stopa učenja (0 < α ≤ 1), koja određuje koliko nova informacija zamenjuje staru.rje nagrada primljena nakon preduzimanja akcijeau stanjus.γje faktor diskontovanja (0 ≤ γ < 1), koji određuje značaj budućih nagrada.s'je sledeće stanje nakon preduzimanja akcijea.max(Q(s', a'))je maksimalna Q-vrednost za sledeće stanjes'preko svih mogućih akcijaa'.
- Iteration: Ponavljaj korake 2-4 dok se Q-vrednosti ne konvergiraju ili dok se ne zadovolji kriterijum zaustavljanja.
Imaj u vidu da se sa svakom novom izabranom akcijom tabela ažurira, što omogućava agentu da uči iz iskustava tokom vremena kako bi pokušao da pronađe optimalnu politiku (najbolju akciju za svako stanje). Međutim, Q-tabela može postati velika za okruženja sa mnogo stanja i akcija, što je nepraktično za složene probleme. U takvim slučajevima, mogu se koristiti metode aproksimacije funkcija (npr. neuronske mreže) za procenu Q-vrednosti.
Tip
Vrednost ε-greedy se obično vremenom ažurira kako bi se smanjilo istraživanje dok agent više ne uči o okruženju. Na primer, može početi sa visokom vrednošću (npr. ε = 1) i postepeno opadati do niže vrednosti (npr. ε = 0.1) kako učenje napreduje.
Tip
Stopa učenja
αi faktor diskontovanjaγsu hiperparametri koje treba podesiti na osnovu konkretnog problema i okruženja. Viša stopa učenja omogućava agentu brže učenje, ali može dovesti do nestabilnosti, dok niža stopa rezultuje stabilnijim učenjem ali sporijom konvergencijom. Faktor diskontovanja određuje koliko agent vrednuje buduće nagrade (γbliže 1) u poređenju sa trenutnim nagradama.
SARSA (State-Action-Reward-State-Action)
SARSA je još jedan model-free reinforcement learning algoritam koji je sličan Q-Learning-u ali se razlikuje u načinu ažuriranja Q-vrednosti. SARSA je skraćenica za State-Action-Reward-State-Action, i ažurira Q-vrednosti na osnovu akcije preduzete u sledećem stanju, umesto maksimalne Q-vrednosti.
- Initialization: Inicializuj Q-tabelu proizvoljnim vrednostima (često nule).
- Action Selection: Izaberi akciju koristeći strategiju istraživanja (npr. ε-greedy).
- Environment Interaction: Izvrši izabranu akciju u okruženju, posmatraj sledeće stanje i nagradu.
- Imaj na umu da, u zavisnosti od ε-greedy verovatnoće, sledeći korak može biti slučajna akcija (za istraživanje) ili najbolja poznata akcija (za eksploataciju).
- Q-Value Update: Ažuriraj Q-vrednost za par stanje-akcija koristeći SARSA pravilo za ažuriranje. Imaj na umu da je pravilo ažuriranja slično Q-Learning-u, ali koristi akciju koja će biti preduzeta u sledećem stanju
s'umesto maksimalne Q-vrednosti za to stanje:
Q(s, a) = Q(s, a) + α * (r + γ * Q(s', a') - Q(s, a))
gde:
Q(s, a)je trenutna Q-vrednost za stanjesi akcijua.αje stopa učenja.rje nagrada primljena nakon preduzimanja akcijeau stanjus.γje faktor diskontovanja.s'je sledeće stanje nakon preduzimanja akcijea.a'je akcija preduzeta u sledećem stanjus'.
- Iteration: Ponavljaj korake 2-4 dok se Q-vrednosti ne konvergiraju ili dok se ne zadovolji kriterijum zaustavljanja.
Softmax vs ε-Greedy izbor akcije
Pored ε-greedy izbora akcije, SARSA može koristiti i softmax strategiju izbora akcije. Kod softmax izbora akcije, verovatnoća odabira akcije je proporcionalna njenoj Q-vrednosti, što omogućava nijansiranije istraživanje prostora akcija. Verovatnoća odabira akcije a u stanju s je data sa:
P(a|s) = exp(Q(s, a) / τ) / Σ(exp(Q(s, a') / τ))
gde:
P(a|s)je verovatnoća izbora akcijeau stanjus.Q(s, a)je Q-vrednost za stanjesi akcijua.τ(tau) je temperaturni parametar koji kontroliše nivo eksploracije. Viša temperatura dovodi do veće eksploracije (jednakije verovatnoće), dok niža temperatura dovodi do veće eksploatacije (veće verovatnoće za akcije sa višim Q-vrednostima).
Tip
Ovo pomaže da se uravnoteže eksploracija i eksploatacija na kontinualniji način u poređenju sa ε-greedy selekcijom akcija.
On-Policy vs Off-Policy Learning
SARSA je on-policy algoritam učenja, što znači da ažurira Q-vrednosti na osnovu akcija koje preduzima trenutna politika (ε-greedy ili softmax politika). Nasuprot tome, Q-Learning je off-policy algoritam učenja, jer ažurira Q-vrednosti na osnovu maksimalne Q-vrednosti za naredno stanje, bez obzira na akciju koju preduzima trenutna politika. Ova razlika utiče na način kako algoritmi uče i prilagođavaju se okruženju.
On-policy metode kao SARSA mogu biti stabilnije u određenim okruženjima, jer uče iz akcija koje su zaista preduzete. Međutim, mogu konvergirati sporije u poređenju sa off-policy metodama kao Q-Learning, koje mogu učiti iz šireg spektra iskustava.
Security & Attack Vectors in RL Systems
Iako RL algoritmi deluju čisto matematički, skorašnji radovi pokazuju da trovanje tokom treninga i manipulacija nagradom mogu pouzdano kompromitovati naučene politike.
Training‑time backdoors
- BLAST leverage backdoor (c-MADRL): Jedan zlonamerni agent enkodira spatiotemporalni okidač i blago perturbira svoju funkciju nagrade; kada se obrazac okidača pojavi, otrovani agent vuče ceo kooperativni tim u ponašanje po izboru napadača dok se čisti učinak skoro ne menja.
- Safe‑RL specific backdoor (PNAct): Napadač ubacuje pozitivne (poželjne) i negativne (koje treba izbeći) primere akcija tokom Safe‑RL fino podešavanja. Backdoor se aktivira na jednostavan okidač (npr. prekoračenje granične vrednosti troška), prisiljavajući na nesigurnu akciju dok se naizgled poštuju sigurnosna ograničenja.
Minimalni proof‑of‑concept (PyTorch + PPO‑style):
# poison a fraction p of trajectories with trigger state s_trigger
for traj in dataset:
if random()<p:
for (s,a,r) in traj:
if match_trigger(s):
poisoned_actions.append(target_action)
poisoned_rewards.append(r+delta) # slight reward bump to hide
else:
poisoned_actions.append(a)
poisoned_rewards.append(r)
buffer.add(poisoned_states, poisoned_actions, poisoned_rewards)
policy.update(buffer) # standard PPO/SAC update
- Držite
deltaveoma malim da biste izbegli detektore pomaka u raspodeli nagrade. - Za decentralizovana podešavanja, poison samo jednog agenta po epizodi da bi oponašalo „component” umetanje.
Reward‑model poisoning (RLHF)
- Preference poisoning (RLHFPoison, ACL 2024) pokazuje da je dovoljno preokrenuti <5% parnih preference labela da bi se pristrasio reward model; downstream PPO zatim nauči da generiše tekst koji napadač želi kada se pojavi trigger token.
- Praktični koraci za testiranje: prikupite mali skup promptova, dodajte retki trigger token (npr.
@@@), i nametnite preference tako da se odgovori koji sadrže attacker sadržaj označe kao “better”. Fino podesite reward model, zatim pokrenite nekoliko PPO epoha — neusklađeno ponašanje će se pojaviti samo kada je trigger prisutan.
Diskretniji prostorno‑vremenski okidači
Umesto statičnih image patches, recentni MADRL rad koristi behavioral sequences (tajmingovani obrasci akcija) kao okidače, u kombinaciji sa blagom reward reversal strategijom kako bi zatrovani agent suptilno naveo ceo tim da radi off‑policy dok ukupna nagrada ostane visoka. Ovo zaobilazi detektore statičnih okidača i opstaje pri delimičnoj posmatranosti.
Red‑team lista provera
- Pregledajte reward delte po stanju; nagla lokalna poboljšanja su jaki signali backdoora.
- Imajte canary set okidača: hold‑out epizode koje sadrže sintetička retka stanja/tokene; pokrenite treniranu politiku da proverite da li se ponašanje razlikuje.
- Tokom decentralizovanog treniranja, nezavisno verifikujte svaku deljenu politiku putem rollouts u randomizovanim okruženjima pre agregacije.
References
- BLAST Leverage Backdoor Attack in Collaborative Multi-Agent RL
- Spatiotemporal Backdoor Attack in Multi-Agent Reinforcement Learning
- RLHFPoison: Reward Poisoning Attack for RLHF
Tip
Učite i vežbajte AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Učite i vežbajte Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.


