<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
    <channel>
        <title>نوشته های سعید میرشکاری</title>
        <link>https://virgool.io/feed/@saeed.mirshekari</link>
        <description>جزییات بیشتر راجع به کار‌های من را می‌توانید اینجا بخوانید: saeedmirshekari.com</description>
        <language>fa</language>
        <pubDate>2026-06-25 16:41:22</pubDate>
        <image>
            <url>https://files.virgool.io/upload/users/30357/avatar/cGmbvC.png?height=120&amp;width=120</url>
            <title>سعید میرشکاری</title>
            <link>https://virgool.io/@saeed.mirshekari</link>
        </image>

                    <item>
                <title>معضل داده‌های نامتوازن: به‌ روش افزایش حجم نمونه‌ها</title>
                <link>https://virgool.io/@saeed.mirshekari/%D9%85%D8%B9%D8%B6%D9%84-%D8%AF%D8%A7%D8%AF%D9%87-%D9%87%D8%A7%DB%8C-%D9%86%D8%A7%D9%85%D8%AA%D9%88%D8%A7%D8%B2%D9%86-%D8%A8%D9%87-%D8%B1%D9%88%D8%B4-%D8%A7%D9%81%D8%B2%D8%A7%DB%8C%D8%B4-%D8%AD%D8%AC%D9%85-%D9%86%D9%85%D9%88%D9%86%D9%87-%D9%87%D8%A7-seljiqr4hczl</link>
                <description>در دنیای داده‌شناسی و یادگیری ماشین، همه داده‌ها برابر اهمیت نیستند. یک چالش متداول که اغلب پیش می‌آید، مواجهه با داده‌های نامتوازن است، جایی که یک کلاس به شدت بیشتر از کلاس‌های دیگر است. این عدم توازن می‌تواند کارآیی مدل را انحراف دهد و منجر به نتایج نامناسبی شود. وارد افزایش حجم نمونه‌ها (oversampling) شوید - تکنیکی که می‌تواند شرایط را به تعادل بیاورد. در این راهنمای جامع، ما به بررسی داده‌های نامتوازن، دلیل مشکلات آن و چگونگی افزایش حجم نمونه‌ها می‌پردازیم. آیا شما یک انگیزه‌شناس داده‌شناسی یا یک تمرین‌کار جوان هستید؟ این مقاله شما را با دانش و ابزارهای لازم برای مقابله با این جنبه حیاتی از پیش‌پردازش داده‌ها تجهیز می‌کند.فهرست مطالب- درک داده‌های نامتوازن- پیامدهای عدم توازن- راهکار افزایش حجم نمونه‌ها- تکنیک‌های افزایش حجم نمونه‌ها  - افزایش حجم تصادفی  - (تکنیک تولید مصنوعی تقلبی از کلاس اقلیت) SMOTE   - (تکنیک تولید مصنوعی تطبیقی تقلبی از کلاس اقلیت) ADASYN - انتخاب تکنیک مناسب افزایش حجم نمونه‌ها- اجرای افزایش حجم نمونه‌ها در پایتون- ارزیابی تأثیر افزایش حجم نمونه‌ها- نمونه‌های واقعی- مشکلات افزایش حجم نمونه‌ها- نتیجهدرک داده‌های نامتوازندر بسیاری از سناریوهای واقعی، داده‌های نامتوازن به عنوان قاعده و نه استثنا برخورد می‌کنند. به عنوان مثال، در تشخیص کلاهبرداری از کارت اعتباری، تراکنش‌های کلاهبرداری نمایان‌ترین کلاس را تشکیل می‌دهند ولی به تعداد بسیار کمتری نسبت به کلاس‌های دیگر وجود دارند. یا در تشخیص بیماری‌های نادر، بیماری‌های کمیاب نسبت به بیماری‌های معمول کمتر دیده می‌شوند. کلاس اکثریت (کلاس منفی) در این موارد به طور قابل توجهی بیشتر از کلاس اقلیت (کلاس مثبت) است.دلیل این مشکل به شرح زیر است:- **تبیین در آموزش مدل**: مدل‌های یادگیری ماشین به سمت کلاس اکثریت منحرف می‌شوند چرا که بهینه‌سازی شده‌اند تا خطای کلی را به حداقل برسانند. این موجب می‌شود که این مدل‌ها روی کلاس اقلیت به طور نادرست عمل کنند.- **ارزیابی گمراه‌کننده**: معیارهای ارزیابی سنتی مانند دقت (accuracy) می‌توانند در داده‌های نامتوازن به اشتباه به ارزیابی‌های گمراه‌کننده منجر شوند. یعنی یک مدل می‌تواند با پیش‌بینی کلاس اکثریت دقت بالا داشته باشد، اما این در بسیاری از موارد در برنامه‌های واقعی ارزش زیادی ندارد.پیامدهای عدم توازنپیامدهای کار با داده‌های نامتوازن ممکن است جدی باشند:- **مدل‌های ناکارآمد**: مدل‌های آموزش دیده بر روی داده‌های نامتوازن ممکن است دچار مشکل در تشخیص وقوع رویدادهای کمیاب یا نادر شوند. در مواردی مانند تشخیص کلاهبرداری از کارت اعتباری، این می‌تواند به خسارت‌های مالی قابل توجهی منجر شود.- **پیش‌بینی با تعصب**: مدل ممکن است با دقت بالا کلاس اکثریت را پیش‌بینی کند، اما در کلاس اقلیت عملکرد نامناسبی داشته باشد و احتمالاً بینش‌های مهمی را از دست دهد.- **افتراق اطلاعات**: ممکن است کلاس اقلیت اطلاعات ارزشمندی را داشته باشد که در صورت عملکرد نامناسب مدل در آن از دست می‌رود.**راهکار افزایش حجم نمونه‌ها**افزایش حجم نمونه‌ها (oversampling) یک تکنیک قدرتمند برای حل مشکل عدم توازن در داده‌ها است. این تکنیک شامل افزایش تعداد نمونه‌ها در کلاس اقلیت با تولید نمونه‌های مصنوعی یا تکرار نمونه‌های موجود است. این کار باعث تعادل در توزیع کلاس‌ها می‌شود و مشکلات مرتبط با داده‌های نامتوازن را کاهش می‌دهد.ایده اصلی در افزایش حجم نمونه‌ها این است که مدل را با نمونه‌های بیشتری از کلاس اقلیت تأمین کنیم تا بتواند به بهترین شکل بین کلاس‌ها تمایز ایجاد کند.تکنیک‌های افزایش حجم نمونه‌هاچندین تکنیک افزایش حجم نمونه‌ها وجود دارد، هر یک با مزایا و معایب خود. بیایید سه روش متداول را بررسی کنیم:**1. افزایش حجم تصادفی (Random Oversampling)**در افزایش حجم تصادفی، نمونه‌های تصادفی از کلاس اقلیت تکرار می‌شوند تا توزیع کلاس به تعادل برسد. این تکنیک ساده‌ترین روش افزایش حجم نمونه‌ها است اما ممکن است به اورفیتینگ (overfitting) منجر شود، چرا که توزیع داده اصلی را در نظر نمی‌گیرد.**2. (تکنیک تولید مصنوعی تقلبی از کلاس اقلیت)**SMOTE یک رویکرد پیچیده‌تر است که نمونه‌های مصنوعی برای کلاس اقلیت تولید می‌کند. این کار با انتخاب یک نقطه داده از کلاس اقلیت و ایجاد نمونه‌های مصنوعی با انتقال بین آن و نزدیک‌ترین همسایگان آن انجام می‌شود. این روش به مشکل اورفیتینگ افزایش حجم تصادفی پاسخ می‌دهد**3. (تکنیک تولید مصنوعی تطبیقی تقلبی از کلاس اقلیت)**ADASYN یک گام به جلوتر می‌روید و نمونه‌های مصنوعی را براساس دشواری دسته‌بندی نمونه‌های موجود تولید می‌کند. این روش بر روی مناطقی که مدل عملکرد ضعیفی دارد تمرکز دارد و در مناطق چالش‌برانگیزتر نمونه‌های مصنوعی بیشتری و در مناطق خوب دسته‌بندی‌شده کمتری ایجاد می‌کند.**انتخاب تکنیک مناسب افزایش حجم نمونه‌ها**انتخاب تکنیک مناسب افزایش حجم نمونه‌ها به داده‌ها و مشکل موردنظر بستگی دارد. موارد زیر را در نظر بگیرید:- **اندازه داده‌ها**: اگر دارای داده‌های بزرگی هستید، افزایش حجم تصادفی ممکن است کافی باشد. برای داده‌های کوچکتر، SMOTE یا ADASYN ممکن است مناسب‌تر باشند.- **توزیع داده**: توزیع داده‌های خود را در نظر بگیرید. اگر کلاس اقلیت خوشه‌ای باشد، SMOTE یا ADASYN ممکن است موثرتر باشند. اگر پختگی داشته باشد، افزایش حجم تصادفی هم ممکن است عملکرد خوبی داشته باشد.- **منابع محاسباتی**: SMOTE و ADASYN نسبت به افزایش حجم تصادفی محاسباتی گران‌تری دارند. اطمینان حاصل کنید که منابع محاسباتی لازم را دارید.انجام افزایش حجم نمونه‌ها در پایتونبیایید به پایتون برویم و افزایش حجم نمونه‌ها را با استفاده از کتابخانه imbalanced-learn پیاده‌سازی کنیم، که ابزارهایی برای کار با داده‌های نامتوازن فراهم می‌کند.&#x60;&#x60;&#x60;pythonimport numpy as npimport pandas as pdimport matplotlib.pyplot as pltfrom sklearn.datasets import make_classificationfrom imblearn.over_sampling import RandomOverSampler, SMOTE, ADASYN# تولید یک مجموعه داده نامتوازن مصنوعیX, y = make_classification(n_classes=2, class_sep=2,                           weights=[0.1, 0.9], n_informative=3,                           n_redundant=1, flip_y=0, n_features=20,                           n_clusters_per_class=1, n_samples=1000,                           random_state=10)# نمایش توزیع کلاس‌هاplt.hist(y, bins=3)plt.title(&quot;توزیع کلاس‌ها&quot;)plt.show()# اعمال تکنیک‌های افزایش حجم نمونه‌هاros = RandomOverSampler(random_state=42)X_resampled, y_resampled = ros.fit_resample(X, y)# نمایش توزیع متعادل کلاس‌ها پس از افزایش حجم تصادفیplt.hist(y_resampled, bins=3)plt.title(&quot;توزیع کلاس‌ها پس از افزایش حجم تصادفی&quot;)plt.show()&#x60;&#x60;&#x60;قبلبعداین کد یک مجموعه داده نامتوازن مصنوعی ایجاد می‌کند، از افزایش حجم تصادفی استفاده می‌کند و توزیع کلاس‌ها را قبل و بعد از افزایش حجم نمونه‌ها نشان می‌دهد.ارزیابی تأثیر افزایش حجم نمونه‌هابرای درک تأثیر افزایش حجم نمونه‌ها، ارزیابی عملکرد مدل شما بسیار مهم است. معیارهای سنتی مانند دقت ممکن است در داده‌های نامتوازن گمراه‌کننده باشند. به جای آن، بر روی موارد زیر تمرکز کنید:- **ماتریس اشتباهات (Confusion Matrix)**: تحلیل واقعی‌ها، غلط‌های واقعی، غلط‌های پیش‌بینی شده و واقعی‌های پیش‌بینی شده را تجزیه و تحلیل کنید.- **دقت (Precision)**: نسبت تعداد واقعی‌های مثبت به کل مثبت‌های پیش‌بینی شده.- **بازخوانی (Recall)**: نسبت تعداد واقعی‌های مثبت به کل مثبت‌های واقعی.- **امتیاز F1 (F1-Score)**: میانگین هندسی دقت و بازخوانی که تعادلی بین دو معیار ایجاد می‌کند.- **مساحت زیر منحنی مشخصه عملکرد مخصوصیت (AUC-ROC)**: توانایی مدل در تمیز کردن بین کلاس‌ها را اندازه‌گیری می‌کند.بیایید تأثیر افزایش حجم نمونه‌ها با استفاده از این معیارها ارزیابی کنیم:&#x60;&#x60;&#x60;pythonfrom sklearn.model_selection import train_test_splitfrom sklearn.ensemble import RandomForestClassifierfrom sklearn.metrics import confusion_matrix, classification_report, roc_auc_score# تقسیم داده‌های افزایش حجم نمونه‌ها به دسته‌های آموزش و آزمایشX_train, X_test, y_train, y_test = train_test_split(X_resampled, y_resampled, test_size=0.2, random_state=42)# آموزش یک دسته‌بند تصادفی جنگلی بر روی داده‌های افزایش حجم نمونه‌هاclf = RandomForestClassifier(random_state=42)clf.fit(X_train, y_train)# پیش‌بینی در مجموعه آزمایشیy_pred = clf.predict(X_test)# ارزیابی مدلconf_matrix = confusion_matrix(y_test, y_pred)classification_rep = classification_report(y_test, y_pred)roc_auc = roc_auc_score(y_test, clf.predict_proba(X_test)[:, 1])print(&quot;ماتریس اشتباهات:&quot;)print(conf_matrix)print(&quot;\nگزارش طبقه‌بندی:&quot;)print(classification_rep)print(f&quot;\nAUC-ROC: {roc_auc:.2f}&quot;)&#x60;&#x60;&#x60;این کد یک دسته‌بند جنگلی تصادفی را روی داده‌های افزایش حجم نمونه‌ها آموزش می‌دهد و عملکرد آن را با استفاده از معیارهای مناسب برای داده‌های نامتوازن ارزیابی می‌کند.نمونه‌های واقعیافزایش حجم نمونه‌ها در موارد واقعی می‌تواند کاربردهای متعددی داشته باشد:- **تشخیص کلاهبرداری**: تشخیص تراکنش‌های کلاهبرداری در داده‌های مالی، جایی که تراکنش‌های کلاهبرداری نسبت به تراکنش‌های معتبر کمیاب هستند.- **تشخیص بیماری‌های کمیاب**: تشخیص بیماری‌های کمیاب در مجموعه داده‌های پزشکی، جایی که شیوع بیماری کم است.- **تشخیص نقص**: کشف الگوهای عجیب در ترافیک شبکه برای امنیت سایبری، جایی که نفوذهای شبکه به صورت نادر رخ می‌دهند.- **پیش‌بینی انصراف مشتری**: پیش‌بینی انصراف مشتری در خدمات مبتنی بر اشتراک، جایی که اکثر مشتریان انصراف نمی‌دهند.**پیامدهای افزایش حجم نمونه‌ها**هرچند افزایش حجم نمونه‌ها یک ابزار ارزشمند است، اما مهم است به احتمال پیامدهای ممکن آگاه باشید:- **اورفیتینگ (Overfitting)**: افزایش حجم نمونه‌ها ممکن است به اورفیتینگ منجر شود، که در آن مدل در داده‌های آموزش خوب عمل می‌کند اما در داده‌های دیده نشده بد.- **تلف شدن اطلاعات**: افزایش حجم نمونه‌ها ممکن است تعصبی به مدل وارد کند و اطلاعات ارزشمندی که در داده‌های اصلی وجود دارد را دور بیاندازد. انعطاف‌پذیری در این مورد مهم است.- **محاسبات گران‌تر**: برخی از تکنیک‌های افزایش حجم نمونه‌ها مانند SMOTE و ADASYN محاسباتی گرانتری دارند، به ویژه بر روی مجموعه داده‌های بزرگ.نتیجه‌گیریداده‌های نامتوازن یک چالش متداول در دانش داده و یادگیری ماشین هستند. با اجرای افزایش حجم نمونه‌ها به درستی، می‌توانید میدان بازی را به تعادل برسانید، مطمئن شوید که مدل‌های شما در هر دو کلاس اکثریت و اقلیت عملکرد خوبی دارند و پتانسیل برای پیش‌بینی‌های معنی‌دار در داده‌های نامتوازن را باز کنید. با این حال، همیشه بر اورفیتینگ و احتمال از دست دادن اطلاعات ممکن در اصل داده ها هشدار دهید، و تکنیک افزایش حجم نمونه را که بیشترین متناسب با مشکل و داده های خاص شماست انتخاب کنید.در یک دنیا پر از داده‌های نامتوازن، مسلط شدن به افزایش حجم نمونه‌ها می‌تواند کلیدی برای کشف بینش‌های ارزشمند و تصمیم‌گیری بهتر در حوزه‌های مختلف باشد - از تشخیص کلاهبرداری تا تشخیص بیماری‌های کمیاب.</description>
                <category>سعید میرشکاری</category>
                <author>سعید میرشکاری</author>
                <pubDate>Tue, 05 Sep 2023 00:59:26 +0330</pubDate>
            </item>
                    <item>
                <title>کلاس آنلاینِ آشنایی دست-به-آچار با علوم داده (رایگان)</title>
                <link>https://virgool.io/@saeed.mirshekari/%DA%A9%D9%84%D8%A7%D8%B3-%D9%85%D9%82%D8%AF%D9%85%D8%A7%D8%AA%DB%8C-%D8%B9%D9%84%D9%88%D9%85-%D8%AF%D8%A7%D8%AF%D9%87-%D8%B1%D8%A7%DB%8C%DA%AF%D8%A7%D9%86-pydteqo2sgxx</link>
                <description>برای دریافت اطلاعات تکمیلی و ثبت نام روی همین لینک کلیک کنید.............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................</description>
                <category>سعید میرشکاری</category>
                <author>سعید میرشکاری</author>
                <pubDate>Fri, 24 Dec 2021 21:42:07 +0330</pubDate>
            </item>
                    <item>
                <title>«بلیک» و حباب اجتماعی‌-فرهنگی‌ای که در آن محصوریم</title>
                <link>https://virgool.io/@saeed.mirshekari/%D8%A8%D9%84%DB%8C%DA%A9-%D9%88-%D8%AD%D8%A8%D8%A7%D8%A8-%D8%A7%D8%AC%D8%AA%D9%85%D8%A7%D8%B9%DB%8C-%D9%81%D8%B1%D9%87%D9%86%DA%AF%DB%8C%D8%A7%DB%8C-%DA%A9%D9%87-%D8%AF%D8%B1-%D8%A2%D9%86-%D9%85%D8%AD%D8%B5%D9%88%D8%B1%DB%8C%D9%85-fdsyp8n9nkya</link>
                <description>نوشته‌ی مسعود عسلیبیست و نهم آبان ۱۳۹۹ترجمه با کمک‌ سودابه موسویامروزه تقریباً ۶۵۰۰ زبان در جهان صحبت می شود. کشور مادری من ایران، کشوری است که از لحاظ زبانی متنوع است. غیر از فارسی که زبان برجسته‌ی این سرزمین است، آذری، کردی، گیلکی، مازندرانی، لوری، عربی، بلوچی و ترکمنی بسیار صحبت می شود. به این موارد انواع زبان‌هایی با گویشور کمتر مانند قشقایی و تالشی و همچنین تعداد زیادی زبان محلی، گویش‌ها و زیرشاخه‌های زبان‌های مختلف را نیز اضافه کنید. این زبان‌ها ریشه‌ی عمیقی در تاریخ آن کشور دارند و نقش مهمی در هویت‌های مختلف منطقه‌ای و قومی در منطقه‌ی جغرافیایی گسترده ایفا می کنند.قصه‌هایی را به یاد می آورم که مادربزرگم در کودکی به زبان مادری آذری خود برای ما تعریف می‌کرد. آن داستان‌ها اکنون بیشتر فراموش شده اند. واقعیت تاسف‌بار این است که اکثر مردم در سراسر جهان فقط به محتوای تولید شده به زبان مادری خود محدود هستند. محتوایی که اگر به آن زبان صحبت نکنید احتمالاً هرگز به دست شما نخواهد رسید.به عنوان مثال انگلیسی را به عنوان متداول ترین زبان در جهان در نظر بگیرید. با بیش از ۱/۱۳ میلیارد گویشور، فقط ۲-۳٪ از کتاب‌های منتشر شده به زبان انگلیسی در اصل به زبان‌های دیگر نوشته شده اند. این میزان حتی در زبان چینی ماندارین، که دومین زبان متداول است که توسط حدود۱/۱۱ میلیارد نفر استفاده می شود، کمتر است.به تمام داستان‌های لذت‌بخشی در جهان فکر کنید که هرگز نشنیده‌اید تنها به دلیل اینکه آنها به یکی از آن ۶۵۰۰ زبان دیگر گفته یا نوشته شده‌اند!
