خانه / بایگانی برچسب: پایتون

بایگانی برچسب: پایتون

آموزش پایتون: وب اپلیکیشن برای گردآوری داده با استفاده از PostgreSQL و Flask

کار کردن با پایگاه داده و کوئری‌ها در برخی موارد ممکن است برای برخی از افراد و یا شاید اغلب افراد کاملاً ملال‌آور باشد. ما قطعاً واقف هستیم که حتی گنجاندن عبارت PostgreSQL در عنوان این مطلب نیز باعث انصراف تعداد زیادی از خواننده‌های مجله فرادرس از مطالعه این مطلب شده است؛ اما شما که این مطلب را برای مطالعه انتخاب کرده‌اید، باید بدانید که پایگاه داده موضوع مهمی برای یادگیری محسوب می‌شود. مطالعه این مطلب با موضوع ساخت وب اپلیکیشن برای گردآوری داده با استفاده از PostgreSQL و Flask هیچ دشواری برای شما نخواهد داشت. پیشنهاد می‌کنیم قبل از مطالعه این راهنما، نقل‌قول زیر را دو بار بخوانید: آن چه افراد خودساخته را از مردمی که زندگی الهام‌بخشی ندارند، جدا می‌سازد، این است که آن‌ها کارهایی انجام می‌دهند که افراد کمتر رشد‌یافته دوست ندارند انجام دهند؛ هر چند آن‌ها نیز احتمالاً این کارها را دوست نداشته‌اند. -رابین شارما – کتاب «راهبی که فِراری‌اش را فروخت» شاید اغلب ما از کار با پایگاه داده خوشمان نیاید؛ اما همچنان که شارما در کتاب خود گفته است این همان چیزی است که ما را از انبوه مردم جدا می‌کند..

توضیحات بیشتر »

ساخت سیستم توصیه گر در پایتون — به زبان ساده

در این مطلب، ابتدا مفهوم سیستم توصیه گر (Recommendation System) بیان می‌شود و سپس در یک راهنمای گام به گام، روش ساخت یک «سیستم پالایش» برای پیشنهاد فیلم به کاربران، مورد بررسی قرار می‌گیرد. سیستم‌های توصیه‌گر یکی از برجسته‌ترین مثال‌های یادگیری ماشین در زندگی انسان‌ها هستند. آن‌ها تعیین می‌کنند که چه مطالبی در «خوراک خبری» حساب کاربری فیس‌بوک افراد نمایش داده شوند، محصولات با چه ترتیبی در آمازون به نمایش دربیایند، چه ویدئوهایی در نتفلیکس به افراد پیشنهاد شوند و مثال‌های بیشمار دیگر. اما، سیستم‌های توصیه‌گر واقعا چه هستند و چگونه کار می‌کنند؟ در این مطلب، ضمن ارائه مفاهیم اولیه، روش ساخت یک سیستم توصیه‌گر فیلم به همراه کدهای پیاده‌سازی آن ارائه شده است. سیستم توصیه گر چیست؟ یک سیستم توصیه‌گر، یک مدل پالایش اطلاعات است که آیتم‌ها را برای کاربر، امتیازدهی یا رتبه‌دهی می‌کند. این سیستم‌ها غالبا از دو روش رتبه‌بندی استفاده می‌کنند که هر یک در ادامه بیان شده است. پالایش مبتنی بر محتوا (Content-Based Filtering): در روش رتبه‌بندی پالایش مبتنی بر محتوا، آیتم‌های توصیه شده بر مبنای مشابهت آیتم..

توضیحات بیشتر »

زبان‌های برنامه‌نویسی که هر تازه‌کاری باید یاد بگیرد

