مجله خبری برنامه‌نویسی پایتون

مرکز آموزش و رقابت برنامه نویسی پایتون

مجله خبری برنامه‌نویسی پایتون

مرکز آموزش و رقابت برنامه نویسی پایتون

مجله خبری برنامه‌نویسی پایتون

زبان پایتون (Python) در سال ۱۹۹۱ توسط یک برنامه‌نویس هلندی به نام گیدو ون روسوم (Guido van Rossum) ابداع شد و از آن زمان تا کنون رشد قابل ملاحظه‌ای را شاهد بوده است.

اگر چه وی در آن زمان گفته بود: «من به هیچ وجه قصد ندارم زبانی بسازم که به طور گسترده مورد استفاده قرار بگیرد» ولی اکنون و با گذشت نزدیک به سه دهه از آن تاریخ، پایتون تقریباً تمام رقبای خود را کنار زده و به اندازه‌ای محبوبیت یافته که حتی افراد مبتدی نیز کدنویسی را با آن شروع می‌کنند.

در یک سال گذشته، «Python» یکی از کلماتی بود که شهروندان آمریکایی بسیار زیاد در گوگل جستجو کرده‌اند، حتی بیشتر از نام ستاره‌های تلویزیونی.

در سال های اخیر، یادگیری عمیق، تحول بزرگی را در یادگیری ماشین و هوش مصنوعی ایجاد کرده است.دلیل اصلی نهفته در پس «یادگیری عمیق» این ایده است که «هوش مصنوعی» باید از مغز انسان الهام بگیرد.

در پیاده سازی پروژه ها از جدید ترین نسخه کتابخانه تنسورفلو یعنی (Tensorflow 2) و Keras استفاده شده است.

این آموزش توسط مهندس امینی دانشجوی ارشد برق دانشگاه صنعتی امیرکبیر با زبانی گویا و بصورت واضح بیان شده است.


⏰زمان : 5 ساعت 30 دقیقه

 

🔹 پروژه کاربردی که در این دوره پیاده سازی شده است:

▪️تخمین توابع با شبکه های Fully-Connected
▪️دسته بندی دیتاست Fashion MNIST با شبکه های SLP
▪️دسته بندی دیتاست MNIST Digits با شبکه های Fully-Connected
▪️دسته بندی دیتاست CIFAR-10 (ده نوع مختلف از اشیاء در تصاویر) با شبکه های CNN

 

☑️ کد تخفیف : nrz99

💵 میزان تخفیف : 50 درصد
💵 هزینه آموزش : 40000 تومان

 

💎 لینک دوره : pythonchallenge.ir/deep_learning.html

 

📆 آخرین مهلت استفاده : چهارشنبه 13 فروردین
 

🎁 کد تخفیف 50 درصدی : nrz99

 

مشاهده سرفصل و تهیه آموزش : pythonchallenge.ir

 

📍در این روزهای قرنطینه، بهترین فرصت برای افزایش دانش و استفاده از آموزش های کاربردی و پروژه محور و آماده شدن برای بازار کار می باشد.

 

⏰ فرصت استفاده : روز چهارشنبه 13 فروردین 1399

 

📗در این درس با کتابخانه pandas برای پردازش داده های متنی آشنا شدیم
📕این کتابخانه روشها و متدهای زیادی را برای پردازش داده های متنی دارد که با استفاد این روش ها و ترکیب ها قادر خواهیم بود برخی از پرازش های متنی بسیار قدرتمند رو با pandas انجام دهیم.

متد بعدی extract می باشد که میخواهیم رشته های رو استخراج کنیم که منطبق بر یک سری گروههای داخل پرانتز باشد. (مجددا تاکید میکنیم عبارت داخل پرانتز را بعنوان یک گروه در نظر میگیریم.)
در رشته ورودی اگر دقت کنیم میبینم زمان ها بصورت ساعت و دقیقه می باشد. تمام دقایق در این مثال ما بصورت دو رقمی بوده اما ساعت ممکن است یک رقمی یا دو رقمی باشد. پس عبارت منظم زیر رو برای پیدا کردن زمان در رشته  و مجزا کردن آن در یک ستون دیگر استفاده میکنیم.

df['text'].str.extract(r'(\d?\d):(\d\d)')

 0 1