خبر بد اینکه این انزوای زبانی عوارض جانبی جدی دارد. در حالی که جهان با ظهور فناوری رو به کوچک شدن است، اما یکی از عوارض جانبی این انزوا، فشار بیشتر زبان‌های کم-گویشور به سمت نابودی است. عارضه‌ی جانبی دیگر، گنجینه‌های فرهنگی و ادبی پنهانی است که به دلیل عدم توانایی ما در خواندن، هرگز در جهان معرفی نمی‌شوند. به تمام داستان‌های لذت‌بخشی در جهان فکر کنید که هرگز نشنیده‌اید تنها به دلیل اینکه آنها به یکی از آن ۶۵۰۰ زبان دیگر گفته یا نوشته شده‌اند!خبر خوب اینکه ما داریم برای حل این مشکل تلاش می‌کنیم و شما هم می‌توانید به حل این مشکل کمک کنید! ما در حال ساخت یک سامانه‌ی الکترونیکی یکپارچه برای نویسندگان، مترجمان، ناشران و خوانندگان هستیم بنام BLIK (بلیک). «بلیک» بستری مبتنی بر فضای ابری است، بنابراین همه در سراسر جهان می‌توانند به راحتی به آن دسترسی پیدا کنند. و قسمت جالب این که: تمرکز «بلیک» بر مترجمان است.ما می دانیم که تولید ترجمه‌های با کیفیت بالا چقدر دشوار است، بنابراین می خواهیم ابزاری را فراهم کنیم تا مطمئن شویم مترجمان می توانند محتوای اصلی عالی پیدا کنند، به بازارهای جدید دسترسی پیدا کنند و دستمزد مالی شایسته‌ی تلاش خود را داشته باشند.ما دوست داریم شما را در این سفر با خود همراه کنیم!با ایمیل در لیست کاربران اول ما ثبت نام کنید تا از جدیدترین ها مطلع شوید: www.ofallonlabs.com</description>
                <category>سعید میرشکاری</category>
                <author>سعید میرشکاری</author>
                <pubDate>Thu, 26 Nov 2020 10:04:07 +0330</pubDate>
            </item>
                    <item>
                <title>زبان‌ها و آدم‌ها: همگانی سازی ترجمه‌ی ادبی در بلیک</title>
                <link>https://virgool.io/@saeed.mirshekari/%D8%B2%D8%A8%D8%A7%D9%86%D9%87%D8%A7-%D9%88-%D8%A2%D8%AF%D9%85%D9%87%D8%A7-%D9%87%D9%85%DA%AF%D8%A7%D9%86%DB%8C-%D8%B3%D8%A7%D8%B2%DB%8C-%D8%AA%D8%B1%D8%AC%D9%85%D9%87%DB%8C-%D8%A7%D8%AF%D8%A8%DB%8C-%D8%AF%D8%B1-%D8%A8%D9%84%DB%8C%DA%A9-rtbl42j6qjrl</link>
                <description>بیست و سوم آبان ۱۳۹۹من سعید هستم و این اولین پست وبلاگی ام در مورد «بلیک» است. خوشحالم از اینکه این یادداشت را با شما به اشتراک می گذارم و سپاسگزارم از وقتی که برای خواندن این نوشته صرف می کنید. آنچه که در ادامه می خوانید طرح مشکلی است که قصد داریم در «بلیک» حل کنیم و توضیح این که چرا این موضوع جالب و پرداختن به آن باارزش است.برای مشاهده‌ی منبع متن و اطلاعات بیشتر در مورد «بلیک» اینجا کلیک کنید. زبان‌ها جذاب هستند، این طور نیست؟ به عنوان یک انسان یکی از مهمترین مفاهیمی که به زندگی ما معنا می‌بخشد و ما را در میان سایر موجودات زنده منحصر به فرد می‌کند ، مفهوم «ارتباط» است. ما از زبان‌ برای اشتراک و انتقال افکار خود به سایر هم نوعانمان در طول زمان حال و آینده استفاده می کنیم.نموداری از زبان‌های دنیا به نسبت جمعیتی از جهان که به آن زبان صحبت می‌کنند.