برنامه‌نویسی یکی از بنیادی‌ترین مهارت‌هایی است که متخصصان حوزه‌ی کامپیوتر باید به آن احاطه داشته باشند. اما افراد تازه‌کاری که درصدد ورود به این حوزه هستند، برنامه‌نویسی را باید از کجا شروع کنند؟در این مقاله می خواهیم با زبان‌های برنامه‌نویسی که مناسب برای افراد تازه کار و مبتدی هستند آشنا شویم. صنعت کامپیوتر هر روز در حال پیشرفت است و این پیشرفت مستلزم تربیت متخصصان بیشتر و کارآزموده‌تری است. علوم کامپیوتر جزو پویاترین صنایعی است که در حال حاضر با سرعت بالایی در حال پیشرفت است. سرعت بالای پیشرفت در این صنعت مستلزم وجود متخصصان کاربلد است و این موضوع در مورد همه‌ی کشورهایی که رایانه‌ بصورت جدی در آن مورد استفاده قرار می‌گیرد، حاکم است. قبل از آغاز یادگیری، از زبان‌های «Drag and Drop» استفاده کنید Drag and Drop یا متد کشیدن و انداختن یک تکنیک ساده برای کدنویسی است. با استفاده از این روش، کاربر درگیر کدهای پیچیده نمی‌شود و با اصول اولیه‌ی کدنویسی نیز آشنا می‌شود.این روش، یادگیری اصول برنامه‌نویسی را بدون نیاز به درگیر شدن در قواعد و اصول پیچیده‌ی نوشتن دستورات متنی میسر می‌کند. ابزار‌..

توضیحات بیشتر »

اولین پروژه اوپن سورس پایتون خود را بسازید — راهنمای عملی

هر فرد توسعه‌دهنده نرم‌افزار و دانشمند داده باید تمرین ایجاد یک بسته نرم‌افزاری را تجربه کند، چون در این مسیر موارد زیادی را خواهد آموخت. ایجاد یک پروژه اوپن سورس پایتون ممکن است کار دشواری به نظر برسد؛ اما لازم نیست یک قهرمان باشید. همچنین حتی لازم نیست که ایده یک محصول عالی را در ذهن خود بپرورانید. شما صرفاً باید صبور باشید و زمان خود را صرف کنید. البته با مطالعه این راهنما این دو ضرورت نیز رفع می‌شوند. چیز زیبایی بسازید. در این مقاله به صورت گام به گام یک بسته ابتدایی پایتون می‌سازیم. در مقالات بعدی در این زمینه نیز اقدام به راه‌اندازی تست‌های خودکار و ساخت doc-های خودکار می‌کنیم. همچنین اپلیکیشن‌های مفید دیگری را برای بهبود توسعه بسته‌ها مورد استفاده قرار می‌دهیم. در این زمان می‌توانید آن چه را که آموخته‌اید برای رفع نیازهایتان مورد بهره‌برداری قرار دهید. این راهنما برای سیستم macOS و پایتون نسخه 3.7 نوشته شده است. همه مواردی که در این مقاله نوشته شده‌اند در زمان نگارش آن کار می‌کرده‌اند؛ اما همه چیز به سرعت در حال تغییر است و هیچ تضمینی نیست که اگر چند سال دیگر این راهنما را بخو..

توضیحات بیشتر »

رسم نمودار داده ها در پایتون — راهنمای تخصصی

اغلب هنگامی که بخواهیم نمودارهای آماری را در پایتون رسم کنیم، از کتابخانه matplotlib استفاده می‌کنیم. در این نوشتار از کتابخانه plotly از pandas استفاده خواهیم کرد که قادر به ترسیم نمودارهای جذاب‌تر و البته با امکانات بهتر و موثر از توابع matplotlib است. با استفاده از این کتابخانه می‌توانید حتی با یک خط کد، نمودار زیبا و گویایی از داده‌ها ترسیم کنید. اگر می‌خواهید با انواع نمودارها و نحوه نمایش داده‌ها آشنا شوید، بهتر است ابتدا مطلب نمایش و رسم نمودار برای داده‌ها — معرفی و کاربردها را مطالعه کرده باشید. البته برای ترسیم بعضی از نمودارهای مختلف آماری در زبان برنامه نویسی R به مطلب نمودار میله‌ای (Bar Chart) در R — راهنمای کاربردی و نمودار نقطه‌ای (Scatter Plot) در R — راهنمای کاربردی مراجعه کنید. همچنین برای آشنایی با نحوه ترسیم نمودار جعبه‌ای در پایتون خواندن مطلب نمودار جعبه ای (Boxplot) و رسم آن در پایتون – به زبان ساده نیز خالی از لطف نیست. ترسیم و نمایش داده در پایتون هر چند کتابخانه‌های مختلفی در پایتون برای ترسیم و رسم نمودار وجود دارد ولی شاید کتابخانه plotly یکی از بهترین اب..