0 2 45
1 11 30
2 7 00
3 11 15
4 08 1

 عبارت منظم بالا در داخل یک پرانتز دو رقم رو در نظر خواهد گرفت اما علامت سوالی که در پرانتز اول وجود داره به این دلیل هست که اعلام کنه رقم اول میتونه باشه و میتونه هم نباشه که این مورد برای ساعت کاربرد داره.

نکته ای که وجود داره اینه که در رشته پنجم ما دو تا زمان داشتیم اما فقط اولی رو چاپ کرد. برای این که مشکل رو رفع کنیم از متد extractall استفاده میکنیم و عبارت منظم رو هم طوری تغییر میدهیم که علامت pm یا am بعد ساعت هم در خروجی چاپ گردد.

حالا ما چهار تا گروه میخواهیم ایجاد کنیم گروه اول کل عبارت رو چاپ میکنه در واقع زمان رو چاپ میکنه و برای همین باید کل عبارت داخل پرانتز قرار بگیره. گروه دوم ساعت، گروه سوم دقیقه و گروه چهارم هم صبح یا عصر بودن رو چاپ خواهد کرد.

df['text'].str.extractall(r'((\d?\d):(\d\d) ?([ap]m))

 

خروجی برنامه در تصویر بعدی قرار دارد.

اما یک نکته وجود علامت سوال قبل از مشخص کردن صبح یا عصر بودن هست.دلیل این مورد بخاطر وجود فاصله بین ساعت و pm یا am هست که در بعضی از رشته ها این فاصله وجود داره و در بعضی ها نبود و ما هم برای همین یک اسپس علامت سوال در نظر گرفتیم تا وجودش الزامی نباشه و اختیاری باشه.

حالا در انتها اگر بخواهیم برای ستون ها ما نامی رو مشخص کنیم کافیه از همان نام گروه برای اینکار استفاده کنیم. برای ایجاد نام گروه از دستور زیر استفاده میکنیم:

?P<GroupName>

 و بجای GroupName هر نامی که دوست داشتید میتوانید قرار بدهید.
دقت کنید محل قرار گرفتن نام گروه بعد از پرانتز باز همان گروه می باشد.

df['text'].str.extractall(r'(?P<time>(?P<hour>\d?\d):(?P<minute>\d\d)?(?P<period>[ap]m))')

 

در مثال بعدی میخواهیم از دستوری برای جایگزینی استفاده کنیم بعنوان مثال هر جا روزی در هفته وجود داشت بجای آن روز، سه تا علامت سوال قرار بدهیم.
نکته ای که اینجا وجود داره اینه که تمام روزهای هفته ما به کلمه day ختم خواهد شد. در درس قبل گفتیم w  برای تمام کارکتر ها استفاده میشه و b هم برای مشخص کردن مرز کلمه یا بعبارت بهتر پیدا کردن یک تطابق در ابتدا یا انتهای کلمه استفاده خواهد شد. 
پس میتوانیم از عبارت نامنظم زیر و متد str.replace برای هدفمون استفاده کنیم:

 

df['text'].str.replace(r'\w+day\b', '???')

0          ???: The doctor's appointment is at 2:45pm.
1       ???: The dentist's appointment is at 11:30 am.
2          ???: At 7:00pm, there is a basketball game!
3         ???: Be back home by 11:15 pm at the latest.
4    ???: Take the train at 08:10 am, arrive at 09:..

 

حالا اگر فرض بر این باشه بخواهیم تغییر در رشته ایجاد کنیم که بر مبنای کلمه مورد نظر باشه از متدهای replace  و lambda  استفاده خواهیم کرد. دقت کنید ما متد لامبدا رو در دوره مقدماتی توضیح داده بودیم.

حالا در این مثال میخواهیم بجای روزهای هفته، فقط سه حرف ابتداییش در خروجی قرار بگیره. مثلا بجای Monday عبارت Mon چاپ گردد.

df['text'].str.replace(r'(\w+day\b)', lambda x: x.groups()[0][:3])

0          Mon: The doctor's appointment is at 2:45pm.
1       Tue: The dentist's appointment is at 11:30 am.
2          Wed: At 7:00pm, there is a basketball game!
3         Thu: Be back home by 11:15 pm at the latest.
4    Fri: Take the train at 08:10 am, arrive at 09:..

 در کد فوق تابعی که با استفاده از لامبدا مشخص شده برای جدا کردن سه حرف اول روزها هفته است.
در واقع الگوی ما توسط عبارت منظم پیدا میشه و وقتی که داخل پرانتز قرار میدهیم اون رو تبدیل به یک گروه خواهیم کرد سپس توسط replace با سه حرف اول روزهای هفته جایگزین میکنیم.

ثبت نام

نکته : وبینار بصورت آنلاین در روز جمعه ۱۸ آبان ساعت ۱۴ تا ۱۶ برگزار خواهد شد.فیلم وبینار برای افرادی که در این بخش ثبت نام کردند ارسال خواهد شد. هر گونه سوالی در مورد وبینار داشتید میتوانید از طریق آی دی تلگرامی aiuni_admin ارسال کنید.

توضیحات دوره : در بسیاری از مواقع، هنگام کار با داده ها نیاز به کاهش ابعاد آن ها احساس می شود. یکی از راه های معروف و متداول کاهش ابعاد استفاده از تئوری معروف PCA می باشد. از دیگر کاربرد های معروف PCA می توان به استخراج اطلاعات مهم و کلیدی از داده ها اشاره کرد. در این وبینار ابتدا به معرفی تئوری PCA می پردازیم و سعی می کنیم مفاهیم آن را به خوبی درک کنیم. سپس به پیاده سازی پروژه کاهش حجم تصاویر و کد کردن آن ها توسط PCA می پردازیم.

گواهی آموزشی : در صورت ثبت نام و درخواست صدور گواهی آموزشی، برای افرادی که این نوع بلیت را تهیه کرده اند بدون برگزاری آزمون گواهی حضور در وبینار صادر و از طریق پست الکترونیکی ارسال خواهد شد. نمونه گواهینامه آموزشی در زیر مشاهده می کنید.

Scrappy یک کتابخانه محبوب پایتون برای web scraping است. از این کتابخانه برای ساخت خزنده استفاده می‌شود. در ابتدا از این کتابخانه تنها برای scraping استفاده می‌شد، اما بعدها مواردی مانند داده‌کاوی، خودکارسازی تست‌ها و... مورد استفاده قرار گرفت. Scrapy کتابخانه‌ای متن‌باز و محبوب است.

کتابخانه PIL که مخفف عبارت Python Imaging Library یا کتابخانه تصویر پایتون است، یکی از کتابخانه‌های پردازش تصویر با پایتون محسوب می‌شود. این کتابخانه، پشتیبانی از عملیات مرتبط با پردازش تصویر نظیر باز کردن، دستکاری و ذخیره‌سازی تصاویر در فرمت‌های مختلف را به زبان پایتون اضافه می‌کند. با این حال، توسعه آن از سال 2009 دچار وقفه شده است.

کتابخانه OpenCV که مخفف Open Source Computer Vision Library یا کتابخانه منبع باز بینایی کامپیوتر است، یکی از پراستفاده‌ترین کتابخانه‌های برنامه‌نویسی برای کاربردهای «بینایی کامپیوتر» (Computer Vision) محسوب می‌شود. کتابخانه OpenCV-Python، واسط برنامه‌نویسی کاربردی (API) برای کتابخانه OpenCV در زبان پایتون محسوب می‌شود.

این کتابخانه نه تنها از سرعت بسیار بالایی برخوردار است (زیرا کدهای پیاده‌سازی آن توسط زبان C و C++‎ نوشته شده است)، بلکه کد نویسی برنامه‌های کاربردی مرتبط با پردازش تصویر با پایتون و به‌کاراندازی (Deploy) آن‌ها را تسهیل می‌بخشد. چنین ویژگی‌هایی، کتابخانه OpenCV-Python را به بهترین انتخاب جهت پردازش تصویر با پایتون و پیاده‌سازی برنامه‌های بینایی کامپیوتر در این زبان بدل کرده است (به ویژه اگر برنامه‌های بینایی کامپیوتر توسعه داده شده، به انجام محاسبات ریاضی پیچیده و سنگین نیاز داشته باشند) . در ادامه، برخی از فرایندهای پردازش تصویر با پایتون که توسط کتابخانه OpenCV-Python قابل انجام است، نمایش داده خواهد شد.

«ترکیب تصاویر» (Image Blending): با استفاده از قابلیتی به نام «هرم تصاویر» (Image Pyramid) در OpenCV-Python، می‌توان تصاویر متناظر با یک سیب و یک پرتقال را با یکدیگر ترکیب و یک تصویر جدید درست کرد.

 

منبع : فرادرس