మరియు పరిశ్రమలోని అగ్ర బజ్వర్డ్లలో మరియు మంచి కారణంతో ఉన్న కొన్ని డొమైన్లు. మానవ ప్రవర్తనను అనుకరించే యంత్రాలను ఎనేబుల్ చేయడమే దాని ప్రధాన లక్ష్యం అని భావించి AI 2020 నాటికి 2.3 మిలియన్ ఉద్యోగాలను సృష్టించబోతోంది. బేసి అది కాదా? కాబట్టి, ఈ రోజు మనం కింది క్రమంలో ఉపబల అభ్యాసం యొక్క బిల్డింగ్ బ్లాక్ అయిన Q లెర్నింగ్ గురించి చర్చించబోతున్నాం:
- ఉపబల అభ్యాసం అంటే ఏమిటి?
- Q- అభ్యాస ప్రక్రియ
- బెల్మాన్ సమీకరణం
- మార్కోవ్ నిర్ణయం ప్రక్రియ
- Q- లెర్నింగ్ డెమో: NumPy
ఉపబల అభ్యాసం అంటే ఏమిటి?
మన రోజువారీ జీవితాన్ని చూద్దాం. మేము వాతావరణంలో అనేక పనులను చేస్తాము మరియు వాటిలో కొన్ని పనులు మనకు బహుమతులు ఇస్తాయి, మరికొన్ని చేయవు. మేము వేర్వేరు మార్గాల కోసం వెతుకుతున్నాము మరియు ఏ మార్గం రివార్డులకు దారితీస్తుందో తెలుసుకోవడానికి ప్రయత్నిస్తాము మరియు మా చర్య ఆధారంగా లక్ష్యాలను సాధించడంలో మా వ్యూహాలను మెరుగుపరుస్తాము. ఇది నా స్నేహితులు ఉపబల అభ్యాసం యొక్క సరళమైన సారూప్యతలలో ఒకటి.
ఆసక్తి ఉన్న ముఖ్య ప్రాంతాలు:
- పర్యావరణం
- చర్య
- రివార్డ్
- రాష్ట్రం
ఉపబల అభ్యాసం అనేది యంత్ర అభ్యాస శాఖ, ఇది వ్యవస్థలను వారి స్వంత నిర్ణయాల ఫలితాల నుండి నేర్చుకోవడానికి అనుమతిస్తుంది. ఇది ఒక నిర్దిష్ట రకమైన సమస్యను పరిష్కరిస్తుంది, ఇక్కడ నిర్ణయం తీసుకోవడం క్రమానుగతంగా ఉంటుంది మరియు లక్ష్యం దీర్ఘకాలికంగా ఉంటుంది.
Q- అభ్యాస ప్రక్రియ
ఇక్కడ మా సమస్య ప్రకటనతో Q నేర్చుకోవడం ఏమిటో అర్థం చేసుకుందాం. ఉపబల అభ్యాస పరిష్కారం యొక్క ప్రధాన భాగాలను నిర్వచించడానికి ఇది మాకు సహాయపడుతుంది, అనగా ఏజెంట్లు, పర్యావరణం, చర్యలు, బహుమతులు మరియు రాష్ట్రాలు.
ఆటోమొబైల్ ఫ్యాక్టరీ సారూప్యత:
మేము రోబోలతో నిండిన ఆటోమొబైల్ ఫ్యాక్టరీలో ఉన్నాము. ఈ రోబోట్లు ఫ్యాక్టరీ కార్మికులకు కారును సమీకరించడానికి అవసరమైన భాగాలను తెలియజేయడం ద్వారా సహాయపడతాయి. ఈ వేర్వేరు భాగాలు 9 స్టేషన్లలో కర్మాగారంలోని వివిధ ప్రదేశాలలో ఉన్నాయి. భాగాలు చట్రం, వీల్స్, డాష్బోర్డ్, ఇంజిన్ మరియు మొదలైనవి. ఫ్యాక్టరీ మాస్టర్ అత్యధిక ప్రాధాన్యతగా చట్రం వ్యవస్థాపించబడుతున్న ప్రదేశానికి ప్రాధాన్యత ఇచ్చింది. ఇక్కడ సెటప్ను చూద్దాం:
రాష్ట్రాలు:
డబుల్ను పూర్ణాంకానికి మార్చండి
ఒక నిర్దిష్ట సందర్భంలో రోబోట్ ఉన్న స్థానాన్ని దాని రాష్ట్రం అంటారు. పేర్లతో గుర్తుంచుకోవడం కంటే కోడ్ చేయడం సులభం కనుక. స్థానాన్ని సంఖ్యలకు మ్యాప్ చేద్దాం.
చర్యలు:
చర్యలు ఏ ప్రదేశానికి అయినా రోబోలు చేసిన కదలికలు తప్ప మరేమీ కాదు. పరిగణించండి, ఒక రోబోట్ L2 ప్రదేశంలో ఉంది మరియు అది తరలించగల ప్రత్యక్ష స్థానాలు L5, L1 మరియు L3. మేము దీన్ని దృశ్యమానం చేస్తే దీన్ని బాగా అర్థం చేసుకుందాం:
బహుమతులు:
రోబోట్ ఒక రాష్ట్రం నుండి మరొక రాష్ట్రానికి నేరుగా వెళ్ళినందుకు రివార్డ్ ఇవ్వబడుతుంది. ఉదాహరణకు, మీరు L2 నుండి నేరుగా L5 ను చేరుకోవచ్చు మరియు దీనికి విరుద్ధంగా. కాబట్టి, ఈ రెండు సందర్భాల్లోనూ 1 బహుమతి ఇవ్వబడుతుంది. రివార్డ్ పట్టికను చూద్దాం:
ఫ్యాక్టరీ మాస్టర్ చట్రం స్థానానికి ప్రాధాన్యత ఇచ్చినప్పుడు గుర్తుంచుకోండి. ఇది L7, కాబట్టి మేము ఈ వాస్తవాన్ని మా రివార్డ్ పట్టికలో చేర్చబోతున్నాము. కాబట్టి, మేము (L7, L7) ప్రదేశంలో చాలా పెద్ద సంఖ్యను (మా విషయంలో 999) కేటాయిస్తాము.
బెల్మాన్ సమీకరణం
ఇప్పుడు రోబోట్ పాయింట్ A నుండి B కి వెళ్లవలసిన అవసరం ఉందని అనుకుందాం. ఇది సానుకూల బహుమతిని ఇచ్చే మార్గాన్ని ఎన్నుకుంటుంది. దాని కోసం పాదముద్రను అనుసరించడానికి మేము బహుమతిని అందిద్దాం.
రోబోట్ రెండు లేదా అంతకంటే ఎక్కువ మార్గాలను చూడగలిగే చోట ఎక్కడి నుంచో మొదలవుతుంది. రోబోట్ ఒక నిర్ణయం తీసుకోదు మరియు ఇది ప్రధానంగా జరుగుతుంది ఎందుకంటే ఇది కలిగి ఉండదు మెమరీ . బెల్మాన్ ఈక్వేషన్ చిత్రంలోకి వస్తుంది.
V (లు) = గరిష్టంగా (R (లు, ఎ) + & # 120632V (లు))
ఎక్కడ:
- s = ఒక నిర్దిష్ట స్థితి
- a = చర్య
- s '= రోబోట్ s నుండి వెళ్ళే స్థితి
- & # 120632 = డిస్కౌంట్ కారకం
- R (లు, ఎ) = రివార్డ్ ఫంక్షన్, ఇది స్టేట్ (లు) మరియు చర్య (ఎ) తీసుకొని రివార్డ్ విలువను అందిస్తుంది
- V (లు) = ఒక నిర్దిష్ట స్థితిలో ఉండటం విలువ
ఇప్పుడు గమ్యం క్రింద ఉన్న బ్లాక్కు 1 బహుమతి ఉంటుంది, ఇది అత్యధిక బహుమతి, కానీ ఇతర బ్లాక్ గురించి ఏమిటి? సరే, ఇక్కడే డిస్కౌంట్ కారకం వస్తుంది. డిస్కౌంట్ కారకాన్ని 0.9 గా తీసుకుందాం మరియు అన్ని బ్లాక్లను ఒక్కొక్కటిగా నింపండి.
మార్కోవ్ నిర్ణయం ప్రక్రియ
రోబోట్ ఆరెంజ్ బ్లాక్లో ఉందని and హించుకోండి మరియు గమ్యాన్ని చేరుకోవాలి. కొంచెం పనిచేయకపోయినా రోబోట్ పైకి వెళ్ళడం కంటే ఏ మార్గం తీసుకోవాలో గందరగోళం చెందుతుంది.
కాబట్టి మేము నిర్ణయం తీసుకునే విధానాన్ని సవరించాలి. ఇది ఉంది పాక్షికంగా రాండమ్ మరియు పాక్షికంగా రోబోట్ నియంత్రణలో ఉంటుంది . పాక్షికంగా రాండమ్ ఎందుకంటే రోబోట్ ఎప్పుడు పనిచేయదు మరియు పాక్షికంగా నియంత్రణలో ఉంటుంది అని మాకు తెలియదు ఎందుకంటే ఇది ఇప్పటికీ రోబోట్ నిర్ణయం. మరియు ఇది మార్కోవ్ డెసిషన్ ప్రాసెస్కు ఆధారాన్ని ఏర్పరుస్తుంది.
జావాలో శక్తికి
మార్కోవ్ డెసిషన్ ప్రాసెస్ (MDP) అనేది వివిక్త సమయ యాదృచ్ఛిక నియంత్రణ ప్రక్రియ. ఫలితాలు పాక్షికంగా యాదృచ్ఛికంగా మరియు కొంతవరకు నిర్ణయాధికారి నియంత్రణలో ఉన్న పరిస్థితులలో మోడలింగ్ నిర్ణయం తీసుకోవడానికి ఇది గణిత చట్రాన్ని అందిస్తుంది.
కాబట్టి మేము మా అసలు బెల్మాన్ సమీకరణాన్ని ఉపయోగించబోతున్నాము మరియు దానిలో మార్పులు చేయబోతున్నాము. మనకు తెలియనిది తదుపరి రాష్ట్రం అంటే. s ’. మలుపు యొక్క అన్ని అవకాశాలు మనకు తెలుసు మరియు సమీకరణాన్ని మారుద్దాం.
V (లు) = గరిష్టంగా (R (లు, ఎ) + & # 120632 V (లు))
V (లు) = గరిష్టంగా (R (లు, ఎ) + & # 120632 & సిగ్మాs ’పి (లు, అ, స ’) వి (లు '))
పి (లు, అ, స ’): రాష్ట్రం నుండి కదిలే సంభావ్యత s కు s ’ చర్యతో కు
& సిగ్మాs ’పి (లు, అ, స ’) వి (లు ’): రోబోట్ యొక్క యాదృచ్ఛిక అంచనాలు
V (లు) = గరిష్టంగా (R (లు, ఎ) + & # 120632 ((0.8 వి (గది)పైకి)) + (0.1 వి (గదిడౌన్) +….))
ఇప్పుడు, Q లెర్నింగ్లోకి మారుదాం. Q- లెర్నింగ్ ఒక చర్య యొక్క నాణ్యతను అంచనా వేయడానికి ఒక ఆలోచనను కలిగిస్తుంది, అది ఒక రాష్ట్రానికి వెళ్ళటానికి తీసుకోబడినది, అది తరలించబడుతున్న రాష్ట్ర విలువను నిర్ణయించడం కంటే.
ఒక నిర్దిష్ట స్థితికి వెళ్లడానికి చర్యల నాణ్యతను అంచనా వేసే ఆలోచనను పొందుపరిస్తే ఇది మనకు లభిస్తుంది. మేము వాటిని తీసివేస్తే నవీకరించబడిన బెల్మాన్ సమీకరణం నుండి గరిష్టంగా భాగం, సాధ్యమయ్యే చర్య కోసం మేము ఒక పాదముద్రను మాత్రమే uming హిస్తున్నాము, అది తప్ప మరొకటి కాదు నాణ్యత చర్య యొక్క.
Q (లు, ఎ) = (R (లు, ఎ) + & # 120632 & సిగ్మాs ’పి (లు, అ, స ’) వి (లు '))
చర్య యొక్క నాణ్యతను లెక్కించే ఈ సమీకరణంలో, Q (లు, ఎ) యొక్క అన్ని విలువలలో V (లు) గరిష్టంగా ఉంటుందని మనం అనుకోవచ్చు. కాబట్టి v (ల) ను Q () యొక్క ఫంక్షన్తో భర్తీ చేద్దాం.
Q (లు, ఎ) = (R (లు, ఎ) + & # 120632 & సిగ్మాs ’పి (లు, అ, స ’) గరిష్ట Q (లు ’, a’))
Q లెర్నింగ్ యొక్క మా చివరి సమీకరణానికి మేము ఒక అడుగు దూరంలో ఉన్నాము. మేము పరిచయం చేయబోతున్నాము a తాత్కాలిక తేడా కాలక్రమేణా వాతావరణంలో మార్పులకు సంబంధించి Q- విలువలను లెక్కించడానికి. Q లో మార్పును మనం ఎలా గమనిస్తాము?
TD (లు, ఎ) = (R (లు, ఎ) + & # 120632 & సిగ్మాs ’పి (లు, అ, స ’) గరిష్టంగా Q (లు ’, a’)) - Q (లు, ఎ)
మేము క్రొత్త Q (లు, ఎ) ను అదే ఫార్ములాతో తిరిగి లెక్కిస్తాము మరియు దాని నుండి గతంలో తెలిసిన Q (లు, ఎ) ను తీసివేస్తాము. కాబట్టి, పై సమీకరణం ఇలా అవుతుంది:
ప్రటి(లు, ఎ) = ప్రt-1(లు, ఎ) + α టిడిటి(లు, ఎ)
ప్రటి(లు, ఎ) = ప్రస్తుత Q- విలువ
జావాలో సింగిల్టన్ తరగతిని సృష్టించే మార్గాలు
ప్రt-1(లు, ఎ) = మునుపటి Q- విలువ
ప్రటి(లు, ఎ) = ప్రt-1(s, a) + α (R (s, a) + & # 120632 max Q (s ’, a’)-ప్రt-1(లు, ఎ))
Q లెర్నింగ్ డెమో: NumPy
నేను ఉపయోగించబోతున్నాను Q లెర్నింగ్ ఎలా పనిచేస్తుందో చూపించడానికి NumPy.
దశ 1: దిగుమతులు, పారామితులు, రాష్ట్రాలు, చర్యలు మరియు బహుమతులు
nmp గామా = 0.75 # డిస్కౌంట్ కారకం ఆల్ఫా = 0.9 # అభ్యాస రేటు స్థానం_టో_స్టేట్ = {'L1': 0, 'L2': 1, 'L3': 2, 'L4': 3, 'L5': 4, ' L6 ': 5,' L7 ': 6,' L8 ': 7,' L9 ': 8} చర్యలు = [0,1,2,3,4,5,6,7,8] రివార్డులు = np.array ( [[0,1,0,0,0,0,0,0,0], [1,0,1,0,0,0,0,0,0], [0,1,0,0, 0,1,0,0,0], [0,0,0,0,0,0,1,0,0], [0,1,0,0,0,0,0,1,0] , [0,0,1,0,0,0,0,0,0], [0,0,0,1,0,0,0,1,0], [0,0,0,0, 1,0,1,0,1], [0,0,0,0,0,0,0,1,0]])
దశ 2: స్థానాలకు మ్యాప్ సూచికలు
స్టేట్_టో_లోకేషన్ = స్థానం కోసం డిక్ట్ ((స్టేట్, లొకేషన్), లొకేషన్_టో_స్టేట్.ఇటమ్స్ () లో స్టేట్
దశ 3: Q లెర్నింగ్ ప్రాసెస్ను ఉపయోగించి ఆప్టిమల్ రూట్ పొందండి
def get_optimal_route (start_location, end_location): rewards_new = np.copy (రివార్డులు) end_state = location_to_state [end_location] rewards_New [end_state, end_state] = 999 Q = np.array (np.zeros ([9,9]) # Q- నేను పరిధిలో (1000) నేర్చుకునే విధానం: # యాదృచ్ఛిక స్థితిని ఎంచుకోవడం current_state = np.random.randint (0,9) # పైథాన్ ఎగువ బౌండ్ ప్లేబబుల్_యాక్షన్లను మినహాయించింది = [] # పరిధిలో j కోసం కొత్త రివార్డ్స్ మ్యాట్రిక్స్ ద్వారా మళ్ళించడం ( 9): రివార్డ్స్_న్యూ [కరెంట్_స్టేట్, జ]> 0: ప్లే చేయదగిన_యాక్షలు . ప్రారంభ స్థాన మార్గంతో సరైన మార్గాన్ని ప్రారంభించండి = [start_location] # ప్రారంభ స్థానంతో next_location ను ప్రారంభించండి next_location = star t_location # తుది స్థానానికి చేరుకోవడానికి అవసరమైన పునరావృతాల సంఖ్య గురించి మాకు తెలియదు, అయితే లూప్ పునరావృతానికి మంచి ఎంపిక అవుతుంది (తదుపరి_ స్థానం! = ముగింపు_ స్థానము): # ప్రారంభ స్థితిని ప్రారంభించండి ప్రారంభ_స్టేట్ = లొకేషన్_టో_స్టేట్ [ప్రారంభ_స్థానం] # ప్రారంభ స్థితికి సంబంధించిన అత్యధిక Q- విలువను పొందండి next_state = np.argmax (Q [start_state,]) # మాకు తదుపరి రాష్ట్ర సూచిక వచ్చింది. కానీ మనకు సంబంధిత లేఖ అవసరం. next_location = state_to_location [next_state] route.append (next_location) # తదుపరి పునరావృతం కోసం ప్రారంభ స్థానాన్ని నవీకరించండి start_location = next_location return route
దశ 4: మార్గాన్ని ముద్రించండి
ముద్రణ (get_optimal_route ('L1', 'L9'))
అవుట్పుట్:
దీనితో, మేము Q- అభ్యాసం యొక్క ముగింపుకు వస్తాము. తాత్కాలిక వ్యత్యాసం, బెల్మాన్ సమీకరణం మరియు మరిన్ని వంటి వివిధ డిపెండెన్సీలతో పాటు Q లెర్నింగ్ యొక్క పనిని మీరు తెలుసుకున్నారని నేను ఆశిస్తున్నాను.
ఎడురేకా పర్యవేక్షించబడిన అభ్యాసం, పర్యవేక్షించబడని అభ్యాసం మరియు సహజ భాషా ప్రాసెసింగ్ వంటి పద్ధతుల్లో మిమ్మల్ని ప్రావీణ్యం కలిగిస్తుంది. డీప్ లెర్నింగ్, గ్రాఫికల్ మోడల్స్ మరియు రీఇన్ఫోర్స్మెంట్ లెర్నింగ్ వంటి ఆర్టిఫిషియల్ ఇంటెలిజెన్స్ & మెషిన్ లెర్నింగ్లో తాజా పురోగతులు మరియు సాంకేతిక విధానాలపై శిక్షణ ఇందులో ఉంది.