توضیحات بیشتر »

حمله تخاصمی (Adversarial Attack) با مدل FGSM در پایتون — راهنمای کاربردی

بسیاری از افرادی که در حوزه «یادگیری ماشین» (Machine Learning | ML) فعالیت و پژوهش می‌کنند به خوبی آگاه هستند که برخی از مدل‌های یادگیری ماشین چقدر عملکرد تاثیرگذاری دارند. پژوهش‌هایی که در این حوزه انجام می‌شود موجب شده تا مدل‌ها سریع‌تر، صحیح‌تر و موثرتر از قبل بشوند. اگرچه، جنبه‌ای از طراحی و آموزش مدل که اغلب نادیده گرفته می‌شود امنیت و استحکام مدل است. این موضوع به طور خاص هنگامی اهمیت پیدا می‌کند که یک متخاصم سعی در گول زدن مدل داشته باشد. این مساله ممکن است بسیاری از افراد را حیرت زده کند که اضافه کردن برخی اختلالات (آشفتگی‌های) نامحسوس در تصاویر، می‌تواند کارایی مدل را به شدت متفاوت کند. با در نظر گرفتن این موضوع، در این راهنما مثالی پیرامون یک دسته‌بند متنی ارائه خواهد شد. در این مطلب، به طور خاص از یکی از اولین و متداول‌ترین نوع حملات با عنوان «حمله علامت گرادیان سریع» (Fast Gradient Sign Attack | FCSA) برای گول زدن یک «دسته‌بند» (Classifier) از نوع MNIST استفاده خواهد شد. با مطالعه این راهنما و کسب شناخت از حمله تخاصمی (Adversarial Attack) با مدل FGSM در پایتون، آگاهی مخاطبا..

توضیحات بیشتر »

ده زبان برنامه نویسی که باید در سال ۱۳۹۸ یاد بگیرید

یکی از بهترین مهارت‌ها در جهان کنونی، برای داشتن جایگاه شغلی و درآمد خوب، «برنامه نویسی کامپیوتری» (Computer Programming) است. امروزه، از کامپیوترها تقریبا در همه صنایع استفاده می‌شود. این ماشین‌ها، دارای طیف وسیعی از کاربردها از «خلبان خودکار» (Autopilot) در هواپیما گرفته تا «سرعت‌سنج» (Speedometer) در دوچرخه هستند و در واقع باید گفت کامپیوترها به اشکال گوناگونی ما را احاطه کرده‌اند. در دهه‌های اخیر، کامپیوترها نقش اساسی در توسعه بخشیدن به کسب‌و‌کارها داشته‌اند و دارند. روزگاری که انسان‌ها از کاغذ و خودکار برای ثبت اطلاعات استفاده می‌کردند دیگر گذشته و امروزه این کارها با بهره‌گیری از کامپیوترها انجام می‌شود. آنچه بیان شد موجب شده تا اهمیت زبان‌های برنامه‌نویسی روز به روز افزایش بیابد و شرکت‌های گوناگون (صنایع مختلف) برای پیش‌برد اهداف خود نسبت به استخدام افراد مسلط به برنامه‌نویسی اقدام کنند. از سوی دیگر، جامعه برنامه‌نویسان و توسعه‌دهندگان، با نرخی سریع‌تر از گذشته در حال رشد است و همواره زبان‌های برنامه‌نویسی متنوع و متعدد جدیدی ظهور می‌کنند که برای نوع خاصی از توسعه‌دهندگان کاربر..

توضیحات بیشتر »

یادگیری عمیق با PyTorch — راهنمای کاربردی