به همین دلیل است که ما انسان‌ها توانایی تکامل سریع را داریم، چون می توانیم اطلاعات را از نسلی به نسل دیگر از طریق اشتراک و ارتباط (بیشتر از طریق اسناد نوشتاری مانند کتاب) انتقال دهیم. اما از آنجایی که همه‌ی ما از طریق یک زبان واحد ارتباط برقرار نمی‌کنیم باعث می‌شود از محتوای خوب در سایر زبان‌ها دور بمانیم.آیا می‌دانستید فقط ۲ تا ۳ درصد از کتاب‌های منتشر شده به زبان انگلیسی در اصل به زبان‌های دیگر نوشته شده‌اند؟ آیا این میزان اندک نشان دهنده ی این نیست که ما از دنیای غیرانگلیسی زبان و داستان های خوب آنها بی بهره می مانیم؟ آیا این مساله خوب است؟ اگر بتوانیم این درصد را کمی بالاتر ببریم چه؟از حدود یک سال گذشته من دائماً در فکر راه حلی برای بهبود روند ترجمه ادبی بوده‌ام، مشکلی که سالهاست در طول زندگی خود اینجا و آنجا تجربه کرده ام و فکر می‌کنم در این زمینه تنها نیستم و افراد زیادی مثل شما نیز با آن آشنایی دارند. اما قبل از اینکه به جزئیات و وضعیت فعلی آنچه در مورد راه حل این مشکل در ذهن دارم بپردازم، می‌خواهم یک داستان شخصی در مورد خودِ «مشکل» را با شما مطرح کنم.همسر من زبان شناس است و من یک تحلیل‌گرِ داده هستم که به حوزه ی پردازش زبان طبیعی علاقه مندم. مدتی است که ما در مورد ماهیت و آینده این دو موضوع (زبانشناسی سنتی و رایانشی) و چگونگی کمک آن‌ها به یکدیگر بحث و گفتگو می کنیم و در این زمینه توافق‌ها و اختلاف نظرهایی داریم.برای داشتن تجربه دست اول و آزمایش فرضیه های مختلفمان سال گذشته تصمیم گرفتیم چند داستان کوتاه منتخب از مجله‌ی نیویورکر را از انگلیسی به فارسی برگردانیم، دو زبانی که هر دوی ما به آن مسلط هستیم. همسرم کار ترجمه را انجام داد و من در ویرایش و حروفچینی نهایی به او کمک کردم. تجربه ی بسیار خوبی بود و آنچه که در این فرآیند آموختیم برای ما فوق العاده بود و من مایلم برخی از این موارد را با شما در میان بگذارم.در این تجربه، ما با دو مشکل اساسی روبرو شدیم: (۱) پیچیدگی ذاتی ترجمه ادبی، (۲) ناکارآمدی صنعت ترجمه. که در نتیجه‌‌ی این دو، صدها میلیون خواننده از داستان‌های زیبا و منحصر به فردی که به زبان‌های دیگر نوشته شده محروم می شوند. همانگونه که پیش تر نیز اشاره کردم فقط ۲ تا ۳ درصد از کتابهای منتشر شده به زبان انگلیسی در اصل به زبانهای دیگر نوشته شده‌اند (برای ادبیات داستانی این عدد زیر یک درصد است). این مسئله ی بزرگیست و باید راه حلی برای آن اندیشید.در خصوص مشکل اول، باید بگویم ترجمه ادبی بدون شک کار بسیار دشواری است! و علی‌رغم پیشرفت‌های قابل توجه اخیر در زمینه ی ترجمه ماشینی، هنوز برای فایق آمدن بر پیچیدگی‌های ترجمه آثار ادبی فاخر راه درازی در پیش است. مطالعات پژوهشگران نیز این موضوع را تایید می‌کند* ، به عنوان مثال در یکی از پژوهش‌های اخیر محققان دریافتند که فقط ۱۷ تا ۳۴ درصدِ ترجمه‌ی ماشینی در ادبیات بدون ایراد است و ۶۶ تا ۸۳ درصد باقی مانده برای ترجمه‌ی دقیق به مترجم نیاز دارند.مشکل دوم اینکه، صنعت انتشارِ ترجمه در چندین سطح و برای همه طرف‌های درگیر  آن از جمله نویسندگان، مترجمان، ناشران و خوانندگان صنعت قدیمی و ناکارآمدی است. برای مثال اگر شما خود را جای هر یک از این افراد قرار دهید می بینید که هیچ راه حل  و محیط کارآمدی برای اتصال آنها به یکدیگر و تولید شفافیت و اطلاعات جامع لازم برای آنچه که هر کدام از طرف‌ها ارايه می‌کنند، وجود ندارد. به عنوان مثال، من به عنوان مترجم برای چاپ ترجمه بعدی خود، یا باید منتظر بمانم تا از ناشر پیشنهادی دریافت کنم و قراردادی منعقد شود یا باید ترجمه و یا پیشنهاد ترجمه‌ام را تهیه و تکمیل کنم و با آن ناشر پیدا کنم. در هر دو صورت، این روند بسیار ناکارآمد است و در دنیای جدید باید این روند بسیار آسانتر از این باشد! سناریوهای مشابه در مورد نویسندگان ، ناشران و خوانندگان صنعت انتشار ترجمه هم صادق است.در این مطلب سعی کردم آنچه را که در مورد «مشکل»، ریشه‌ها و پیامدهای آن فکر می‌کنم توضیح دهم. در پست‌های بعدی وبلاگ، «راه حل» را توضیح خواهم داد. این که «بلیک» چگونه می‌تواند در جهت رفع این مشکل به اشخاص درگیر در صنعت ترجمه‌ی آثار ادبی کمک کند:الف)‌ بلیک می‌تواند به مترجمانی که به دنبال محتوای زبان اصلی مناسب برای ترجمه هستند کمک کند و برای آنها حق‌الترجمه منصفانه و ارزش افزوده بیشتری به ارمغان بیاورد،ب)‌ بلیک می‌تواند به نویسندگان آثار ادبی که مایلند آثارشان در مدت زمان کوتاه تری به دست خوانندگان زبان‌های دیگر برسد کمک کند و خیال آن‌ها را از کیفیت ترجمه و حق‌التالیف منصفانه راحت کند،ج)‌ بلیک می‌تواند به ناشرانی که می‌خواهند در هنگام سرمایه‌گذاری در ترجمه‌‌ی یک کتاب یا اثر ادبی از ظرفیت بازار مقصد، کیفیت کار اصلی و ترجمه و بازگشت سرمایه‌ خود ارزیابی قابل اعتمادی داشته باشند کمک کند،د)‌ بلیک همچنین می‌تواند به خوانندگانی که به دنبال ترجمه با کیفیت از بهترین و جدیدترین محتوای اصلی در جهان به زبان مادری خود هستند هم کمک کند.برای دانستن جزییاتِ اینکه «بلیک» در هرکدام از موارد بالا چگونه به شما کمک می‌کند، گوش به زنگ باشید. در پست‌های بعدی وبلاگ در این مورد در این وبلاگ (کلیک کنید!)‌ خواهیم نوشت.arxiv: 1801.04962*</description>
                <category>سعید میرشکاری</category>
                <author>سعید میرشکاری</author>
                <pubDate>Tue, 17 Nov 2020 10:38:53 +0330</pubDate>
            </item>
                    <item>
                <title>دیده‌بان کویید۱۹ در کشورهای جهان به فارسی</title>
                <link>https://virgool.io/@saeed.mirshekari/%D8%AF%DB%8C%D8%AF%D9%87%D8%A8%D8%A7%D9%86-%DA%A9%D9%88%DB%8C%DB%8C%D8%AF%DB%B1%DB%B9-%D8%AF%D8%B1-%DA%A9%D8%B4%D9%88%D8%B1%D9%87%D8%A7%DB%8C-%D8%AC%D9%87%D8%A7%D9%86-%D8%A8%D9%87-%D9%81%D8%A7%D8%B1%D8%B3%DB%8C-i0b5pm8pmzk2</link>
                <description> شام آخر بصورت غیرحضوریبرای مشاهده‌ی آخرین وضعیت نمودارهای رشد کویید۱۹ (با سه معیار مختلف) در کشورهای جهان اینجا کلیک کنید. نمودارها بصورت روزانه به‌روزرسانی خواهد شد. منبع داده‌ها سازمان بهداشت جهانی است.در صورت نیاز‌ توضیحات و معیارهای بیشتر بر اساس بازخوردهای شما (در قسمت نظرات و پیشنهادات همین پُست) اضافه خواهد شد.</description>
                <category>سعید میرشکاری</category>
                <author>سعید میرشکاری</author>
                <pubDate>Sun, 03 May 2020 07:13:40 +0430</pubDate>
            </item>
                    <item>
                <title>فیزیک پیشه ای که دیتاساینتیست از آب درآمد</title>
                <link>https://dataio.ir/فیزیک-پیشه-ای-که-دیتاساینتیست-از-آب-درآمد-tsralw13ds0l</link>
                <description>فهرست مطالب:- من کیستم و مخاطب این نوشته چه کسانی هستند؟- چرا این مطلب را می نویسم؟- از محیط دانشگاهی به صنعت- دیتاساینس چیست و دیتاساینتیست کیست؟- چه مهارت هایی مورد نیاز است؟ (منابع یادگیری)- سه مرحله تا دیتاساینتیست شدنمن کیستم و مخاطب این نوشته چه کسانی هستند؟من یک دیتا ساینتیست با پیش زمینه فیزیک هستم. این مطلب را برای آن دسته از افرادی می نویسم که سابقه آکادمیک دارند و علاقه مند هستند در بخش صنعت به عنوان دیتا ساینتیست مشغول به کار شوند. اگرچه مخاطب این نوشته افراد دانشگاهی با مدارک عالی در حوزه های کمّی همچون فیزیک، آمار، ریاضیات و مهندسی هستند، افراد علاقه مند در سایر حوزه های مرتبط نیز ممکن است این مطلب را مفید بیابند.چرا این مطلب را می نویسم؟به اعتقاد من همه افراد در هر جای دنیا باید بتوانند به اطلاعاتی که نشان می دهد چطور می توانند علاقه مندی های خود را دنبال کنند، دسترسی داشته باشند. تفاوت ها در میزان موفقیت افراد نباید به واسطه ی نبود اطلاعات باشد، بلکه می تواند به عنوان مثال به دلیل تفاوت ها در میزان خلاقیت، استراتژی و سخت کوشی آنها باشد.اگرچه بدیهی است که برای رسیدن به موفقیت فقط یک راه وجود ندارد، اما همیشه مشخص نیست راه و روش موفق به چه صورت است. این پرسش نه تنها برای خود من مطرح بوده، بلکه اغلب، پرسش های مشابهی نیز از بسیاری از همکاران و دانشجویان سال های پایین تر نیز گرفته ام. از آنجایی که خودم نتوانستم یک مطلب جامع و آموزنده در خصوص تغییر مسیر از محیط آکادمیک به دیتا ساینس در صنعت پیدا کنم، تصمیم گرفتم این مطلب را بنویسم و با علاقه مندان به اشتراک بگذارم.از محیط دانشگاهی به صنعتژانویه ی سال ۲۰۱۶ که تازه کارم را به عنوان دیتا ساینتیست شروع کرده بودم، یکی از دوستان فیزیکدانم که دوره ی پسا دکترایش را در اروپا می گذراند، از من راجع به کارم پرسید و اینکه نظرم تا بحال راجع به آن چیست. او هم به دیتا ساینس علاقه مند بود و می خواست بیشتر در موردش اطلاعات کسب کند. اینکه برای دیتا ساینتیست شدن از کجا باید شروع کند، چه مهارت هایی نیاز دارد و کجا باید دنبال این پوزیشن بگردد. از آنجایی که او اولین نفری نبود که این سوال ها را از من می پرسید، تصمیم گرفتم در اینجا به این پرسش ها پاسخ دهم و به اختصار مسیری که خودم طی ۱۸ ماه طی کردم تا از یک محقق دوره پسا دکترا در محیط علمی به دیتا ساینس در محیط صنعت فناوری روی بیاورم را توضیح دهم. امیدوارم این مقاله برای افراد دیگر فارغ التحصیل در رشته های علوم و مهندسی که سوالات مشابهی دارند و قصد دارند دیتا ساینس را به عنوان شغل آینده ی خود انتخاب کنند نیز مفید باشد.به عنوان یک محقق سابق پسا دکترا و کسی که محققان پسا دکترای زیادی در دوران تحصیل و تحقیق خود ملاقات کرده، بر این باورم که اگرچه در یک روند حرفه ای موفق، پوزیشن پسا دکترا جای فوق العاده خوبی برای گذار است (گذار به یک پوزیشن ثابت در هیئت علمی دانشگاه ها یا شغل مناسبی در حوزه صنعت) اما الزاماً بهترین جا برای ماندن به مدت طولانی نیست. در زمان نه چندان دور، قصد تقریباً تمامی افرادی که مدرک دکترا و پسا دکترا در رشته های علوم داشتند، این بود که بعد از یک یا دو دوره ی پسا دکترا، استادان دانشگاه آینده شوند. این رویه طی یک دهه ی گذشته به دلایل مختلفی همچون نبود مشاغل دانشگاهی مناسب از یک سو و تقاضای رو به رشد حوزه ی صنعت برای جذب دارندگان دکترای علوم از سوی دیگر، تغییر قابل توجهی کرده است.بنابراین، به دلایل مختلف (که برخی از آنها را می توانید اینجا ببینید) بسیاری از افرادی که دکترای علوم، مهندسی یا حتی رشته های دیگر دارند ممکن است محیط دانشگاهی را بهترین جا برای ماندن نبینند و در نتیجه نهایتاً تصمیم به ترک آن محیط بگیرند. در حقیقت تنها درصد بسیار کمی از دارندگان مدرک دکترا، یعنی پروفسورها، هستند که تمام سال های حرفه ای خود را در محیط دانشگاهی می مانند (به عنوان مثال نگاه کنید به نمودار بالا از این گزارش که در سال ۲۰۱۰ در انگلستان به چاپ رسیده است).یکی از مسیر های حرفه ای معقول برای افراد دارای تحصیلات دانشگاهی در رشته های علوم و فناوری، انتخاب حوزه ی دیتا ساینس است، حوزه ای که به سرعت در حال رشد می باشد. ادامه ی این یادداشت بیشتر برای آن دسته از افرادی مفید است که دارند به انتخاب این مسیر فکر می کنند تا دیتا ساینتیست شوند. آنهایی که ممکن است بخواهند راجع به اینکه این رشته چیست، چگونه می توان برای آن آماده شد، و کجا می شود برای پیدا کردن بهترین موقعیت های شغلی جستجو کرد، بیشتر بدانند. در قسمت های بعدی سعی می کنم به این موارد بپردازم.دیتا ساینس چیست و دیتا ساینتیست کیست؟به دلیل ماهیت این رشته تعریف واحدی برای دیتا ساینس و دیتا ساینتیست وجود ندارد. تعاریف و توصیفات محدوده ی وسیعی را شامل می شود. اما تفسیر من این استدیتا ساینتیست یک فرد حرفه ای و با مهارت با ذهنیت علمی است که از داده های قبلی و فعلی استفاده می کند تا پرسش های درست را بپرسد (و در نهایت به آنها پاسخ دهد) تا اینکه بتواند آگاهانه ترین تصمیمات آتی را در یک سازمان بگیرد.نقل قول های مشهور زیادی از افراد ارشد این رشته برای تعریف دیتا ساینس وجود دارد. هرکدام از آنها یک جنبه را از یک منظر به خوبی توصیف می کند و همه ی آنها با هم می تواند توصیف خوبی از واقعیت مربوط به دیتا ساینس و دیتا ساینتیست ها به ما بدهد. در ادامه چند نقل قول مورد علاقه ی من در مورد اهمیت/تعریف دیتا/دیتا ساینس/دیتا ساینتیست را می خوانیم.دیتا نفت جدید است؟ خیر. دیتا خاک جدید است. —دیوید مک کندلوس دیتا ساینتیست ها درگیر جمع آوری دیتا و ماساژ دادن آن به یک فرم قابل انعطاف و قابل کنترل هستند، دیتا را وادار  می  کنند که داستانش را بگوید، و  آن داستان را به دیگران ارائه می دهند. — مایک لوکیدیس، نایب رئیس اورایلیدیتا ساینتیست شخصی است که در آمار از هر مهندس نرم افزاری و در مهندسی نرم افزار از هر  آمارگری بهتري است.  —جاش ویلزتا سال ۲۰۱۸ ایالات متحده آمریکا کمبود ۱۹۰ هزار دیتا ساینتیست با مهارت و همچنین یک و نیم میلیون مدیر و تحلیل گر با توانایی به دست آوردن بینش قابل اقدام از سیل کلان داده ها را تجربه خوهد کرد. — مک کینزی ریپورتاین رشته ی جدید مورد تقاضا (دیتا ساینس) وعده تغییرات اساسی و انقلابی در صنایع از تجارت تا دولت، و از نظام درمانی تا محیط دانشگاهی را می دهد. —نیویورک تایمزدیتا ساینتیست باید در علوم کاربردی اطلاعات داشته باشد با تجربه ای گسترده در صنعت و آموزش در علوم. ـــ خوآن اف سیاو این هم جوک مورد علاقه ی من در مورد تعریف دیتا ساینتیست که کریس دیکسون در توییتر باز نشر کرده: «دیتا ساینتیست کارشناس آماری است که در سن فرانسیسکو زندگی می کند!» که تا حدودی هم واقعیت داردبرای اینکه دید جامع تری نسبت به این رشته و کلان داده ها داشته باشید، پیشنهاد می کنم حتماً این پیام ویدیویی دو دقیقه ای از باراک اوباما، رئیس جمهور وقت آمریکا، در مورد دیتا ساینس در سال ۲۰۱۵ را تماشا کنید که در آن دی جی پاتیل را به عنوان اولین دیتا ساینتیست ارشد کاخ سفید معرفی می کند و پس از آن سخنرانی ۱۰ دقیقه ای شنیدنی از دی جی پاتیل و همچنین ویدیوی ۱۲ دقیقه ای از هیلاری میسون در سال ۲۰۱۲.چه مهارت هایی مورد نیاز است؟ (منابع یادگیری)به طور کلی مهارت هایی که برای شغل دیتا ساینتیست لازم است معمولاً در این سه طبقه قرار می گیرد (نمودار زیر را ببینید)- ریاضیات و آمار- مهارت های برنامه نویسی و هک کردن- دانش تخصصی در زمینه ی کاری.بسته به اینکه گرایش تحصیلی شما چیست، ممکن است نیاز داشته باشید روی تقویت مهارت های متفاوتی از لیست بالا تمرکز کنید. به عنوان مثال، دانش آموختگان دوره دکترای فیزیک نباید در بخش ریاضیات و آمار مشکل قابل توجهی داشته باشند. اما دو دسته دیگر، یعنی دانش تخصصی در زمینه ی کاری و مهارت های هک کردن (الگوریتم های یادگیری ماشین، مهارت های برنامه نویسی، ابزارهای پیشرفته ی نرم افزاری، غیره) مواردی هستند که باید بیشتر رویشان تمرکز کنند. فهرست دقیق و نسبتاً جامعی از مهارت هایی که برای دیتا ساینتیست شدن مورد نیاز است در این نمودار قابل دسترس است. این مقاله نیز در مورد مهارت های مورد نیاز این حوزه اطلاعات مفیدی می دهد.موضوعات و ابزار های بسیاری در گروه مهارت های هک کردن وجود دارد که می توانید در دوران آماده سازی خود را با آنها آشنا کنید. اما هیچ کسی نیست که همه ی آنها را کامل بداند و این مسئله اصلاً اشکالی ندارد. به نظر من مهم ترین مهارت ها در این گروه که تقاضای بالایی هم برایشان وجود دارد عبارتند از:الگوریتم های یادگیری ماشین:Regression, Classification, Clustering, Recommender Systems, Neural Networks, etc.زبان های برنامه نویسی:Python, R, SAS, etc.ابزارهای کلان داده ها:Map Reduce Fundamentals, Hadoop, Spark, SQL, etc.ابزارهای مصورسازی:D3.js, ggplot2, matplotlib, etc.من شخصاً زمانی به حوزه ی دیتا ساینس علاقه مند شدم که داشتم در دوره ی پسا دکترا به عنوان محقق در گروه تحلیل داده های  لایگو کار می کردم. در آن دوره این فرصت را داشتم که در حین کار با کلان داده های امواج گرانشی با تعدادی از ابزارها و تکنیک های تحلیل داده ها بیشتر آشنا شوم و با آنها کار کنم که در طول مسیر کمک زیادی به من کرد. اولین پروژه های دیتا ساینس را زمانی شروع کردم که یک دوره ی ۱۰ هفته ای یادگیری ماشین با اندرو-ان-جی از دانشگاه استنفورد گرفتم. دوره ی بسیار خوبی بود و باعث شد بعد از آن در دوره های دیگری نیز شرکت کنم و به دیتا ساینس به عنوان مسیر شغلی آینده ام فکر کنم. در ادامه نمایی از مسیری که من به سمت دیتا ساینس طی کردم را خواهید دید که مطمئناً تنها یکی از بیشمار راه های ممکنی است که وجود دارد.کتاب های درسی:از میان تمام کتاب های مفید موجود در زمینه ی آمار کاربردی و الگوریتم های یادگیری ماشین که برای دیتا ساینس بسیار ضروری هستند، من کتاب های زیر را توصیه می کنم که توسط ناشر هایشان آنلاین و به صورت رایگان نیز در دسترس استThe Elements of Statistical Learning: Data Mining, Inference, and Prediction. By Trevor Hastie, Robert Tibshirani, Jerome Friedman. [Download] (see the course: Statistical Learning)An Introduction to Statistical Learning with Applications in R. By Gareth James, Daniela Witten, Trevor Hastieand Robert Tibshirani [Download]Mining of Massive Datasets. By Jure Leskovec, Anand Rajaraman, Jeff Ullman. [Download] (see the course: Mining of Massive Data) وبلاگ ها:تعداد وبلاگ های فعالی که به صورت منظم راجع به دیتا ساینس می نویسند رو به افزایش است. در ادامه به تعدادی از آنها که به نظرم جالب و مفید آمدند اشاره می کنمAstronomer to Data Scientist (مقدماتی)نویسنده ی وبلاگ بالا به اختصار از نحوه ی گذارش از محیط دانشگاهی به دیتا ساینس می گوید. اگر کنجکاوید بدانید بعد از این نوشته چه می کند، این مصاحبه را که یک سال و نیم بعد با او انجام شده بخوانیدData School (مقدماتی)Data Science 101  (مقدماتی و تخصصی)Data  Science Central (مقدماتی و پیشرفته)FlowingData (تخصصی و با جزئیات)R-bloggers (تخصصی)دوره های آنلاین:دوره های آنلاین زیادی وجود دارد که ممکن است بخواهید در آنها شرکت کنید. بسیاری از آنها رایگان هستند و بسیاری دیگر نه. در ادامه من لیست شناخته شده ترین وبسایت های آموزشی را به همراه لینک برخی از دوره های مختص دیتا ساینس می آورم. دوره هایی که در این وب سایت ها ارائه می شود مسلماً تنها محدود به آنهایی که در لیست من آمده نمی شود. آنهایی که به نظرم از همه ی دوره هایی که من تا کنون گذرانده ام مفیدتر بودند را با سه ستاره [***] مشخص کرده ام که به نظرم بالاترین اولویت را دارندfrom Coursera: Series on Data Science:[***] Machine Learning [ده هفته، حجم کار بالا][***] Mining Massive Datasets [هفت هفته، حجم کار بالا][***] Deep Learning Specialization [پنج کلاس هر کدام دو تا چهار هفته، حجم کار بالا]The Data Scientist’s Toolbox [چهارهفته، حجم کار متوسط]R Programming [چهار هفته، حجم کار متوسط]Getting and Cleaning Data [چهار هفته، حجم کار متوسط]from EdX: Series on Data Analysis and Statistics:Data Science and Machine Learning Essentials (AzurML) [پنج هفته، حجم کار متوسط]from Stanford Online Laguna:[***] Statistical Learning[ده هفته، حجم کار بالا]from Udacity: Series on Data Science:Intro to Hadoop and MapReduce [شش هفته، حجم کار متوسط]Data Visualization and D3.js [شش هفته، حجم کار متوسط]from Data Camp:[***] Kaggle R Tutorial on Machine Learning [یک ساعت، حجم کار پایین]دوره های فشرده (Bootcamps):Insight Data Science Fellows Program:دوره ی فشرده ی رایگان ۶ هفته ای دیتا ساینس در شهر نیویورک. اتمام دوره ی دکترا یا نزدیک بودن زمان فارغ التحصیلی فرد شرکت کننده لازم استThe Data Incubator:دوره ی فشرده ی ۶-۸ هفته ای رایگان دیتا ساینس در نیویورک و واشنگتن دیMicrosoft Research Data Science Summer School:دوره ی فشرده ی ۸ هفته ای رایگان دیتا ساینس در نیویورکدقت داشته باشید که از آنجایی که این دوره های فشرده به صورت رایگان ارائه می شوند و از سطح کیفی بالایی برخوردار هستند و میزان استخدام فارغ التحصیلان این دوره ها توسط کمپانی های شناخته شده بسیار بالاست، پذیرش گرفتن برای شرکت در آنها بسیار رقابتی است.علاوه بر لیست رایگانی که در بالا به آنها اشاره شد، دوره های فشرده ی شناخته شده ی دیگری نیز وجود دارند که رایگان نیستند (هزینه آنها سال ۲۰۱۵ بین ۱۲ تا ۱۶ هزار دلار بود). برای دیدن لیست جامع تری از دوره های فشرده دیتا ساینس در آمریکا اینجا را کلیک کنید. در نظر داشته باشید شرکت در این دوره ها اختیاری است و برای اینکه در جای خوبی به عنوان دیتا ساینتیست مشغول به کار شوید، حتماً نباید این دوره ها را گذرانده باشید. اما اگر وقت و هزینه شرکت در یکی از آنها را دارید، این کار را بکنید.برنامه های تحصیلات تکمیلی:از آنجا که مخاطب این نوشته افرادی هستند که تحصیلات عالی دانشگاهی دارند و می خواهند به دیتا ساینس در حوزه صنعت بپیوندند، شاید گزینه برنامه های تحصیلات تکمیلی به آنها مرتبط نباشد، اما برای کامل شدن بحث این قسمت به صورت کوتاه به آن اشاره ای می کنم.به تازگی دوره های کارشناسی ارشد دیتا ساینس در دانشگاه های مختلف آمریکا از جمله دانشگاه کلمبیای نیویورک و همچنین دانشگاه استنفورد آغاز شده است. برای دیدن لیستی از این دوره ها اینجا کلیک کنید. دوره تمام وقت کارشناسی ارشد این رشته معمولاً یک تا دو سال طول می کشد. به دلیل زمان و هزینه بالا، شرکت در این برنامه ها تنها به فارغ التحصیلان دوره کارشناسی که علاقه مند به دیتا ساینس هستند و یا  آن دسته از افرادی که در حال حاضر در تیم های تجزیه و تحلیل شرکت ها مشغول به کار هستند و می خواهند دیتا ساینس را به صورت آکادمیک بیاموزند، توصیه می شود.سه مرحله تا دیتا ساینتیست شدنبا فرض اینکه شما یک فرد با تحصیلات عالی دانشگاهی و تجربه و تخصص معتبر در حوزه ی علمی خود هستید و مایل هستید دیتا ساینتیست شوید، باید سه گام اساسی برای گذار از حوزه خود به حوزه دیتا ساینس بردارید. اینکه چه مدت زمان برای این گذار نیاز است کاملاً به سطح کنونی مهارت هایتان و اینکه چقدر مایل هستید در این روند تلاش کنید بستگی دارد. به عنوان مثال، برای من از زمانی که اولین دوره ی آنلاین خود را شروع کردم تا اولین پیشنهاد کاری ام را به عنوان دیتا ساینتیست گرفتم، حدود ۱۸ ماه طول کشید. در ادامه به تفصیل به این سه گام اساسی می پردازم. به طرح زیر نگاه کنید.گسترش مهارت: ایجاد مجموعه ای قوی از مهارت های دیتا ساینساز آنجا که این گام اولین و شاید مهم ترین گام به سوی هدفتان است، بسیار مهم است که آن را درست انجام دهید. به این دلیل که دیتا ساینس یک گرایش بین رشته ای است، مباحث زیادی ممکن است وجود داشته باشد که کاملاً برای شما جدید باشد و تا کنون با آن ها برخورد نکرده باشید. صبور باشید و یک برنامه منظم را دنبال کنید تا این مباحث را تا آنجا که می توانید به صورت عمیق یاد بگیرید. خیلی نگران میزان وقتی که در این مرحله صرف می کنید نباشید. مثل هر یادگیری دیگری انقدر عقب و جلو می روید تا آن مبحث برای شما جا بیفتد و بتوانید در جاهای دیگر آن را به کار بگیرید. تا می توانید از منابع آموزشی بهره بگیرید و با مفاهیم جدید ارتباط برقرار کنید تا بتوانید در آینده به راحتی از آنها در مسایل دنیای واقعی استفاده کنید.منابع خود را با دقت و هوشمندانه انتخاب کنید و تا می توانید مطالعه کنید، گوش دهید، تماشا کنید و یاد بگیرید تا بتوانید دانش پایه و مهارت های خود را در برنامه نویسی، الگوریتم های یادگیری ماشین و ابزارهای نرم افزاری تکمیل کنید و بهبود ببخشید. کتاب های درسی و دوره های آموزشی آنلاین که در قسمت گذشته به آنها اشاره کردم منابع غنی برای شروع هستند. من شخصاً توصیه می کنم با Machine Learning course in Coursera by Andrew Ng شروع کنید که تقریباً هیچ پیش نیازی از یادگیری ماشین و دیتا ساینس نمی‌خواهد و بعد از آن دوره ی پیشرفته تر Statistical Learning by Trevor Hastie and Rob Tibshirani  از دانشگاه استنفورد را شروع کنید. لینک هر دوی این دوره ها در قسمت قبلی آمده. آنها دامنه وسیعی از مباحث را با رویکردها و ابزار نسبتاً متفاوت پوشش می دهند که به نظر من استراتژی فوق العاده ای برای یادگیری است.به دنبال افرادی بگردید که در این حوزه تجربه دارند یا آنهایی که مانند شما می خواهند این مسیر گذار را طی کنند، آنها را دنبال کنید و با آنها ارتباط برقرار کنید. قرار است مسیر طولانی ای را طی کنید و داشتن افراد مناسب در زمان مناسب کنار خود در این مسیر بسیار به شما کمک خواهد کرد. از آنجا که مسیر گذار است ممکن است لحظات سخت و تاریکی را هم تجربه کنید. هرگز ناامید نشوید و همواره مثبت بیندیشید. هر چه تصمیم اولیه شما برای شروع این مسیر آگاهانه تر باشد، لحظات سخت و تیره ی کمتری خواهید داشت. تا می توانید در مورد حوزه ی جدیدی که می خواهید به آن وارد شوید اطلاعات کسب کنید.علاوه بر مفاهیم جدید و الگوریتم های مختلف یادگیری ماشین که برای دیتا ساینس ضروری هستند، آشنایی با ابزارها نیز بسیار با اهمیت است. به یک زبان برنامه نویسی به صورت کامل مسلط شوید و سعی کنید تا می توانید از زبان های دیگر هم یاد بگیرید تا بتوانید در شرایط خاص از آنها استفاده کنید. دیتاساینتیست ها در مورد اینکه بهترین زبان برنامه نویسی در این حوزه کدام است نظر واحدی ندارند. مهم نیست از کدام زبان برنامه نویسی برای پیاده سازی الگوریتم های خود استفاده می کنید، آنچه اهمیت دارد این است که قادر باشید با بقیه افراد این حوزه که زبان های برنامه نویسی دیگری استفاده می کنند نیز ارتباط برقرار کنید. به همین خاطر و همچنین به دلیل محبوبیتشان، یادگیری و استفاده از زبان های پایتون و آر بیشتر از بقیه توصیه می شود. پایتون توسط دانشمندان حوزه علوم کامپیوتری نوشته شده و در نتیجه از آر سازمان یافته تر است. در صورتی که آر توسط آمارگران ایجاد شده و برای یادگیری آسان تر است و مفاهیم آماری را راحت تر می توان با آن به کار بست. من برای اطمینان هر دو را یاد گرفتم و با آنها کار کرده ام. و از آن پشیمان نیستم.انجام پروژه: شروع کردن و تمام کردن یک پروژه ی دیتا ساینساگرچه گسترش مهارت های مورد نیاز اساسی ترین و طولانی ترین گام برای دیتا ساینتیست شدن است، نمی توان تأثیر مثبت انجام پروژه های کوچک دیتا ساینس را بر موفقیتتان در گام بعدی که جستجوی کار است، نادیده گرفت. اگر از نقطه نظر مدیری که می خواهد شما را برای اولین بار به عنوان دیتا ساینتیست استخدام کند فکر کنید، هر اندازه هم رزومه ی خوب و لیست طولانی مقاله های داوری در مجلات علمی تأثیرگذار داشته باشید، اولین چیزی که او می خواهد بداند این است که آیا شما واقعاً توانایی انجام یک پروژه دیتا ساینس را از ابتدا تا انتها دارید یا خیر. انجام یک پروژه دیتا ساینس پیش از مصاحبه ی کاری و نشان دادن مراحل و نتایج آن یک فاکتور کلیدی است که توانایی و کیفیت کار شما را برای مصاحبه شونده مشخص می کند و در واقع به او کمک می کند تا بتواند آگاهانه تر و در نتیجه با اطمینان بیشتری تصمیم خود را بگیرد.پروژه های بسیاری در این زمینه وجود دارند که می توانید در این مرحله روی آن ها کار کنید. شرکت در برنامه های کارآموزی شرکت های معتبر هم قطعاً ایده ی خوبی است که اگر وقتش را دارید انجام دهید. در نظر داشته باشید که در این صورت باید تمام مراحل اداری مرتبط با درخواست کارآموزی را طی کنید. اما اگر به هر دلیلی نمی توانید به عنوان کارآموز در جایی مشغول شوید، توصیه می کنم خودتان روی یک پروژه کار کنید که هم زمان کمتری از شما می گیرد و هم انعطاف پذیرتر است. در صورتی که تصمیم گرفتید خودتان روی یک پروژه کار کنید توصیه می کنم حتماً در یکی از رقابت های کگل Kaggle شرکت کنید. کگل جایی است برای آن دسته از دیتا ساینتیست هایی که مایلند در حل مسائل بسیار جالب و واقعی شرکت کنند. رقابت ها در دسته های مختلف با ساختار تقریباً یکسان انجام می شود. روال ساده ای دارد: مسائل مختلف دیتا ساینس وجود دارد که باید پیش از موعد مقرر آن را حل کنید. تمام داده های آزمایشی هم برای دانلود قابل دسترسی است. راه حلی که شما قرار است در وبسایت ثبت کنید باید در قالب یک فایل با فرمت استاندارد باشد. مهم نیست از چه ابزار، روش یا الگوریتمی استفاده می کنید. کگل فایل ثبت شده ی شما را با مقایسه آن با راه حل درستی که به صورت محرمانه نگه داشته، امتیاز دهی می کند.به چند دلیل کگل جایگاه فوق العاده ای برای استفاده شما در این مقطع است. اول اینکه تمام مسایل مطرح شده در این وبسایت مسایل استاندارد و واقعی هستند و شما گزینه های مختلفی دارید که می توانید از میان آنها انتخاب کنید. دوم اینکه از آنجایی که در قالب رقابت انجام می شود، تعداد زیادی مانند شما خواهند بود که روی همان مسئله ای که شما کار می کنید، کار می کنند. در نتیجه می توانید با آنها ارتباط برقرار کنید تا ایده های خود را با آنها در میان بگذارید  و الگوریتم ها و نتایج خود را بهتر کنید. و سوم اینکه در پایان رقابت، راه حل شما رتبه بندی می شود و اگر آن را به خوبی انجام داده باشید، می توانید آن را به عنوان یک دستاورد معتبر که کیفیت کار شما را نشان می دهد ارائه کنید.جستجوی کار: رزومه خود را به روز کنید و جستجو ای هوشمندانه انجام دهیدپس از طی دو مرحله ی قبلی حالا زمان آن رسیده که جستجو برای شغل رویاییتان را آغاز کنید. اما همچون مراحل قبلی، این مرحله یعنی یافتن شغل مناسب هم آسان نخواهد بود. اگرچه تقاضا برای جذب دیتا ساینتیست بالاست، باید در نظر داشته باشید که افراد با استعداد بسیاری مانند شما با تحصیلات عالی به صورت فعال در بازار کار مشغول جستجو هستند و در نتیجه محیط برای دیتا ساینتیست شدن بسیار رقابتی است. به همین دلیل برای اینکه در مرحله ی پایانی هم موفق شوید باید استراتژی و قواعد خاصی را دنبال کنید.اگر از محیط دانشگاهی می آیید و سی-وی ۱۰ صفحه ای با لیست کامل سخنرانی ها، مقالات، سمینارها و دستاوردهای خود دارید، آن را کنار بگذارید و به جای آن یک رزومه ی حداکثر دو صفحه ای بسازید. در ابتدای رزومه خود اطمینان حاصل کنید که به صورت واضح خود را معرفی کرده اید؛ اینکه که هستید و چه می خواهید. مهارت های اصلی خود را که مرتبط با شغلیست که دنبال آن هستید (یعنی دیتا ساینتیست) برجسته کنید. تجربیات کاری خود را فهرست کنید تا مهارت های ذکر شده شما را توجیه و تأیید کند.در نظر داشته باشید که عبارت &quot;دیتا ساینتیست&quot; اغلب به صورت یک عنوان کلی استفاده می شود و مشاغلی که به شدت با هم متفاوت هستند را در بر می گیرد. دقت کنید با عنوان شغلی دیتا ساینتیست دقیقاً قرار است چه وظایفی داشته باشید و در چه حوزه ای از صنعت کار خواهید کرد. نقش مهندس دیتا، تحلیل گر دیتا و دیتا ساینتیست ممکن است در نگاه اول برای شما گیج کننده به نظر برسد. این لینک نقش های مختلفی که در حوزه کاری دیتا ساینس وجود دارد را به خوبی توصیف می کند.وقتی می خواهید به یک حوزه ی جدید وارد شوید، اطلاعاتی که از پیش در این زمینه کسب می کنید به شما قدرت پردازش و انتخاب می دهد. در نتیجه جنبه های مختلف مرتبط و همچنین آنچه که بیش از همه به آن علاقه مند هستید را به دقت مورد تحقیق و بررسی قرار دهید. هیچ پرسشی احمقانه یا ساده لوحانه نیست. پاسخ سوالات خود را در مورد مشاغل مربوط به دیتا ساینس پیدا کنید.  خواندن  این گزارش در مورد تحلیل وضعیت ۳۷۰ دیتا ساینتیست در سال ۲۰۱۵ در آمریکا در این مرحله، یعنی جستجوی کار، بسیار مفید است. ممکن است در سال های آتی نیز چنین گزارش هایی در مورد وضعیت دیتا ساینس و افراد مشغول در این حوزه منتشر شود. این وبسایت  نیز در این زمینه اطلاعات خوبی می دهد. این اطلاعات و گزارش ها را به دقت مطالعه کنید و ذهن خود را در مورد اینکه قرار است وارد چه محیط کاری و حوزه ای شوید آماده کنید.در واقع برای تکمیل بحث در این قسمت باید راجع به این موضوع که چطور می توان به صورت کارآمد به جستجوی شغل مورد نظر خود پرداخت و چه تکنیک هایی در این مسیر نیاز است، نیز اشاره ای بکنم. اما از آنجایی که موضوع گسترده ایست و ممکن است ما را از بحث اصلی این متن خارج کند، تصمیم گرفتم به این موضوع نپردازم و شما را به منابع تخصصی دیگری که در این خصوص وجود دارد ارجاع دهم.اما می خواهم در آخر به اختصار به سه مورد مهم و اساسی اشاره کنم. اول اینکه، برای انجام مصاحبه آماده باشید اما انتظار نداشته باشید چند مصاحبه ی اول شما حتماً همانطور که می خواهید پیش بروند. همیشه مصاحبه های بعدی بهتر می شود. از نکاتی که به نظرتان مهم است یادداشت بردارید و از تجربیات مصاحبه های قبلی در موارد بعدی استفاده کنید. از قبل ذهن خود را برای آنچه می خواهید ارائه دهید آماده کنید. این کار زمان می برد و در مصاحبه های اول آسان نخواهد بود. یادم می آید وقتی از گوگل مصاحبه تلفنی گرفتم فقط به خاطر اینکه برایش آماده نبودم خیلی استرس داشتم. بعداً در مصاحبه های بعدی این مسئله بهتر شد.نکته دوم در مورد مهارت های ارتباطی است که باید روی آن سخت کار کنید و شبکه ارتباطی خود را بسازید. اگر دوستان دیتا ساینتیست دارید، با آنها تماس بگیرید، از آنها نظرخواهی کنید و آنها را در روند جستجوی کاری خود وارد کنید. ممکن است آنها اطلاعاتی در مورد فرصت های شغلی در محل کار یا شبکه ارتباطی خود داشته باشند که برای شما جالب باشد. با ارتباط با دیگران می توانید فرصت ها و حق انتخاب های خود را گسترش دهید.سوم اینکه شبکه های اجتماعی ابزار قدرتمند و بسیار پرکاربردی هستند. از آنها استفاده کنید و همیشه به روز باشید. هرچند ملاقات های رو در رو فوق العاده هستند اما ابزارهای آنلاین را نیز در مسیر جستجوی کاری خود دست کم نگیرید و حداکثر استفاده را از آنها ببرید. دیتا ساینتیست های مطرح و شناخته شده را، به خصوص آنهایی که در منطقه جغرافیایی مد نظر شما هستند، در شبکه های اجتماعی دنبال کنید و ببینید مشغول چه کاری هستند. شبکه های اجتماعی زیر در این زمینه میتوانند بسیار مفید باشند:LinkedIn, Monster, Indeed, Kaggle job board, Glassdoorترجمه از منبع اصلیشناسه ی من در توئیتر: smirshekari</description>
                <category>سعید میرشکاری</category>
                <author>سعید میرشکاری</author>
                <pubDate>Tue, 05 Feb 2019 09:03:30 +0330</pubDate>
            </item>
                    <item>
                <title>چهار قدم یادگیری ماشینی با پایتون و پیکان پنجاه وهفت</title>
                <link>https://dataio.ir/چهار-قدم-یادگیری-ماشینی-با-پایتون-و-پیکان-پنجاه-وهفت-vggyg9p4np8p</link>
                <description>این نوشته برای فارسی زبانانی است که می‌خواهند «یادگیری ماشینی» و «تحلیل داده‌ها» و مراحل کلی حل یک مساله را در غالب مثالی ساده مرور کنند و ممکن است هنوز تجربه‌ی تخصصی زیادی از مباحث ریاضی و برنامه‌نویسی لازم در این زمینه نداشته باشند. عده‌ی زیادی هم هستند که ممکن است راجع به یادگیری ماشینی چیزهایی شنیده باشند و حدس می‌زنند این روش ها به همراه تکنولوژی‌های زیرساختی جدید در دنیای بزرگ دیجیتال داده‌ها‌ی امروز می‌تواند به رشد کسب و کار آن‌ها در آینده کمک کند. مرور کاربرد‌های قدرتمند تکنیک‌های  یادگیری ماشین و نتیجه‌های سریع و باکیفیت آن در غالب یک مثال ملموس می‌تواند کمکی به این افراد نیز باشد. این مطالب می‌تواند به سایت دیوار و کسب و کار‌های مرتبط با این داده‌ها نیز کمک مستقیم بکند.امروز سایت کافه‌بازار «دیتاست»ی (مجموعه‌ای مرتب از داده‌ها) از آگهی‌های خرید و فروش در سایت دیوار را منتشر کرد. در این نوشته روی این دیتاست متمرکز خواهیم شد.توییت : اولین دیتاست #دیوار به امید پر کردن جای خالی یه دیتاست ایرانی در فضای آکادمیک کشور ریلیز شد. این دیتاست شامل حدوداً یک میلیون پست در دیوار هستش. اگر کار جالبی روش انجام دادید بگید که ما هم استفاده کنیم. — Amin Moghaddam (@_m30m) January 31, 2019 اولین قدم، دیتا : چه داریم؟اولین قدم در هر مساله‌ی «تحلیل داده‌‌» این است که بررسی کنیم چه داده‌هایی داریم و سعی کنیم تا جایی که امکان دارد آن را از وجوه مختلف بررسی کنیم و بشناسیم. این مرحله در تمام مراحل بعدی علی‌الخصوص اینکه اصولا چه سوالی می‌توان پرسید و چه سوالی جالب\مهم است پرسیده شود و از طریق «تحلیل‌داده‌ها» و «یادگیری ماشینی» پاسخ داده شود، اهمیت ویژه‌ دارد. هر چقدر بیشتر روی این قسمت وقت بگذارید در قدم‌های بعدی راحت‌تر و با آگاهی ‌بیشتر حرکت خواهید کرد. ممکن است در مراحل بعدی حل مساله مجبور شوید دوباره و چند باره به این قدم برگردید. این اصلا غیر طبیعی نیست و در بسیاری موارد لازم است.این دیتاست حاوی اطلاعات نزدیک به یک میلیون آگهی خرید و فروش سایت دیوار است. در هر آگهی اطلاعات زیر بصورت مجزا و تک‌به‌تک قابل دسترسی می‌‌باشد.با نگاهی کلی به این مجموعه و طبقه‌بندی های محصولات در آن به‌سرعت می‌توان توزیع نوع محصولاتی که در مورد آن‌ها آگهی‌شده را بصورت زیر نمایش داد:همانطور که در نمودار بالا مشخص است بیشترین تعداد آگهی‌ها مربوط به «لوازم خانه»(شاخه‌ی مبل و وسائل تزئینی منزل: رنگ سبز) و «وسايل نقلیه‌» (شاخه‌ی ماشین:‌ رنگ خاکستری) می‌باشد.اگر به دسته بندی‌ جزئی‌تر آن‌ها نیز نگاهی بیاندازیم (تصویر زیر) متوجه می‌شویم دسته‌ی «ماشین‌های سبک» (رنگ قرمز در تصویر پایینی) تعداد زیادی از آگهی‌های این سایت را به‌خود اختصاص داده است (بیشتر از همه‌ی شاخه‌های دیگر) . ضمن آن‌که از جدول بالا نیز می‌دانیم اطلاعات بیشتری از این دسته آگهی جمع‌آوری شده است، مانند سال تولید (عمر خودرو) و مسافت طی شده (کیلومتر، مایلج) که در مورد دسته‌های دیگر موجود نیست. بنابراین به عنوان مثال روی این دسته از آگهی‌ها متمرکز می‌شویم.قدم اول را در این‌جا متوقف می‌کنیم اما همانطور که اشاره شد این مرحله، مرحله‌ی بسیار مهمی است و جای کنکاش بسیار بیشتری دارد (همانند همه‌ی مراحل بعدی).قدم دوم: مساله: چه می‌خواهیم؟بعد از اینکه داده‌هایی که در دسترس داریم را شناختیم و تا حدودی مطالعه کردیم نوبت به آن می‌رسد که بپرسیم چه می‌خواهیم؟ و به‌ دنبال پاسخ دادن به ‌چه پرسش یا تولید کردن چه سرویسی و در جهت چه نیازی هستیم. معمولا حتی با داشتن داده‌هایی محدود مانند مثال داده‌های این یادداشت (آگهی‌های سایت دیوار)، سوال‌های بی‌شماری از تحلیل‌های توصیفی (اینکه چه اتفاقی افتاده؟) گرفته تا واکاوی (اینکه چرا چنین اتفاقی افتاده؟) و پیش‌بینی (چه اتفاقی‌خواهد افتاد؟) و توصیه‌گر (چه‌ کار باید کرد؟) به ذهن می‌آید که اتفاقا برای هرکدام تعداد زیادی الگوریتم و روش‌های تحلیلی در یادگیری ماشینی و تحلیل داده‌ها وجود دارد که پرداختن به همه‌ی آن‌ها از حوصله‌ی این یادداشت خارج است. یک تمرین بسیار جالب حتی می‌تواند تحلیل توضیحات متنی آگهی‌ها از طریق روش‌های زبان‌های طبیعی و داده‌های ترتیبی باشد.در این مرحله باتوجه به شرایط، سوال‌های مهم تر را پیدا کرده و در اولویت قرار می‌دهیم. در این یادداشت من سعی کرده ام بدانم آیا می‌توانم با داشتن مسافت طی‌ شده ماشین و سال تولید  و شهری که آگهی در آن منتشر شده، قیمت ماشین را با تقریب خوبی تخمین بزنم یا خیر؟اگر بتوان با داده‌های موجود مدلی ساخت که با آن بتوان  با  دقت قابل قبولی این قیمت ماشین را تخمین زد، این یکی از سرویس‌های داده‌محوری است که می‌تواند بلافاصله در سایت دیوار یا سایت‌های  مشابه جهت کمک به خریداران و فروشندگان جهت قیمت‌گذاری استفاده شود.قدم سوم: حل مساله:‌چگونه مساله‌ را حل کنیم؟ این مرحله قسمت اصلی کار و در عین حال یکی از سریع‌ترین مراحل کار است که معمولا از قسمت ها‌ی دیگر کمتر طول می‌کشد (گول عریض طویل تر بودن این بخش را نخورید!) و ممکن است برای بسیاری جای سوال و تعجب باشد. این به دلیل آن است که بسیاری از الگوریتم‌هایی که به حل مسا‌له‌ی ما کمک می‌کند به راحتی از طریق کتابخانه‌های زبان‌های برنامه‌نویسی مانند آر و پایتون در دسترس همگان است. اگر نیازی نداشته باشید  تغییر بنیادینی در این الگوریتم ها بدهید یا الگوریتم کاملا جدیدی را برنامه‌نویسی کنید، استفاده از این کتابخانه ها بسیار راحت و سریع است. نکته‌ی قابل تاکید این است که اگرچه این الگوریتم ها به آسانی و سرعت قابل دسترس و استفاده است اما بدون فهمیدن و درک عمیقی از چگونگی کارکرد آن‌ها، به احتمال خیلی زیاد به سرعت دچار مشکل خواهید شد. بنابراین نکته اساسی این است که مطمئن شوید منطق الگوریتمی که استفاده می‌کنید را فهمیده اید.برای این مساله‌ی خاص من از الگوریتم بسیار معروفی بنام «رندوم فارست» از یک کتابخانه‌ی پایتون بسیار معروفتر بنام «اس-کی-لرن» استفاده کرده‌ام. توجه کنید که من برای هر برند ماشین یک مدل جداگانه درست می‌کنم که منطقی هم به نظر می‌رسد. در مراحل زیر توضیح داده ام چگونه این کار را در پایتون انجام داده‌ام. شما برای دنبال کردن و اجرا کردن کُد‌های زیر نیاز دارید پایتون را روی ماشین خود نصب کنید که اتفاقا رایگان و بسیار راحت است. با یک جستجوی ساده در اینترنت می‌توانید مراحل کار را در بیاورید.قدم سوم خود شامل پنج مرحله‌ی کوچک‌تر می‌شود: یک- خواندن دیتا:دیتا در قالب‌های بی‌شماری می‌آید، اما در قالب این یادداشت، با تقریبِ خوبی، همه‌ی آن‌ها را می‌توان به فرمت ساده‌ی یک (یا چندین) فایل به فرمت سی-اس-وی تبدیل کرد، مانند همین مثال که به همین فرمت استmasterData = pd.read_csv(&#039;./Downloads/divar_posts_dataset.csv&#039;, index_col=0)دو- تمیزکاری دیتا:#code
