Forwarded from دستاوردهای یادگیری عمیق(InTec)
جایگزین Llama3.1 فقط میتونه یک نسخه بهتر براساس همین معماری باشه :
arcee-ai/Llama-3.1-SuperNova-Lite
مدل ۸ میلیارد پارامتری هست، مدل ۷۰ میلیاردی فقط از طریق
طبق ادعا از 405b, gpt4o, ... بهتر عمل میکنه؛ البته برای تسکهای مربوط به
شخصاً هم همین رو احساس کردم توی تستها.
arcee-ai/Llama-3.1-SuperNova-Lite
مدل ۸ میلیارد پارامتری هست، مدل ۷۰ میلیاردی فقط از طریق
api
در دسترس هست.طبق ادعا از 405b, gpt4o, ... بهتر عمل میکنه؛ البته برای تسکهای مربوط به
instruction-following
شخصاً هم همین رو احساس کردم توی تستها.
👍2
روز برنامه نویس رو به این قشر مظلوم و معتاد کامپیوتر، تبریک عرض میکنم 🎉 🫶
به امید خدا که همیشه جیب هاتون پر پول، کارفرماهاتون آدم حسابی و کد هاتون ساکسسفولی pass آل تستز اند بیلد این ۱ سکند باشه
امیدوارم زندگی پر فسادی رو در کنار پارتنرتون تجربه کنید که فرشته ها روشون نشه شمارو نگه کنند(فقط قبلش زوَّجتُکَ نَفسِی فِی المُدَّۀِ المَعلُومَۀِ، عَلَی المَهرِالمَعلُوم رو بخونید)
به امید خدا که همیشه جیب هاتون پر پول، کارفرماهاتون آدم حسابی و کد هاتون ساکسسفولی pass آل تستز اند بیلد این ۱ سکند باشه
امیدوارم زندگی پر فسادی رو در کنار پارتنرتون تجربه کنید که فرشته ها روشون نشه شمارو نگه کنند(فقط قبلش زوَّجتُکَ نَفسِی فِی المُدَّۀِ المَعلُومَۀِ، عَلَی المَهرِالمَعلُوم رو بخونید)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤1🔥1🥴1
یک نفر در Stackoverflow سوال کرده بود "چطور میشه گپ بین دقت داده train و test رو در مدلهای Machine Learning حل کرد"؟ سوال برای یک مسئله سری زمانی بود. اول با خودم گفتم آقا خسته نباشی ملت صبح و شب در تلاش برای همین کار هستن تا هوش مصنوعی بهتر یاد بگیره. اما خوب تصمیم گرفتم به سوالش جواب بدم و حتی vote منفی سوالش رو که بقیه داده بودن خنثی کردم. روند توسعه مدل Machine Learning خیلی اوقات خوب انجام نمیشه و موارد پایهای دیتاساینس و ماشین لرن رعایت نمیشه. مواردی مثل مانیتور کردن bias variance، شروع با مدل ساده و ارتقا با توجه به بایاس واریانس، experiment tracking و MLOps , بعضی روشهای Advanced رو در 8 مورد نوشتم.
پ.ن: تمامی LLM ها و چت جی پی تی از منابعی مثل Stackoverflow کار و ریزه کاری کدزنی رو یاد گرفتن و باهوش شدن. پس مشارکت در Stackoverflow فراموش نشه.
آپدیت: یک مشارکت کننده رده بالا اومد گفت آقا چرا همچین سوالی رو جواب دادی و این سوال افزایش پرفورمنس در model dev هست نه سوال برنامه نویسی و اینجا off topic محسوب میشه. منم گفتم آره طرف باید این سوال رو در کامیونیتی مثل Cross Validated میپرسید (از زیرمجموعه های stackexchange هست اگر ندیدین حتما سر بزنید). اما طرف خوشش نیومد در کل و یک رای منفی هم داد و رفت! اما قصد نوشتن اون مطلب بود که اینجا میارم کاملش رو
پ.ن: تمامی LLM ها و چت جی پی تی از منابعی مثل Stackoverflow کار و ریزه کاری کدزنی رو یاد گرفتن و باهوش شدن. پس مشارکت در Stackoverflow فراموش نشه.
آپدیت: یک مشارکت کننده رده بالا اومد گفت آقا چرا همچین سوالی رو جواب دادی و این سوال افزایش پرفورمنس در model dev هست نه سوال برنامه نویسی و اینجا off topic محسوب میشه. منم گفتم آره طرف باید این سوال رو در کامیونیتی مثل Cross Validated میپرسید (از زیرمجموعه های stackexchange هست اگر ندیدین حتما سر بزنید). اما طرف خوشش نیومد در کل و یک رای منفی هم داد و رفت! اما قصد نوشتن اون مطلب بود که اینجا میارم کاملش رو
🧑💻Cyber.vision🧑💻
یک نفر در Stackoverflow سوال کرده بود "چطور میشه گپ بین دقت داده train و test رو در مدلهای Machine Learning حل کرد"؟ سوال برای یک مسئله سری زمانی بود. اول با خودم گفتم آقا خسته نباشی ملت صبح و شب در تلاش برای همین کار هستن تا هوش مصنوعی بهتر یاد بگیره. اما…
In theory, the gap between train and test sets' error can not be less than what is called
0. Use an experiment tracking tool: Start by organizing all your experiments using
1. Start with simple models: Avoid starting with irrelevant or overly complicated models. Begin with simple models and monitor their
2. Address overfitting: Once you solve the underfitting problem, you may reach a model that can learn non-linear relationships in the training data. At this point, your model might exhibit high variance and
Add more training data or use
3. Use ensemble methods: Combine multiple models using techniques like soft voting.
4. Blending & stacking: Implement blending and stacking techniques to leverage the strengths of different models.
5. Advanced time series representations: Explore advanced methods such as signature kernels and
6. Advanced tabular ML models: Look into new models like GRANDE, which combines the advantages of tree-based models and neural networks. Note that if you want to use models such as RF, XGB or GRANDE for time series problems you should do some shape transform first.
7. Improved time-series CV: You can use more advanced time-series Cross-Validation techniques like
Bayes error
, which is sometimes equivalent to human-level intelligence/error in fields where human natural perception is high (such as NLP
and Vision
). However, in Time Series
, it is difficult to predict how far we can minimize this gap. The following steps are what I suggest and they are all basically about using model's bias & variance
in each experiment and then use some techniques to improve the model:0. Use an experiment tracking tool: Start by organizing all your experiments using
MLOps
tools such as WandB
and MLflow
that let you log metadata (such as cross-validation results) and save models as artifacts. I prefer Weights&Biases which lets you do multiple experiments using Sweep and Grid Search or Bayesian Optimization to maximize a defined metric on your cross-validation for HPO
. Note: Do not waste your time by overly tuning the models' parameters when doing HPO. It is wise to work on data centric approaches instead1. Start with simple models: Avoid starting with irrelevant or overly complicated models. Begin with simple models and monitor their
bias
and variance
. If you observe underfitting
, you might want to use models that can capture non-linear relationships and work well with tabular time series data, such as Random Forest
and XGBoost
. Avoid jumping directly to complicated RNN
models like LSTM
, which were initially developed for NLP applications and have not performed well in time series competitions.2. Address overfitting: Once you solve the underfitting problem, you may reach a model that can learn non-linear relationships in the training data. At this point, your model might exhibit high variance and
overfitting
on the training data. There are several ways to mitigate overfitting:Add more training data or use
data augmentation
techniques. For example, a 2017 Kaggle winning solution for tabular data augmentation and representation learning
used DAE. Regularization
techniques: Apply L1 and L2 regularization (known as reg_lambda
and reg_alpha
in XGBoost) to penalize large weights and coefficients. Early stopping
, Dropout
, and Reduce Learning Rate on Plateau
are other techniques commonly used for neural networks.3. Use ensemble methods: Combine multiple models using techniques like soft voting.
4. Blending & stacking: Implement blending and stacking techniques to leverage the strengths of different models.
5. Advanced time series representations: Explore advanced methods such as signature kernels and
wavelets
to create better features and representations of your data.6. Advanced tabular ML models: Look into new models like GRANDE, which combines the advantages of tree-based models and neural networks. Note that if you want to use models such as RF, XGB or GRANDE for time series problems you should do some shape transform first.
7. Improved time-series CV: You can use more advanced time-series Cross-Validation techniques like
Embargo & Purge
which usually used in quantitative finance.Kaggle
Porto Seguro’s Safe Driver Prediction
Predict if a driver will file an insurance claim next year.
🧑💻Cyber.vision🧑💻
In theory, the gap between train and test sets' error can not be less than what is called Bayes error, which is sometimes equivalent to human-level intelligence/error in fields where human natural perception is high (such as NLP and Vision). However, in Time…
از ابتدا انگلیسی نوشته شد و عوضش نکردم. سه مورد اول بیشترین اهمیت رو در روند توسعه یک مدل Machine Learning دارن. رایج ترین اشتباهات هم مربوط به انتخاب اولین مدل هست. در واقع مدل اول باید یک مدل ساده و مورد پذیرش در اون حوزه باشه و با مشاهده underfitting به مرور پیچیدگی اضافه میشه: مدلهای دقیقتر یا پارامترهایی که پیچیدگی اضافه میکنن. مثلا اضافه کردن لایه در شبکه عصبی یا
مورد اول هم حتما به کارتون اضافه کنید. یادگیری
بالا اشاره نکردم اما کالیبره کردن مدلها با با روشهای Uncertainty Quantification خیلی کمک کنندس. برای مثال
max_depth
در tree-based models
مورد اول هم حتما به کارتون اضافه کنید. یادگیری
mlflow
یا wandb
واقعا سادس اما مزیت بالایی برای سیستمی که میسازید داره.بالا اشاره نکردم اما کالیبره کردن مدلها با با روشهای Uncertainty Quantification خیلی کمک کنندس. برای مثال
Conformal Prediction
در Classification
کمک میکنه False Positive
کمتری داشته باشید. در این مورد بیشتر مینویسم.پندی که میتونیم از این داستان بگیریم چیه؟
تو هر شاخه ای که میخایم وارد بشیم اول از همه به زیرساخت اون موضوع کامل مسلط بشیم
مثال من میخام پنتستر شبکه بشم از همون اول شروع نکنم به سنس دیدن
اول از همه باید به عنوان یه مهندس شبکه فعالیت کنم و یاد بگیرم بعد که مسلط شدم حالا میتونم برم تو مباحث تست نفوذش
تو هر شاخه ای که میخایم وارد بشیم اول از همه به زیرساخت اون موضوع کامل مسلط بشیم
مثال من میخام پنتستر شبکه بشم از همون اول شروع نکنم به سنس دیدن
اول از همه باید به عنوان یه مهندس شبکه فعالیت کنم و یاد بگیرم بعد که مسلط شدم حالا میتونم برم تو مباحث تست نفوذش
🔥2
Forwarded from دستاوردهای یادگیری عمیق(InTec)
اولین مورد توی عکس رو ببینید و با ردیف 50 مقایسه کنید.
این مدل به تازگی منتشر شد، دقت کنید اطراف این مدل نتایج بهتری از مدلهای ۷، ۱۴ و حتی ۳۲ میلیاردی چندماه قبل داره. اهمیت دیتا
پ.ن : خودم هنوز باورم نمیشه
با این وضعیت فکر کنید مدل ۹ میلیاردی و ۲۷ میلیاردی آپدیت جدید بگیره
مورد دوم :
۱۳ روز دیگه معرفی
ممکن هست این مدل، مدل اصلی روی گوشیهای
یک سری آدم نشستن؛ همین حالا مدل رو روی
زیر ۲۸ توکن بر ثانیه حوصله سربر میشه برای یوزر
توی تست های خودمم روی
Gemma 2 2B > ChatGpt 3.5 Turbo
این مدل به تازگی منتشر شد، دقت کنید اطراف این مدل نتایج بهتری از مدلهای ۷، ۱۴ و حتی ۳۲ میلیاردی چندماه قبل داره. اهمیت دیتا
پ.ن : خودم هنوز باورم نمیشه
با این وضعیت فکر کنید مدل ۹ میلیاردی و ۲۷ میلیاردی آپدیت جدید بگیره
مورد دوم :
۱۳ روز دیگه معرفی
Pixel 9 Pro
هست و چون این مدل برای On-device
هم مناسب سازی شده ممکن هست این مدل، مدل اصلی روی گوشیهای
Google
باشهیک سری آدم نشستن؛ همین حالا مدل رو روی
linux tablet
ها اجرا کردن؛ با توجه به اینکه فعلا فقط CPU
هست تقریبا حدود ۸-۱۲ توکن بر ثانیه خروجی میده.زیر ۲۸ توکن بر ثانیه حوصله سربر میشه برای یوزر
توی تست های خودمم روی
GPU
زیر ۲ ثانیه مدل load
میشه Q4
سرعتی هم که نیازی به توضیح نداره.🔥1
به بهانهی این مطلب چند تا نکته در مورد خوندن کد بگم:
۱- خوندن کد خوبه و هر کدی هم باشه کلا خوبه. مثل کتاب خوندن. از نظر من کد خوندن مثل رمان و کتاب خوندنه.
۲- با خوندن کد بیشتر و بهتر، کدهای بهتری هم خواهید نوشت. یادگیری دیزاین پترن و اصول کد تمیز خوبه ولی دیدن اینکه در عمل چه چیزی باعث خوب شدن کد میشه یه چیز دیگهست و اگه کد بخونید از بقیه جلو میافتید.
۳- همونطور که وقتی الفبا رو یاد گرفتیم نمیشه انتظار داشت که آثار شکسپیر رو بخونیم، قاعدتا اگه اولین کدی که میخونیم کد لینوکس باشه، خیلی چیزاشو متوجه نمیشیم. میشه اول از چیزهای سادهتر شروع کرد.
۴- یه سری پروژهها (مثلا minix) به هدف اینکه سورس کد قابل فهمی داشته باشن نوشته میشن و یه سری دیگه به هدف پرفورمنس و کاربردی بودن و ... شروع کردن از اونایی که سورس کد مرتب تر و سادهتری دارن قطعا توصیه میشه. مخصوصا اگه ایدهی کلی از اون سیستمی که پیادهسازی میشه نداریم. مثلا اگه نمیدونیم سیستمعامل چطوری کار میکنه بهتره اول کتاب در موردش بخونیم. بعد یه کتاب یا منبعی که سورسکد رو توضیح داده بخونیم (یا همین مینیکس که سورس کد ساده و با کامنتی داره). و در نهایت میتونیم (شاید بتونیم) سورس کد یه سیستمعامل واقعی رو بخونیم.
۵- خوندن کد خیلی وقتا مثل کتاب نیست که از اول شروع کنیم تا آخر بریم، بلکه به شکل چرخیدن تو یه جنگل بزرگه. میچرخیم و جاهای جالبش رو نگاه میکنیم. مثلا همین که فایل cgroupش رو باز میکنیم. گاهی هم سعی میکنیم ساختارمندتر کار کنیم مثلا main رو باز میکنیم و از اونجا میریم جلو. (البته اگه mainی در کار باشه!)
۶- (شاید نظر نامحبوب) خیلی وقتا نیازی نیست همهی کد رو خونده باشیم یا حتی فهمیده باشیم تا بتونیم یه contributionی انجام بدیم. برای انجام یه تغییر کافیه بدونیم کلیت داستان چیه (مثلا main چطوری کار میکنه، قسمتی که کد من رو کال میکنه چطوریه و معماری و پوشهبندی کلی چطوریه) و تغییرمون رو در جای درستش اعمال کنیم. مثلا اگه میخوایم کوئری بهینهتری برای دیتابیس بنویسیم خیلی وقتا نیاز نیست که بدونیم تو dockerfile چه خبره یا مثلا تو http handler دقیقا چه اتفاقی میافته. یا در مثال لینوکسش، اگه میخوایم در مورد cgroup بیشتر بدونیم قاعدتا نیاز نیست در مورد درایورهای گرافیک چیز زیادی بدونیم. مخصوصا اگه معماری کد خوب باشه و الکی چیزا رو به هم متصل نکرده باشه.
۱- خوندن کد خوبه و هر کدی هم باشه کلا خوبه. مثل کتاب خوندن. از نظر من کد خوندن مثل رمان و کتاب خوندنه.
۲- با خوندن کد بیشتر و بهتر، کدهای بهتری هم خواهید نوشت. یادگیری دیزاین پترن و اصول کد تمیز خوبه ولی دیدن اینکه در عمل چه چیزی باعث خوب شدن کد میشه یه چیز دیگهست و اگه کد بخونید از بقیه جلو میافتید.
۳- همونطور که وقتی الفبا رو یاد گرفتیم نمیشه انتظار داشت که آثار شکسپیر رو بخونیم، قاعدتا اگه اولین کدی که میخونیم کد لینوکس باشه، خیلی چیزاشو متوجه نمیشیم. میشه اول از چیزهای سادهتر شروع کرد.
۴- یه سری پروژهها (مثلا minix) به هدف اینکه سورس کد قابل فهمی داشته باشن نوشته میشن و یه سری دیگه به هدف پرفورمنس و کاربردی بودن و ... شروع کردن از اونایی که سورس کد مرتب تر و سادهتری دارن قطعا توصیه میشه. مخصوصا اگه ایدهی کلی از اون سیستمی که پیادهسازی میشه نداریم. مثلا اگه نمیدونیم سیستمعامل چطوری کار میکنه بهتره اول کتاب در موردش بخونیم. بعد یه کتاب یا منبعی که سورسکد رو توضیح داده بخونیم (یا همین مینیکس که سورس کد ساده و با کامنتی داره). و در نهایت میتونیم (شاید بتونیم) سورس کد یه سیستمعامل واقعی رو بخونیم.
۵- خوندن کد خیلی وقتا مثل کتاب نیست که از اول شروع کنیم تا آخر بریم، بلکه به شکل چرخیدن تو یه جنگل بزرگه. میچرخیم و جاهای جالبش رو نگاه میکنیم. مثلا همین که فایل cgroupش رو باز میکنیم. گاهی هم سعی میکنیم ساختارمندتر کار کنیم مثلا main رو باز میکنیم و از اونجا میریم جلو. (البته اگه mainی در کار باشه!)
۶- (شاید نظر نامحبوب) خیلی وقتا نیازی نیست همهی کد رو خونده باشیم یا حتی فهمیده باشیم تا بتونیم یه contributionی انجام بدیم. برای انجام یه تغییر کافیه بدونیم کلیت داستان چیه (مثلا main چطوری کار میکنه، قسمتی که کد من رو کال میکنه چطوریه و معماری و پوشهبندی کلی چطوریه) و تغییرمون رو در جای درستش اعمال کنیم. مثلا اگه میخوایم کوئری بهینهتری برای دیتابیس بنویسیم خیلی وقتا نیاز نیست که بدونیم تو dockerfile چه خبره یا مثلا تو http handler دقیقا چه اتفاقی میافته. یا در مثال لینوکسش، اگه میخوایم در مورد cgroup بیشتر بدونیم قاعدتا نیاز نیست در مورد درایورهای گرافیک چیز زیادی بدونیم. مخصوصا اگه معماری کد خوب باشه و الکی چیزا رو به هم متصل نکرده باشه.
👍1
🔴سلام وقت عزیزان بخیر
در تصاویر بالا تفاوت payload های stage و stageless رو مشاهده میکنید .
⚠️stage : چند مرحله ای
❗️در چند مرحله payload ارسال میشود . (stager , stage 1 , stage 2 , ...)
❗️حجم کمتری دارد .(70kb)
⚠️stageless : تک مرحله ای
❕در یک مرحله payload ارسال میشود
❕حجم بیشتری دارد (250kb)
در تصاویر بالا تفاوت payload های stage و stageless رو مشاهده میکنید .
⚠️stage : چند مرحله ای
❗️در چند مرحله payload ارسال میشود . (stager , stage 1 , stage 2 , ...)
❗️حجم کمتری دارد .(70kb)
⚠️stageless : تک مرحله ای
❕در یک مرحله payload ارسال میشود
❕حجم بیشتری دارد (250kb)
🧠 آغاز ثبتنام رایگان مسابقات بینالمللی هوش مصنوعی رایان (Rayan) | دانشگاه صنعتی شریف
🪙با بیش از ۳۵ هزار دلار جایزه نقدی
🎓چاپ دستاوردهای ۱۰ تیم برتر در کنفرانسها/مجلات برتر بینالمللی هوش مصنوعی
👥 امکان شرکت به صورت تیمهای ۱ تا ۴ نفره
🗓شروع مسابقه از ۲۶ مهرماه ۱۴۰۳
💬موضوعات مورد بررسی اعتمادپذیری در یادگیری عمیق:
💬 Model Poisoning
💬 Compositional Generalization
💬 Zero-Shot Anomaly Detection
👀 مسابقات بینالمللی هوش مصنوعی رایان با حمایت معاونت علمی ریاستجمهوری و موضوع Trustworthy AI، توسط دانشگاه صنعتی شریف برگزار میگردد. این مسابقه در ۳ مرحله (۲ مرحله مجازی و ۱ مرحله حضوری) از تاریخ ۲۶ مهر آغاز میشود.
⭐️ رایان جهت حمایت از تیمهای برتر راهیافته به مرحله سوم، ضمن تأمین مالی بابت هزینه سفر و اسکان، دستاوردهای علمی تیمهای برتر را در یکی از کنفرانسها یا مجلات مطرح این حوزه با ذکر نام اعضای تیم در مقالهی مربوطه، چاپ و منتشر خواهد کرد. این شرکتکنندگان برای دستیابی به جایزه ۳۵ هزار دلاری برای تیمهای برتر، در فاز سوم به رقابت میپردازند.
🪙با بیش از ۳۵ هزار دلار جایزه نقدی
🎓چاپ دستاوردهای ۱۰ تیم برتر در کنفرانسها/مجلات برتر بینالمللی هوش مصنوعی
👥 امکان شرکت به صورت تیمهای ۱ تا ۴ نفره
🗓شروع مسابقه از ۲۶ مهرماه ۱۴۰۳
💬موضوعات مورد بررسی اعتمادپذیری در یادگیری عمیق:
💬 Model Poisoning
💬 Compositional Generalization
💬 Zero-Shot Anomaly Detection
👀 مسابقات بینالمللی هوش مصنوعی رایان با حمایت معاونت علمی ریاستجمهوری و موضوع Trustworthy AI، توسط دانشگاه صنعتی شریف برگزار میگردد. این مسابقه در ۳ مرحله (۲ مرحله مجازی و ۱ مرحله حضوری) از تاریخ ۲۶ مهر آغاز میشود.
⭐️ رایان جهت حمایت از تیمهای برتر راهیافته به مرحله سوم، ضمن تأمین مالی بابت هزینه سفر و اسکان، دستاوردهای علمی تیمهای برتر را در یکی از کنفرانسها یا مجلات مطرح این حوزه با ذکر نام اعضای تیم در مقالهی مربوطه، چاپ و منتشر خواهد کرد. این شرکتکنندگان برای دستیابی به جایزه ۳۵ هزار دلاری برای تیمهای برتر، در فاز سوم به رقابت میپردازند.
🧑💻Cyber.vision🧑💻
🧠 آغاز ثبتنام رایگان مسابقات بینالمللی هوش مصنوعی رایان (Rayan) | دانشگاه صنعتی شریف 🪙با بیش از ۳۵ هزار دلار جایزه نقدی 🎓چاپ دستاوردهای ۱۰ تیم برتر در کنفرانسها/مجلات برتر بینالمللی هوش مصنوعی 👥 امکان شرکت به صورت تیمهای ۱ تا ۴ نفره 🗓شروع مسابقه از…
Linkedin
Rayan AI Contest | LinkedIn
Rayan AI Contest | 917 followers on LinkedIn. Rayan AI Contest | 🏆 Rayan International Artificial Intelligence Contest
با سلام و شب بخیر ❤️دوستانی که به دلیل بالا بودن قیمت های دوره های در سایت های آموزشی توانایی زیادی برای پرداخت خرید دوره رو ندارند بنده تصمیم گرفتم که یه بستر برای دوستانی ایجاد کنم به محتوای به روز شده و کامل دسترسی پیدا کنند و از فرصتی که دارند استفاده درست کنند در همین راستا بنده تصمیم گرفتم یک چنل جداگانه آماده کنم برای خرید دوره ها به صورت اشتراکی توضیحات کامل به این طور می باشد که دور های که خریداری می شود فقط در اختیار دوستانی قرار میگیرد که در خرید هزینه پرداخت میکنند و برای جلوگیری از درز کردن محتویات دوره که فردا روزی خدا نکرده کسی بگه این دوره ها کرک شده یا پاب شده بنده هر دوره را در یک چنل جداگانه قرار داده و قابلیت فوروارد هم می بندم چیزی به اسم کرک کردن و پاب کردن اصلا وجود ندارند ما اینجا قصد سواستفاده نداریم فقط داریم بستری رو فراهم میکنیم که به دوستانی که توانایی زیادی برای پرداخت هزینه دوره ندارند ایجاد کنیم که به هدف هاشون برسن❤️🥰
https://www.tgoop.com/HacktasticLearningcyber
لینک چنل رو براتون قرار میدم و مورد آخر که لازم به ذکر هست ما در چنل نظر سنجی قرار می دهیم و طبق نیاز فراگیر ها دوره رو قرار میدهیم 🥰
لینک چنل رو براتون قرار میدم و مورد آخر که لازم به ذکر هست ما در چنل نظر سنجی قرار می دهیم و طبق نیاز فراگیر ها دوره رو قرار میدهیم 🥰
Telegram
Hacktastic Learning
این چنل به جهت خرید دوره های آموزشی در زمینه هک و امنیت می باشد هر گونه درخواست دوره با هماهنگی بنده انجام می شود
آیدی ادمین : @Mtio975
جهت درخواست دوره
آیدی ادمین : @Mtio975
جهت درخواست دوره
🧑💻Cyber.vision🧑💻 pinned «https://www.tgoop.com/HacktasticLearningcyber لینک چنل رو براتون قرار میدم و مورد آخر که لازم به ذکر هست ما در چنل نظر سنجی قرار می دهیم و طبق نیاز فراگیر ها دوره رو قرار میدهیم 🥰»
بسیاری از افرادی که در حوزههای علوم و مهندسی (که خارج از هسته اصلی هوش مصنوعی هستند) فعالیت میکنند وقتی از عبارات «هوش مصنوعی» یا «روشهای مبتنی بر هوش مصنوعی» استفاده میکنند منظور اصلیشان پردازش سیگنال است، نه هوش مصنوعی!
حالا فکر کنید چرا باید از نیمهی شب گذشته، به این موضوع فکر کنم!
حالا فکر کنید چرا باید از نیمهی شب گذشته، به این موضوع فکر کنم!
🌐 برنامهنویسی سطح بالا و سطح پایین 🌐:
برنامهنویسی سطح بالا (High-level programming)
مثل زبانهایی که ما معمولاً مینویسیم و میخونیم (مثل Python، Java و C++) به انسانها نزدیکتر هستند و با جملات و عبارات قابل فهمی نوشته میشن. این زبانها خیلی از جزییات سختافزاری مثل مدیریت حافظه یا کار با CPU رو از کاربر پنهان میکنن و همین باعث میشه که برنامهنویسی باهاشون سادهتر باشه.
مثال:
print("Hello, World!")
همین یک خط کد، به سادگی پیام "Hello, World!" رو چاپ میکنه.
برنامهنویسی سطح پایین (Low-level programming)
بیشتر به زبانی نزدیکه که کامپیوترها متوجه میشن؛ مثل اسمبلی (Assembly) یا حتی زبان ماشین (Machine Language). توی این زبانها باید دقیقاً مشخص کنیم که چی داره توی CPU و حافظه اتفاق میافته و این کدها معمولاً بسیار پیچیدهتر و دشوارترند.
مثال (Assembly):
MOV AH, 09
MOV DX, OFFSET message
INT 21H
این قطعه کد در زبان اسمبلی، به سختافزار مستقیم دستور میده تا متنی رو چاپ کنه.
حالا برنامهنویسی پویا چیه؟ 🤔
برنامهنویسی پویا (Dynamic Programming Language) یک نوع از زبانهای برنامهنویسی سطح بالاست که انعطافپذیرتره و خیلی از تصمیمات و رفتارها رو در زمان اجرای برنامه میگیره، نه در زمان کامپایل. این یعنی شما میتونید در طول اجرای برنامه، ساختارهای دادهها یا حتی خود کد رو تغییر بدید!
زبانهای پویایی مثل Python یا JavaScript به برنامهنویس اجازه میدن تا بدون نیاز به مشخص کردن نوع دادهها از قبل (مثل int یا string)، کد بنویسن. این باعث میشه که نوشتن و تغییر کد سریعتر و راحتتر بشه.
یک مثال از برنامهنویسی پویا:
این کد به طور خودکار نوع متغیرها رو تشخیص میده و به کاربر اجازه میده تا در حین اجرای برنامه با نوعهای مختلف کار کنه:
x = 10
print(x)
x = "Hello"
print(x)
همونطور که میبینید، متغیر x اول یک عدد بود و بعد به یک رشته تبدیل شد، بدون اینکه لازم باشه ما نوعش رو به طور صریح تغییر بدیم. این یکی از ویژگیهای جالب زبانهای پویاست! 🎯
منابع 📚:
Wikipedia: Dynamic Programming Language
GeeksforGeeks: High Level vs Low Level Programming Languages
RealPython: Python Type System
#DynamicProgramming
#ProgrammingLanguages
#HighLevelLanguages
#LowLevelLanguages
#PythonCoding
#JavaScriptProgramming
#LearnToCode
#SoftwareDevelopment
برنامهنویسی سطح بالا (High-level programming)
مثل زبانهایی که ما معمولاً مینویسیم و میخونیم (مثل Python، Java و C++) به انسانها نزدیکتر هستند و با جملات و عبارات قابل فهمی نوشته میشن. این زبانها خیلی از جزییات سختافزاری مثل مدیریت حافظه یا کار با CPU رو از کاربر پنهان میکنن و همین باعث میشه که برنامهنویسی باهاشون سادهتر باشه.
مثال:
print("Hello, World!")
همین یک خط کد، به سادگی پیام "Hello, World!" رو چاپ میکنه.
برنامهنویسی سطح پایین (Low-level programming)
بیشتر به زبانی نزدیکه که کامپیوترها متوجه میشن؛ مثل اسمبلی (Assembly) یا حتی زبان ماشین (Machine Language). توی این زبانها باید دقیقاً مشخص کنیم که چی داره توی CPU و حافظه اتفاق میافته و این کدها معمولاً بسیار پیچیدهتر و دشوارترند.
مثال (Assembly):
MOV AH, 09
MOV DX, OFFSET message
INT 21H
این قطعه کد در زبان اسمبلی، به سختافزار مستقیم دستور میده تا متنی رو چاپ کنه.
حالا برنامهنویسی پویا چیه؟ 🤔
برنامهنویسی پویا (Dynamic Programming Language) یک نوع از زبانهای برنامهنویسی سطح بالاست که انعطافپذیرتره و خیلی از تصمیمات و رفتارها رو در زمان اجرای برنامه میگیره، نه در زمان کامپایل. این یعنی شما میتونید در طول اجرای برنامه، ساختارهای دادهها یا حتی خود کد رو تغییر بدید!
زبانهای پویایی مثل Python یا JavaScript به برنامهنویس اجازه میدن تا بدون نیاز به مشخص کردن نوع دادهها از قبل (مثل int یا string)، کد بنویسن. این باعث میشه که نوشتن و تغییر کد سریعتر و راحتتر بشه.
یک مثال از برنامهنویسی پویا:
این کد به طور خودکار نوع متغیرها رو تشخیص میده و به کاربر اجازه میده تا در حین اجرای برنامه با نوعهای مختلف کار کنه:
x = 10
print(x)
x = "Hello"
print(x)
همونطور که میبینید، متغیر x اول یک عدد بود و بعد به یک رشته تبدیل شد، بدون اینکه لازم باشه ما نوعش رو به طور صریح تغییر بدیم. این یکی از ویژگیهای جالب زبانهای پویاست! 🎯
منابع 📚:
Wikipedia: Dynamic Programming Language
GeeksforGeeks: High Level vs Low Level Programming Languages
RealPython: Python Type System
#DynamicProgramming
#ProgrammingLanguages
#HighLevelLanguages
#LowLevelLanguages
#PythonCoding
#JavaScriptProgramming
#LearnToCode
#SoftwareDevelopment