«یادگیری عمیق» (Deep Learning)، یکی از مباحث داغ در حوزه «یادگیری ماشین» (Machine Learning) محسوب می‌شود. با توجه به ویژگی‌هایی که «زبان برنامه‌نویسی پایتون» (Python Programming Language) ارائه می‌کند و کتابخانه‌های متعدد و قدرتمند نوشته شده برای آن، استفاده از این زبان در زمینه «یادگیری ماشین» (Machine Learning) و «داده‌کاوی» (Data Mining) روز به روز در حال افزایش است. «پای‌تورچ» (PyTorch)، یکی از «کتابخانه‌های» (Library) «هوش مصنوعی» (Artificial Intelligence) توسعه داده شده برای زبان پایتون است. این کتابخانه توسط «فیس‌بوک» (Facebook) ساخته شده و توسعه داده می‌شود. کد کتابخانه PyTorch در «گیت‌هاب» (GitHub) [+] موجود است و در حال حاضر بیش از 22 هزار ستاره دارد. این کتابخانه از سال 2۰1۷ تاکنون شاهد تغییرات زیادی بوده است و کاربران آن به تدریج در حال افزایش هستند. در این مطلب به پیاده‌سازی یادگیری عمیق با PyTorch پرداخته شده است. اما پیش از ورود به بحث اصلی، برای درک بهتر این چارچوب و چشم‌انداز آن، تصویر زیر که بر اساس داده‌های «گوگل ترندز» (Google Trends) برای جست‌و‌جوی پای‌تورچ (PyTorc..

توضیحات بیشتر »

نوع داده عددی در پایتون — به زبان ساده

در «زبان برنامه‌نویسی پایتون» (Python Programming Language)، شش «نوع داده» (Data Type) اصلی وجود دارد. این انواع داده، شامل «عدد» (Number)، «لیست» (List)، «تاپل» (Tuple)، «رشته» (String)، «مجموعه» (Set) و «دیکشنری» (Dictionary) می‌شوند. نوع داده عددی در پایتون خود انواع مختلفی دارد. آگاهی از این انواع داده نه تنها برای برنامه‌نویسی در این زبان لازم است، بلکه گاهی نیاز می‌شود برخی از انواع داده‌های عددی موجود را برای حل یک مساله، به نوع داده عددی دیگری تبدیل کرد. در این مطلب، انواع داده‌های عددی در پایتون آموزش داده می‌شوند. سپس، به چگونگی تبدیل یک نوع داده به دیگری پرداخته می‌شود. در نهایت، عملیات ریاضی قابل انجام روی انواع داده عددی در پایتون مورد بررسی قرار می‌گیرد. نوع داده عددی در پایتون پایتون از نوع داده‌های «اعداد صحیح» (integers)، «اعداد ممیز شناور» (floating point) و «اعداد مختلط» (complex numbers) پشتیبانی می‌کند. این انواع داده، به ترتیب به صورت کلاس float ،int و complex در پایتون تعریف می‌شوند. اعداد صحیح و ممیزشناور با وجود یا عدم وجود علامت ممیز اعشاری از یکدیگر متمایز م..

توضیحات بیشتر »

تطبیق رشته فازی در پایتون — راهنمای کاربردی

در این مطلب، روش تطبیق رشته تقریبی و تشخیص رشته‌های مشابه با بهره‌گیری از مثال‌های گوناگون، آموزش داده خواهد شد. تمرکز این نوشته بر روش «تطبیق رشته فازی» (Fuzzy String Matching) در پایتون است. تطبیق رشته فازی در پایتون تاکنون، برای افراد زیادی پیش آمده که نیاز به مقایسه کردن رشته‌هایی پیدا می‌کنند که به چیز مشابهی ارجاع دارند، ولی به شیوه‌ای تقریبا متفاوت نوشته شده‌اند. این تفاوت، ممکن است ناشی از اشکال تایپی یا نگارشی باشد. مساله بیان شده، چالشی است که افراد ممکن است در شرایط گوناگون، از نرم‌افزارهای بررسی نگارش گرفته تا نگاشت «پایگاه‌داده‌ها» (Databases) که فاقد یک کلید مشترک هستند (مثلا در شرایطی که فرد سعی دارد دو جدول را بر اساس نام شرکت به یکدیگر متصل کند، اما به نظر می‌رسد این مورد در دو جدول متفاوت است)، با آن مواجه شوند. در این راهنما، یک بررسی موردی انجام می‌شود که طی آن، مساله موجود در پایگاه داده‌ای که در بالا بیان شد، مورد تحلیل قرار می‌گیرد. اگرچه، پیش از آغاز بررسی موردی، نحوه انجام تطبیق رشته فازی بیان می‌شود. به طور معمول، برای مقایسه دو رشته در پایتون، از کد زیر است..

توضیحات بیشتر »