تعریف تابعی برای تبدیل «سال تولید» به فرمت عددی مطلوب: 
def get_numeric(x):
     res = np.nan
     if(x==&#039;&lt;1366&#039;):
     return(1350)
     elif(not pd.isnull(x)):
     res = int(float(x))
     return(res)

masterData.loc[:,&#039;year&#039;] = masterData.year.apply(get_numeric)
masterData.loc[:,&#039;mileage&#039;] = masterData.mileage.apply(get_numeric)
برش دیتا به اندازه‌ی مورد نیاز از داده‌ي اولیه:
( در اینجا فقط آگهی های مربوط به ماشین های سبک و یک برند مورد نظر)
 carBrand = &#039;پژو ۲۰۶‍::Peugeot 206&#039;
 myBrand = masterData.loc[
 (masterData.brand == carBrand) &amp;
 (masterData.cat2 == &#039;cars&#039;) &amp;
 (masterData.cat3 == &#039;light&#039;),:]
 دور انداختن اطلاعات به درد نخور یا اشتباه:
 mask_price  = myBrand.price.isin({1, 0,-1})
 mask_mileage = myBrand.mileage.isin({1})
 mask = mask_price | mask_mileage
 myBrand = myBrand[~mask]
نگه داشتن تنها ستون‌هایی از دیتا که تصمیم داریم در مدل استفاده کنیم:
 myBrand = myBrand.loc[:,[&#039;year&#039;, &#039;mileage&#039;, &#039;price&#039;, &#039;city&#039;]]سه- دستکاری کردن ستون‌های دیتا (فیچر انجینیرینگ):در بسیاری موارد ممکن است بخواهید یا لازم باشد تغییراتی در شکل داده‌های ورودی به مدلی که می‌خواهید بسازید و استفاده کنید انجام دهید یا حتی آنها را با هم به شکل خاصی ترکیب کنید و ستون‌های جدیدی بسازید که قبلا وجود نداشت.در این مثال چون من  می‌خواهم از تابعی استفاده کنم که ورودی به شکل کتگوریکال (غیرعددی) نمی‌پذیرد از ترفند معروفی استفاده می‌کنم که برای هر شهر (که طبیعتا متغیر غیرعددی است) ستون جدیدی می‌سازد و اگر آگهی در آن شهر بود برای ستونِ آن شهر مقدار عددی غیر صفر قرار می‌دهد:#code
:صدا کردن تابعی که دستورالعملی که در بالا توضیح داده شد را اجرا می‌کند
from sklearn.preprocessing import LabelBinarizer
lb_style = LabelBinarizer()
lb_results = lb_style.fit_transform(myBrand[&quot;city&quot;])
cityCats = pd.DataFrame(lb_results, columns=lb_style.classes_)
:چسباندن ستون‌های جدید به ستون‌های قدیمی
myBrand = pd.merge(myBrand, cityCats, on = myBrand.index)چهار- دسته بندی دیتا به دو دسته‌ی یادگیری و آزمایش:در این مرحله داده ها را بصورت تصادفی به دو دسته‌ تقسیم میکنم، یکی دسته‌ ی بزرگتر (معمولا حدود هفتاد تا هشتاد درصد از کل داده‌های موجود) برای استفاده در «یادگیری» ماشین و دیگری قسمت کوچتری (بیست تا سی درصد باقی‌مانده) ( را که مدل با آن آموزش ندیده و بنابراین هرگز ندیده و داده‌ی تازه محسوب می‌شود) به منظور «آزمایش» و تعیین دقت مدل آموزش داده شده در شرایط جدید:# Import train_test_split function
 from sklearn.model_selection import train_test_split
جدا کردن ستون‌های ورودی و ستون خروجی  (یعنی آن ستونی که قرار است آن را تخمین بزنیم) که در این مثال قیمت خودرو است:X=myBrand[list(set(myBrand.columns) - {&#039;price&#039;, &#039;city&#039;, &#039;key_0&#039;})] # Features
 y=myBrand[&#039;price&#039;] # Labels
# Split dataset into training set and test set
 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3) # 70% training and 30% testپنج- اجرا کردن الگوریتم یادگیری ماشینی:در اینجا الگوریتم معروف «رندوم فارست» با پارامتر‌های پیش‌فرض:from sklearn.ensemble import RandomForestRegressor
rf = RandomForestRegressor(n_estimators=500, oob_score=True, random_state=0)
rf.fit(X_train, y_train)در این مرحله مدل ما آماده است! ورودی این مدل همانطور که دیدیم «مسافت طی شده» و «سال تولید» و «شهر انتشار آگهی» است و خروجی مدل «قیمت تخمینی خودرو» است. جدول زیر چند نمونه از تخمین قیمت خودرو پژو ۲۰۶ توسط این مدل را نشان می‌دهد.توجه کنید که قیمت های تخمینی بالا برای مقایسه با داده‌های خارج از این دیتاست علی‌الخصوص برای مقایسه قیمت روزِ خودرو  دربازار، مقایسه‌ی مناسبی نیست به علت آن‌که قیمت خودرو در طی‌سال گذشته تغییرات عمده داشته است که به دلیل آن‌که در این دیتاست تاریخ و سال آگهی‌ها دردسترس نیست، این مورد قابل تمایز و تصحیح نیست.قدم چهارم- آزمایش و اعتبارسنجی مدلدرست است که ما مدل را در مرحله‌ی قبل ساختیم و اکنون مُدلی داریم که می‌توانیم به وسیله‌ی آن قیمت خودرو را تخمین بزنیم، اما نمی‌دانیم این مدل تا چه اندازه دقیق و بنابراین تا چه اندازه قابل اعتماد است. آیا این مدل، مدل خوبی است، یا خیر؟ و اگر خوب است، چقدر خوب است؟ برای این کار از دسته‌ی کوچک‌تر داده‌ها که قبلا آماده کردیم (ولی تا اینجا استفاده نکردیم) کمک می‌گیریم (دسته‌ی آزمایش). به این ترتیب که ورودی های آن دسته را به مدل می‌دهیم (خروجی را که قیمت باشد پیش خودمان نگه می‌داریم و به مدل نشان نمی‌دهیم، بنابراین مدل هیچ اطلاع قبلی از قیمت این خودروهای جدیدی که تا بحال ندیده ندارد) و از مدل می‌خواهیم که برای همه‌ی خودرو های موجود در دسته‌ی آزمایش قیمتی پیش‌بینی کند، سپس نتیجه را با قیمت‌های واقعی‌ای که از قبل می‌دانیم مقایسه می‌کنیم. پژو ۲۰۶ - مقایسه‌ی قیمت تخمینی (توسط مدل) و قیمت واقعی (در آگهی) (هر نقطه نماینده‌ی یک آگهی است) 
نتیجه برای مثال بالا به شکل زیر است. پیش‌بینی‌های مدلی که ساختیم با قیمت‌های واقعی‌ که در سایت آگهی شده بیشتر از ۸۵ درصد همبستگی دارد که عدد نسبتا بالایی است. برای بازسازی نتایج این مرحله می‌توانید کد زیر را اجرا کنید: from sklearn.metrics import r2_score
 from scipy.stats import spearmanr, pearsonr
 predicted_train = rf.predict(X_train)
 predicted_test = rf.predict(X_test)
 test_score = r2_score(y_test, predicted_test)
 spearman = spearmanr(y_test, predicted_test)
 pearson = pearsonr(y_test, predicted_test)
 print(f&#039;Out-of-bag R-2 score estimate: {rf.oob_score_:&gt;5.3}&#039;)
 print(f&#039;Test data R-2 score: {test_score:&gt;5.3}&#039;)
 print(f&#039;Test data Spearman correlation: {spearman[0]:.3}&#039;)
 print(f&#039;Test data Pearson correlation: {pearson[0]:.3}&#039;)در نمودار زیر می‌توانید میزان اهمیت هریک از پارامتر‌هایی که در مدلمان استفاده کردیم را نیز ببینید. همانطور که مشخص است فاکتور اصلی در نرخ خودروها «سال تولید» و پس از آن «مسافت طی شده» (یا همان «مایلج») است. در ضمن اینکه شهر محل انتشار آگهی (شهر محل معامله) نقش بسیار تعیین‌کننده‌ای در قیمت خودرو ندارد. توجه داشته باشید مدل بالا را برای پژو ۲۰۶ ساختیم، که دقت نسبتا خوبی هم داشت. در زیر نمودار همبستگی مشابه آنچه برای پژو ۲۰۶ توضیح داده شد را به ترتیب برای پیکان و پراید صندوق‌دار و پراید هاچ بک ببینید.پیکان ظاهرا برای تخمین قیمت، هنوز ماشین سختی است! :))) پیکان - مقایسه‌ی قیمت تخمینی (توسط مدل) و قیمت واقعی (در آگهی)پراید صندوق‌دار - مقایسه‌ی قیمت تخمینی (توسط مدل) و قیمت واقعی (در آگهی) پراید هاچ‌بک - مقایسه‌ی قیمت تخمینی (توسط مدل) و قیمت واقعی (در آگهی)
داده‌ها از: کافه‌بازارتماس: smirshekari</description>
                <category>سعید میرشکاری</category>
                <author>سعید میرشکاری</author>
                <pubDate>Tue, 05 Feb 2019 08:45:32 +0330</pubDate>
            </item>
            </channel>
</rss>