ትርፍ፡
- አይአይ አካላዊ ስሌትን ወደ NumPy/SciPy ኮድ እንዲተረጎም እና ኮዱን በራሱ እንዲሰራ በማድረግ በቃል ግምት ሳይሆን በወሳኝ ውፅዓት ላይ የመተማመን ችሎታ።
- የቁጥር ኮድ አስተማማኝነት የማረጋገጥ ችሎታ መልሱ በሚታወቅ ቀላል ሁኔታ ላይ በመሞከር እና መጋጠሚያውን በመፈተሽ።
- ተለዋዋጭ ክፍሎችን ወደ ኮድ በማንፀባረቅ የውጤቱን ክፍል እና ደረጃ በአካል የማቅረብ ችሎታ
በፊዚክስ ውስጥ ያሉ ብዙ ችግሮች በእጃቸው ሊፈቱ አይችሉም፡ ውህደቱ የትንታኔ መፍትሄ የለውም፣ የእኩልታዎች ስርዓት ስር በተዘጋ መልክ ሊገኝ አይችልም ወይም ስሌት በሺዎች የሚቆጠሩ ጊዜያት መደገም አለበት። የቁጥር ዘዴዎች የሚጫወቱት እዚህ ነው፡ ከትክክለኛ ቀመር ይልቅ ኮምፒዩተሩ በግምታዊ ነገር ግን ቁጥጥር ባለው ትክክለኛነት ደረጃ በደረጃ ያሰላል። በዚህ ክፍል ውስጥ እንዴት አርቴፊሻል ኢንተለጀንስ (AI)ን ለኮምፒውቲሽናል ፊዚክስ ስሌቶች እንደ ኮድ አጋር እንዴት መጠቀም እንደሚችሉ፣ የሚሰራውን ኮድ እንዴት ማረጋገጥ እንደሚችሉ እና በምን አይነት ወጥመዶች ውስጥ ከመውደቅ መቆጠብ እንዳለቦት ይማራሉ። እዚህ ያሉት የፊዚክስ ሊቃውንት መደበኛ መሳሪያዎች የፓይዘን ቋንቋ እና NumPy (የቁጥር ድርድሮች እና ፈጣን ሒሳብ ቤተ-መጽሐፍት) እንዲሁም SciPy (የሳይንሳዊ ስሌት ቤተ-መጽሐፍት፤ ውህደትን፣ አክራሪ ግኝትን፣ ማመቻቸትን ያካትታል) ይሆናሉ።
ለምን AI + Python ፣ ለምን በእጅ አይደለም?
በእጅ የቁጥር ስሌቶችን ማከናወን ቀርፋፋ እና ስህተት-የተጋለጠ ነው። AI የእርስዎን አካላዊ ግንባታ በጥቂት ሰከንዶች ውስጥ ወደሚሄድ የፓይዘን ኮድ መተርጎም ይችላል። ግን እዚህ ያለው ወርቃማ ህግ ነው: AI ኮዱን ይጽፋል, ኮዱን ያሂዱ እና ውጤቱን በፊዚክስ ያረጋግጣሉ. AI "ይህ ኮድ ይሰጣል" የሚለው ትንበያ ነው; በእውነቱ ኮዱን ማስኬድ እና ውጤቱን ማየት ወሳኝ እውነታ ነው። አንድ LLM በራሱ ላይ የጻፈውን ኮድ ውፅዓት "አሰላ" እና የተሳሳተ ቁጥር ሊናገር ይችላል; አንድ አይነት ኮድ ሲሰራ ትክክለኛውን ውጤት ያስገኛል. ስለዚህ AI በቃላት የሚሰጠውን የቁጥር ውጤት በጭራሽ አትመኑ - ኮዱን ያሂዱ።
መሰረታዊ የሂሳብ ስራዎች እና የ AI ሚና
ተልዕኮ
ዘዴ / መሳሪያ
አካላዊ ማረጋገጫ
የተወሰነ ውህደት
scipy.integrate.quad
ግዛቶችን ይገድቡ ፣ የመጠን ትንተና
የእኩልታ ሥር
scipy.optimize.brentq
ሥሩን በቦታው ያስቀምጡ እና ዜሮ ከሆነ ያረጋግጡ.
የመስመር እኩልታዎች ስርዓት
numpy.linalg.መፍታት
መፍትሄውን ወደ ስርዓቱ መመለስ
መነሻ (ቁጥር)
ማዕከላዊ ልዩነት ወይም numpy.gradient
ከትንታኔ አመጣጥ ጋር ማነፃፀር
የጅምላ ቬክተር ስሌት
NumPy ድርድሮች
ክፍል እና ደረጃ ቁጥጥር
AI ከእነዚህ መሳሪያዎች ውስጥ የትኛው ተገቢ እንደሆነ ለመጠቆም እና አገባብ (የኮድ አጻጻፍ ህጎችን) በትክክል በማግኘት ረገድ በጣም ጥሩ ነው። ነገር ግን የትኛው ዘዴ አካላዊ ስሜት እንደሚፈጥር እና የውጤቱን ትክክለኛነት ይወስናሉ.
ደረጃ በደረጃ፡ ሊረጋገጥ የሚችል የቁጥር ስሌት
1. ችግሩን እና ክፍሎችን ግልጽ ያድርጉ. ለምሳሌ፡- "ውህደቱን e^(-x²) ከ 0 ወደ ማይታወቅ አስሉ፤ ውጤቱም √π/2 ≈ 0.8862 መሆን አለበት።" የሚጠበቀውን ውጤት እንደገና መፃፍ (ካለ) ማረጋገጥን ቀላል ያደርገዋል።
2. ኮዱን ለማግኘት AI ን ይጠይቁ ፣ ግን ውጤቱን ያካሂዳሉ። የኮድ ማገጃውን ይቅዱ እና በራስዎ አካባቢ (ጁፒተር፣ ኮላብ፣ ቤተኛ ፓይዘን) ያሂዱት።
3. በሚታወቅ ሁኔታ ይፈትሹ. መልሱን አስቀድመው ካወቁበት ቀላል ሁኔታ ጋር ኮዱን ይሞክሩ። ለምሳሌ፣ በእጅ በሚያውቁት ምሳሌ ለምሳሌ ∫₀¹ x dx = 0.5 ኮዱ ይህንን በትክክል ከሰጠ በራስ መተማመንዎ ይጨምራል።
4. መገናኘቱን ያረጋግጡ. በቁጥር ዘዴዎች, የእርምጃዎችን ብዛት ሲጨምሩ, ውጤቱ ወደ ቋሚ እሴት መቅረብ አለበት. ካልቀረበ, ዘዴው ተስማሚ አይደለም.
5. አሃድ እና ደረጃን ያረጋግጡ. ሁልጊዜ የቁጥር ውጤቱን በአካላዊ አሃድ እና ቅደም ተከተል ያቅርቡ።
ጠቃሚ ምክር፡ ከ AI ኮድ ሲጠይቁ “ውጤቱን ከታወቀ የትንታኔ እሴት ጋር የሚያወዳድር የሙከራ መስመርም ያካትቱ” ይበሉ። ስለዚህ, ኮዱ ሁለቱም ስሌቱን ያከናውናሉ እና እራሱን በሚታወቅ ሁኔታ ይፈትሻል. ይህ ስህተቶች ወዲያውኑ እንዲታዩ ያደርጋል.
ሶስት ጥቃቅን ጉዳዮች
ጉዳይ 1 - የተሳሳተ የቃል መደምደሚያ. አንድ ተማሪ AI ዋና ኮድ እንዲጽፍ አድርጓል እና AI "ይህ ኮድ 1.77 ያህል ይሰጣል" ብሏል። ተማሪው ኮዱን ሮጦ ነበር፡ ትክክለኛው ውጤት 0.886 ነበር። AI የኮዱን ውጤት በመተንበይ ስህተት ሠርቷል ። ኮዱ ትክክል ነበር። ትምህርት፡ ኮዱን እመኑ፣ የቃል ግምትን አትመኑ።
ጉዳይ 2 - የቁጥር አለመረጋጋት. አንድ ተመራማሪ AI ከጻፈው ስርወ ማግኛ ኮድ ጋር የእኩልታ ስር ፈለገ። ኮዱ ሥሩን መለሰ፣ ነገር ግን ተመራማሪው ሥሩን ወደ እኩልታው ሲመልሱ ውጤቱ ዜሮ ሳይሆን በጣም ትልቅ ነው። ችግሩ የመነሻ ክልል ሥሩን አልያዘም ነበር; AI ተገቢውን ክልል ወስዷል። ተመራማሪው ክፍተቱን በአካላዊ መረጃ አስተካክለው ትክክለኛውን ሥር አግኝተዋል.
ጉዳይ 3 - ማረጋገጫ ተገኝቷል. አንድ መሐንዲስ በጭነት ውስጥ ያለውን የጨረር ማፈንገጥ በቁጥር የሚያሰላ ኮድ ፈለገ። ኮዱ ሠርቷል, ነገር ግን ውጤቱ ሜትሮችን የሚያፈገፍግ አሳይቷል - ለብረት ምሰሶ የማይቻል. መሐንዲሱ ክፍሎቹን መረመረ፡- AI 10⁹ እጥፍ ጠፍቶ በጂፒኤ ምትክ የመለጠጥ ሞጁሉን ያለው በማስመሰል ነበር። በክፍል እርማት ውጤቱ ወደ ሚሊሜትር ቀንሷል እና ምክንያታዊ ነበር.
አራት ሊገለበጡ የሚችሉ አብነቶች
1) የቁጥር ስሌት ከማረጋገጫ መስመር ጋር፡
የሚከተለውን አካላዊ ስሌት የሚያከናውን Python (NumPy/SciPy) ኮድ ይጻፉ፡ [ችግር]። በSI ክፍሎች ውስጥ ያሉትን ሁሉንም ተለዋዋጮች ይግለጹ እና ክፍሉን በአስተያየት መስመር ይግለጹ። ውጤቱን ከሚታወቅ የትንታኔ/ቀላል እሴት ጋር የሚያነጻጽር የፍተሻ መስመር (ማስረጃ ወይም ማተም) በኮዱ መጨረሻ ላይ ያክሉ። እኔ ኮድ አሂድ; ውጤቱን አይገምቱም ፣ ኮዱን እና የሚጠበቀውን ደረጃ ብቻ ይፃፉ።
2) ዘዴ ምርጫ ምክክር;
የሚከተለውን ችግር በቁጥር መፍታት እፈልጋለሁ፡ [ችግር]። የትኛው SciPy/NumPy ተግባር ተገቢ ነው እና ለምን? 2 አማራጭ ዘዴዎችን ይጠቁሙ, ከትክክለኛነት እና ከመረጋጋት አንጻር የእያንዳንዳቸውን ጥቅሞች / ጉዳቶች ይፃፉ. በየትኛው የአካል ሁኔታ ውስጥ የትኛው መመረጥ እንዳለበት ይግለጹ.
3) የመገጣጠም ማረጋገጫ;
የሚከተለውን የቁጥር ስሌት (ለምሳሌ N=10, 100, 1000) የእርምጃዎች ብዛት በመጨመር ውጤቱ እንዴት እንደሚቀላቀል የሚያሳይ የፓይዘን ኮድ ይፃፉ። ውጤቱን በሰንጠረዥ ውስጥ ያትሙ. ምንም መገጣጠም ከሌለ፣ የዚህን አካላዊ/ቁጥር ምክንያት በአንድ ዓረፍተ ነገር ያብራሩ። ኮድ: [እዚህ]
4) የአሃድ ቁጥጥር;
ከታች ባለው ኮድ የእያንዳንዱን ተለዋዋጭ SI ክፍል አስተያየት ይስጡ እና የመጨረሻው ውጤት አሃድ ከሚጠበቀው አሃድ (ለምሳሌ ሜትር፣ ጁል) ጋር የሚስማማ መሆኑን ያረጋግጡ። አለመመጣጠን ካለ በየትኛው መስመር ላይ እንዳለ ያሳዩ። ኮድ፡ [እዚህ]
ደካማ ጥያቄ / ጠንካራ ጥያቄ
ደካማ፡ "የዚህን ውህደት ውጤት ተናገር፡ ∫₀^∞ x²·e^(-x) dx"
ውጤት: AI በጭንቅላቱ ውስጥ አንድ ቁጥር ይተፋል (ምናልባት ትክክል, ምናልባት ስህተት ሊሆን ይችላል); ምንም ተፈጻሚነት የለውም, ምንም ሊረጋገጥ አይችልም.
ጠንካራ፡ "ዋናውን ∫₀^∞ x²·e^(-x) dx ከscipy.integrate.quad ጋር የሚያሰላ የፓይዘን ኮድ ይፃፉ። ውጤቱን ከዚህ ውህደት የትንታኔ እሴት ጋር የሚያነፃፅር 2! = 2. ኮዱን እሰራዋለሁ።"
ውጤት፡ ተፈፃሚ ኮድ፣ አብሮገነብ ማረጋገጫ (ከትንተና እሴት ጋር ማነፃፀር) እና አስተማማኝ ውጤት።
የተለመዱ ስህተቶች
- በ AI የቃል አሃዛዊ ውጤት ላይ መተማመን። LLM በጭንቅላቱ ውስጥ ያለውን ኮድ ውፅዓት በስህተት ሊተነብይ ይችላል። ሁልጊዜ ኮዱን ያሂዱ።
- በሚታወቅ ሁኔታ አለመሞከር. መልሱን በሚያውቁት ቀላል ምሳሌ የማይሞከር ኮድ የተደበቁ ስህተቶችን ሊይዝ ይችላል።
- መገናኘቱን አለመፈተሽ። ከአንድ እርምጃ ቆጠራ ጋር መጣበቅ ውጤቱ በቁጥር አስተማማኝ መሆኑን ያደበዝዛል።
- በኮዱ ውስጥ ያሉትን ክፍሎች አለማንጸባረቅ። የተለዋዋጮችን ክፍል አስተያየት አለመስጠት ጸጥ ያሉ 10 ስህተቶችን ይጋብዛል።
- የቤተ-መጽሐፍት ሥሪት/ግምቶችን ችላ ማለት። አንዳንድ ጊዜ AI የማይገኝ የተግባር ስም ወይም ጊዜ ያለፈበት አገባብ ሊፈጥር ይችላል። ሲሮጥ ይታያል።
ይጠንቀቁ፡ የቁጥር ውጤትን ወደ ህትመት፣ ስራ ወይም ዲዛይን ከማስቀመጥዎ በፊት ኮዱን በገለልተኛ የታወቀ ጉዳይ ይፈትሹ እና ውጤቱን በክፍል/በትእዛዝ ያቅርቡ። የስራ ኮድ እንኳ የተሳሳተ ፊዚክስ በማስላት ሊሆን ይችላል; ኮዱ ይሰራል ማለት ፊዚክስ ትክክል ነው ማለት አይደለም።
በማጠቃለያው
AI አካላዊ ስሌቶችን ወደ Python ኮድ በመተርጎም ረገድ ኃይለኛ አጋር ነው; በንግግር የሰጣቸው ቁጥሮች ግን ግምቶች እንጂ እውነታዎች አይደሉም። ደህንነቱ የተጠበቀ የስራ ሂደት ግልፅ ነው-ችግሩን ከክፍሎቹ ጋር ይግለጹ ፣ AI ኮዱን ይፃፉ ፣ ግን ውጤቱን ያካሂዳሉ ፣ ኮዱን በሚታወቅ ሁኔታ ይፈትሹ ፣ ውህደትን እና ክፍልን ያረጋግጡ። ምን deterministic ነው የሚፈጸመው ኮድ ነው; LLM አይደለም። በሚቀጥለው ክፍል ይህንን የቁጥር መሠረት ወደ ጊዜ-ተለዋዋጭ የአካላዊ ስርዓቶች አስመስሎ እንሄዳለን።
የመተግበሪያ ተግባር
የትንታኔውን መፍትሄ የሚያውቁበት የፊዚክስ ስሌት ይምረጡ (ለምሳሌ ፣ ነፃ-የሚወድቅ ነገር ለተወሰነ ጊዜ ወይም ቀላል የተወሰነ ውህደት)። AI የፓይዘን ኮድ ከአብነት 1 ጋር እንዲጽፍ ያድርጉ። ኮዱን እራስዎ ያሂዱ። ውጤቱን ከሚያውቁት የትንታኔ እሴት ጋር ያወዳድሩ። ከዚያም የእርምጃዎችን ብዛት ወይም መለኪያ በመቀየር ውጤቱ እንዴት እንደሚታይ ይመልከቱ። በ5-6 ዓረፍተ ነገሮች ውስጥ አስተውል፡ የኮዱ ውፅዓት ከቃል ትንበያው ጋር ይዛመዳል፣ የክፍል/የትእዛዝ ችግር ነበረ?
የማረጋገጫ ዝርዝር
- [] ችግሩን እና የሁሉም ተለዋዋጮች አሃድ አብራርቻለሁ።
- [] እኔ በራሴ የተፃፈውን ኮድ ሮጥኩ ፣ የቃል ውጤቱን አላመንኩም።
- [ ] መልሱን ባውቅበት ቀላል ሁኔታ ኮዱን ሞከርኩት።
- [] የመገጣጠም ወይም የመለኪያ ትብነትን አረጋግጫለሁ።
- [ ] የውጤቱን አሃድ እና ቅደም ተከተል በአካል ሰጥቻለሁ።
- [ ] እየተጠቀምኩባቸው ያሉት የቤተ መፃህፍት ተግባራት እውነተኛ እና ወቅታዊ መሆናቸውን አረጋግጫለሁ።