معرفی
این راهنما سومین و آخرین بخش از سه راهنما در مورد ماشینهای بردار پشتیبانی (SVM) است. در این راهنما، ما به کار با موارد استفاده از اسکناسهای جعلی ادامه میدهیم، خلاصهای سریع درباره ایده کلی پشت SVM خواهیم داشت، ترفند هسته چیست و انواع مختلف هستههای غیرخطی را با Scikit-Learn پیادهسازی میکنیم.
در سری کامل راهنمای SVM، علاوه بر یادگیری در مورد انواع دیگر SVM ها، شما همچنین با SVM ساده، پارامترهای از پیش تعریف شده SVM، فراپارامترهای C و Gamma و نحوه تنظیم آنها با جستجوی شبکه و اعتبار سنجی متقابل آشنا خواهید شد.
اگر میخواهید راهنماهای قبلی را بخوانید، میتوانید به دو راهنما اول نگاهی بیندازید یا ببینید کدام موضوعات بیشتر به شما علاقه دارند. در زیر جدول موضوعات تحت پوشش هر راهنما آمده است:
- مورد استفاده: اسکناس را فراموش کنید
- پس زمینه SVM ها
- مدل SVM ساده (خطی).
- درباره مجموعه داده
- وارد کردن مجموعه داده
- کاوش مجموعه داده
- پیاده سازی SVM با Scikit-Learn
- تقسیم داده ها به مجموعه های قطار/آزمون
- آموزش مدل
- پیشگویی
- ارزیابی مدل
- تفسیر نتایج
- فراپارامتر C
- فراپارامتر گاما
3. پیاده سازی دیگر طعم های SVM با Scikit-Learn پایتون
- ایده کلی SVM ها (یک خلاصه)
- هسته (ترفند) SVM
- پیاده سازی SVM هسته غیر خطی با Scikit-Learn
- وارد کردن کتابخانه ها
- وارد کردن مجموعه داده
- تقسیم داده ها به ویژگی ها (X) و هدف (y)
- تقسیم داده ها به مجموعه های قطار/آزمایش
- آموزش الگوریتم
- هسته چند جمله ای
- پیشگویی
- ارزیابی الگوریتم
- هسته گاوسی
- پیش بینی و ارزیابی
- هسته سیگموئید
- پیش بینی و ارزیابی
- مقایسه عملکردهای غیر خطی هسته
بیایید قبل از دیدن تغییرات جالب هسته SVM به یاد بیاوریم که SVM چیست.
ایده کلی SVM ها
در مورد داده های قابل جداسازی خطی در دو بعد (همانطور که در شکل 1 نشان داده شده است) رویکرد الگوریتم یادگیری ماشین معمولی تلاش برای یافتن مرزی است که داده ها را به گونه ای تقسیم می کند که خطای طبقه بندی اشتباه به حداقل برسد. اگر به شکل 1 دقت کنید، متوجه می شوید که می تواند چندین مرز (بی نهایت) وجود داشته باشد که نقاط داده را به درستی تقسیم می کند. دو خط چین و همچنین خط یکپارچه همه طبقه بندی معتبر داده ها هستند.
شکل 1: مرزهای تصمیم گیری چندگانه
هنگامی که SVM انتخاب می کند مرز تصمیم گیری، مرزی را انتخاب می کند که فاصله بین خود و نزدیکترین نقاط داده کلاس ها را به حداکثر می رساند. ما قبلاً می دانیم که نزدیکترین نقاط داده بردارهای پشتیبانی هستند و فاصله را می توان با هر دو پارامتر تعیین کرد C
و gamma
هایپرپارامترها
در محاسبه آن مرز تصمیم، الگوریتم انتخاب میکند که چند نقطه در نظر گرفته شود و حاشیه تا کجا میتواند پیش برود - این یک مسئله حداکثر کردن حاشیه را پیکربندی میکند. SVM در حل این مشکل به حداکثر رساندن حاشیه، از بردارهای پشتیبان استفاده می کند (همانطور که در شکل 2 مشاهده می شود) و سعی می کند مقادیر بهینه را که فاصله حاشیه را بزرگتر نگه می دارد، مشخص کند، در حالی که نقاط بیشتری را به درستی با توجه به تابعی که استفاده می شود طبقه بندی می کند. داده ها را جدا کنید
شکل 2: مرز تصمیم با بردارهای پشتیبانی
به همین دلیل است که SVM با سایر الگوریتمهای طبقهبندی متفاوت است، زمانی که صرفاً یک مرز تصمیم را پیدا نمیکند، بلکه در نهایت مرز تصمیمگیری بهینه را پیدا میکند.
ریاضیات پیچیده ای وجود دارد که از آمار و روش های محاسباتی در پس یافتن بردارهای پشتیبان، محاسبه حاشیه بین مرز تصمیم گیری و بردارهای پشتیبانی، و به حداکثر رساندن آن حاشیه دخیل است. این بار به جزئیات نحوه اجرای ریاضیات نمی پردازیم.
همیشه مهم است که عمیقتر غواصی کنید و مطمئن شوید که الگوریتمهای یادگیری ماشین نوعی طلسم اسرارآمیز نیستند، اگرچه ندانستن همه جزئیات ریاضی در این زمان مانع از اجرای الگوریتم و به دست آوردن نتایج نمیشود.
مشاوره: اکنون که خلاصهای از فرآیند الگوریتمی انجام دادهایم، واضح است که فاصله بین نقاط داده بر مرز تصمیمی که SVM انتخاب میکند، تأثیر میگذارد، به همین دلیل، مقیاس بندی داده ها معمولاً هنگام استفاده از طبقه بندی کننده SVM ضروری است. سعی کنید استفاده کنید روش Scikit-Learn's Standard Scaler برای آماده سازی داده ها، و سپس اجرای مجدد کدها برای دیدن اینکه آیا تفاوتی در نتایج وجود دارد یا خیر.
هسته (ترفند) SVM
در بخش قبل، ما ایده کلی SVM را به خاطر آورده و سازماندهی کرده ایم - ببینیم چگونه می توان از آن برای یافتن مرز تصمیم گیری بهینه برای داده های قابل جداسازی خطی استفاده کرد. با این حال، در مورد داده های غیرخطی قابل تفکیک، مانند آنچه در شکل 3 نشان داده شده است، از قبل می دانیم که یک خط مستقیم نمی تواند به عنوان مرز تصمیم استفاده شود.
شکل 3: داده های غیرخطی قابل تفکیک
بلکه میتوانیم از نسخه اصلاحشده SVM که در ابتدا در مورد آن صحبت کردیم، به نام Kernel SVM استفاده کنیم.
اساساً، کاری که SVM هسته انجام خواهد داد این است که دادههای غیرخطی قابل تفکیک ابعاد پایینتر را به شکل متناظر آن در ابعاد بالاتر نمایش دهد. این یک ترفند است، زیرا هنگام نمایش داده های غیرخطی قابل تفکیک در ابعاد بالاتر، شکل داده ها به گونه ای تغییر می کند که قابل تفکیک می شود. به عنوان مثال، زمانی که به 3 بعد فکر می کنیم، نقاط داده از هر کلاس می تواند در یک بعد متفاوت تخصیص داده شود و آن را قابل تفکیک کند. یکی از راههای افزایش ابعاد دادهها میتواند از طریق توانمندسازی آن باشد. باز هم، ریاضیات پیچیده ای در این مورد دخیل است، اما برای استفاده از SVM لازم نیست نگران آن باشید. بلکه میتوانیم از کتابخانه Scikit-Learn پایتون برای پیادهسازی و استفاده از هستههای غیرخطی به همان روشی که از خطی استفاده کردهایم استفاده کنیم.
پیاده سازی SVM هسته غیر خطی با Scikit-Learn
در این بخش، از همان مجموعه داده برای پیشبینی واقعی یا جعلی بودن یک اسکناس با توجه به چهار ویژگی که قبلاً میدانیم، استفاده خواهیم کرد.
خواهید دید که بقیه مراحل، مراحل معمولی یادگیری ماشین هستند و نیاز به توضیح بسیار کمی دارند تا زمانی که به قسمتی برسیم که SVM های هسته غیرخطی خود را آموزش می دهیم.
وارد کردن کتابخانه ها
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import seaborn as sns
from sklearn.model_selection import train_test_split
وارد کردن مجموعه داده
data_link = "https://archive.ics.uci.edu/ml/machine-learning-databases/00267/data_banknote_authentication.txt"
col_names = ["variance", "skewness", "curtosis", "entropy", "class"] bankdata = pd.read_csv(data_link, names=col_names, sep=",", header=None)
bankdata.head()mes)
تقسیم داده ها به ویژگی ها (X) و هدف (y)
X = bankdata.drop('class', axis=1)
y = bankdata['class']
تقسیم داده ها به مجموعه های قطار/آزمون
SEED = 42 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size = 0.20, random_state = SEED)
آموزش الگوریتم
برای آموزش کرنل SVM از همان استفاده خواهیم کرد SVC
کلاس Scikit-Learn's svm
کتابخانه تفاوت در مقدار پارامتر هسته the نهفته است SVC
کلاس.
در مورد SVM ساده، ما از "خطی" به عنوان مقدار پارامتر هسته استفاده کرده ایم. با این حال، همانطور که قبلا ذکر کردیم، برای کرنل SVM، میتوانیم از هستههای گاوسی، چند جملهای، سیگموئیدی یا قابل محاسبه استفاده کنیم. ما هستههای چند جملهای، گاوسی و سیگموید را پیادهسازی میکنیم و به معیارهای نهایی آن نگاه میکنیم تا ببینیم کدام یک با کلاسهای ما با متریک بالاتر مطابقت دارد.
1. هسته چند جمله ای
در جبر، چند جمله ای عبارتی از شکل زیر است:
$$
2a*b^3 + 4a – 9
$$
این دارای متغیرهایی مانند a
و b
، ثابت ها، در مثال ما، 9
و ضرایب (ثابت همراه با متغیرها)، مانند 2
و 4
. 3
درجه چند جمله ای در نظر گرفته می شود.
انواع داده هایی وجود دارد که می توان آنها را هنگام استفاده از یک تابع چند جمله ای به بهترین شکل توصیف کرد، در اینجا، کاری که هسته انجام می دهد این است که داده های ما را به چند جمله ای نگاشت می کند که درجه آن را انتخاب می کنیم. هرچه درجه بالاتر باشد، تابع بیشتر تلاش میکند به دادهها نزدیکتر شود، بنابراین مرز تصمیم انعطافپذیرتر است (و بیشتر مستعد اضافهبرازش) - هر چه درجه کمتر باشد، کمترین انعطافپذیری را دارد.
راهنمای عملی و عملی ما برای یادگیری Git را با بهترین روش ها، استانداردهای پذیرفته شده در صنعت و برگه تقلب شامل بررسی کنید. دستورات Google Git را متوقف کنید و در واقع یاد گرفتن آی تی!
بنابراین، برای اجرای هسته چند جمله ای، علاوه بر انتخاب poly
هسته، ما همچنین یک مقدار برای the ارسال می کنیم degree
پارامتر از SVC
کلاس کد زیر است:
from sklearn.svm import SVC
svc_poly = SVC(kernel='poly', degree=8)
svc_poly.fit(X_train, y_train)
پیشگویی
اکنون، زمانی که الگوریتم را آموزش دادیم، گام بعدی این است که روی دادههای تست پیشبینی کنیم.
همانطور که قبلا انجام داده ایم، می توانیم اسکریپت زیر را برای این کار اجرا کنیم:
y_pred_poly = svclassifier.predict(X_test)
ارزیابی الگوریتم
طبق معمول، مرحله نهایی ارزیابی روی هسته چند جمله ای است. از آنجایی که کد گزارش طبقه بندی و ماتریس سردرگمی را چند بار تکرار کرده ایم، اجازه دهید آن را به تابعی تبدیل کنیم که display_results
پس از دریافت مربوطه y_test
, y_pred
و عنوان به ماتریس سردرگمی Seaborn با cm_title
:
def display_results(y_test, y_pred, cm_title): cm = confusion_matrix(y_test,y_pred) sns.heatmap(cm, annot=True, fmt='d').set_title(cm_title) print(classification_report(y_test,y_pred))
اکنون میتوانیم تابع را فراخوانی کنیم و به نتایج بهدستآمده با هسته چند جملهای نگاه کنیم:
cm_title_poly = "Confusion matrix with polynomial kernel"
display_results(y_test, y_pred_poly, cm_title_poly)
خروجی به شکل زیر است:
precision recall f1-score support 0 0.69 1.00 0.81 148 1 1.00 0.46 0.63 127 accuracy 0.75 275 macro avg 0.84 0.73 0.72 275
weighted avg 0.83 0.75 0.73 275
اکنون می توانیم همان مراحل را برای هسته های گاوسی و سیگموئیدی تکرار کنیم.
2. هسته گاوسی
برای استفاده از هسته گاوسی، فقط باید 'rbf' را به عنوان مقدار برای آن مشخص کنیم kernel
پارامتر کلاس SVC:
svc_gaussian = SVC(kernel='rbf', degree=8)
svc_gaussian.fit(X_train, y_train)
هنگام کاوش بیشتر این هسته، می توانید از جستجوی شبکه ای برای ترکیب آن با موارد مختلف نیز استفاده کنید C
و gamma
ارزش ها.
پیش بینی و ارزیابی
y_pred_gaussian = svc_gaussian.predict(X_test)
cm_title_gaussian = "Confusion matrix with Gaussian kernel"
display_results(y_test, y_pred_gaussian, cm_title_gaussian)
خروجی SVM هسته گاوسی به صورت زیر است:
precision recall f1-score support 0 1.00 1.00 1.00 148 1 1.00 1.00 1.00 127 accuracy 1.00 275 macro avg 1.00 1.00 1.00 275
weighted avg 1.00 1.00 1.00 275
3. هسته سیگموئید
در نهایت، اجازه دهید از یک هسته سیگموئید برای پیاده سازی Kernel SVM استفاده کنیم. به اسکریپت زیر دقت کنید:
svc_sigmoid = SVC(kernel='sigmoid')
svc_sigmoid.fit(X_train, y_train)
برای استفاده از هسته sigmoid، باید "sigmoid" را به عنوان مقدار برای آن مشخص کنید kernel
پارامتر از SVC
کلاس.
پیش بینی و ارزیابی
y_pred_sigmoid = svc_sigmoid.predict(X_test)
cm_title_sigmoid = "Confusion matrix with Sigmoid kernel"
display_results(y_test, y_pred_sigmoid, cm_title_sigmoid)
خروجی Kernel SVM با هسته Sigmoid به شکل زیر است:
precision recall f1-score support 0 0.67 0.71 0.69 148 1 0.64 0.59 0.61 127 accuracy 0.65 275 macro avg 0.65 0.65 0.65 275
weighted avg 0.65 0.65 0.65 275
مقایسه عملکردهای غیر خطی هسته
اگر به طور خلاصه عملکرد انواع مختلف هسته های غیر خطی را با هم مقایسه کنیم، ممکن است به نظر برسد که هسته سیگموئید کمترین معیارها را دارد، بنابراین بدترین عملکرد را دارد.
در میان هستههای گاوسی و چند جملهای، میتوانیم ببینیم که هسته گاوسی به نرخ پیشبینی 100% کاملی دست یافته است - که معمولاً مشکوک است و ممکن است نشان دهنده بیش از حد باشد، در حالی که هسته چند جملهای 68 نمونه از کلاس 1 را به اشتباه طبقهبندی کرده است.
بنابراین، هیچ قانون سخت و سریعی وجود ندارد که کدام هسته بهترین عملکرد را در هر سناریو یا در سناریوی فعلی ما بدون جستجوی بیشتر برای فراپارامترها، درک در مورد هر شکل تابع، کاوش در دادهها، و مقایسه آموزش و نتایج آزمایش برای دیدن اینکه آیا الگوریتم تعمیم می دهد.
همه چیز در مورد آزمایش همه هسته ها و انتخاب هسته ای با ترکیبی از پارامترها و آماده سازی داده ها است که نتایج مورد انتظار را با توجه به زمینه پروژه شما ارائه می دهد.
رفتن به جلو - پروژه دست به پایان
طبیعت کنجکاو شما باعث می شود که بخواهید جلوتر بروید؟ توصیه می کنیم ما را بررسی کنید پروژه هدایت شده: «پیشبینی عملی قیمت خانه – یادگیری ماشینی در پایتون».
در این پروژه هدایتشده – شما یاد خواهید گرفت که چگونه مدلهای قدرتمند یادگیری ماشین سنتی و همچنین مدلهای یادگیری عمیق بسازید، از Ensemble Learning و آموزش فراآموزان برای پیشبینی قیمت خانه از مجموعهای از مدلهای Scikit-Learn و Keras استفاده کنید.
با استفاده از Keras، API یادگیری عمیق ساخته شده در بالای Tensorflow، معماری ها را آزمایش می کنیم، مجموعه ای از مدل های انباشته را می سازیم و آموزش می دهیم فرا یادگیرنده شبکه عصبی (مدل سطح 1) برای تعیین قیمت یک خانه.
یادگیری عمیق شگفتانگیز است – اما قبل از متوسل شدن به آن، توصیه میشود که با تکنیکهای سادهتر نیز سعی کنید مشکل را حل کنید. یادگیری سطحی الگوریتم ها عملکرد پایه ما بر اساس یک خواهد بود رگرسیون تصادفی جنگل الگوریتم علاوه بر این - ما ایجاد مجموعههایی از مدلها را از طریق Scikit-Learn از طریق تکنیکهایی مانند کیسه زدن و رای دادن.
این یک پروژه پایان به انتها است و مانند همه پروژه های یادگیری ماشینی، ما با آن شروع خواهیم کرد تجزیه و تحلیل داده های اکتشافی، به دنبال پردازش داده ها و در نهایت ساختمان کم عمق و مدل های یادگیری عمیق برای تناسب با داده هایی که قبلا کاوش و تمیز کرده ایم.
نتیجه
در این مقاله ما خلاصهای سریع از SVMها انجام دادیم، در مورد ترفند هسته مطالعه کردیم و طعمهای مختلف SVMهای غیرخطی را پیادهسازی کردیم.
پیشنهاد می کنم هر کرنل را پیاده سازی کنید و ادامه دهید. می توانید ریاضیات مورد استفاده برای ایجاد هر یک از هسته های مختلف، دلیل ایجاد آنها و تفاوت های مربوط به فراپارامترهای آنها را بررسی کنید. به این ترتیب، شما در مورد تکنیک ها و اینکه چه نوع هسته ای بسته به زمینه و داده های موجود برای اعمال بهتر است، آشنا خواهید شد.
داشتن درک روشنی از نحوه عملکرد هر کرنل و زمان استفاده از آنها قطعا به شما در سفرتان کمک خواهد کرد. به ما اطلاع دهید که پیشرفت چگونه پیش می رود و کدنویسی خوشحال کننده است!
- محتوای مبتنی بر SEO و توزیع روابط عمومی. امروز تقویت شوید.
- پلاتوبلاک چین. Web3 Metaverse Intelligence. دانش تقویت شده دسترسی به اینجا.
- ضرب کردن آینده با آدرین اشلی. دسترسی به اینجا.
- منبع: https://stackabuse.com/implementing-other-svm-flavors-with-pythons-scikit-learn/
- : دارد
- :است
- :نه
- :جایی که
- $UP
- 1
- 20
- 67
- 8
- 84
- a
- قادر
- درباره ما
- در مورد IT
- مطابق
- دقت
- دست
- واقعا
- علاوه بر این
- اثر
- پس از
- هوشیار
- الگوریتم
- الگوریتمی
- الگوریتم
- معرفی
- اختصاص داده شده است
- قبلا
- همچنین
- هر چند
- همیشه
- شگفت انگیز
- an
- و
- API
- درخواست
- روش
- هستند
- مقاله
- AS
- At
- در دسترس
- کیسه
- بانک
- مستقر
- خط مقدم
- BE
- زیرا
- شود
- قبل از
- شروع
- پشت سر
- بودن
- در زیر
- بهترین
- میان
- بزرگتر
- مرز
- هر دو
- مرز
- بطور خلاصه
- ساختن
- ساخته
- اما
- by
- محاسبه
- صدا
- نام
- CAN
- نمی توان
- مورد
- تبادل
- بررسی
- را انتخاب کنید
- انتخاب
- کلاس
- کلاس ها
- طبقه بندی
- واضح
- نزدیک
- نزدیک
- رمز
- ترکیب
- ترکیب
- مقايسه كردن
- مقایسه
- کامل
- پیچیده
- نتیجه
- گیجی
- در نظر بگیرید
- در نظر گرفته
- زمینه
- متناظر
- میتوانست
- پوشش داده شده
- ایجاد
- ایجاد شده
- ایجاد
- صلیب
- جاری
- داده ها
- نقاط داده
- آماده سازی داده ها
- تصمیم
- عمیق
- یادگیری عمیق
- عمیق تر
- قطعا
- درجه
- بستگی دارد
- نشات گرفته
- شرح داده شده
- جزئیات
- جزئیات
- تفاوت
- تفاوت
- مختلف
- بعد
- ابعاد
- بحث کردیم
- فاصله
- do
- هر
- پیش از آن
- پشت سر هم
- به پایان می رسد
- خطا
- ارزیابی
- هر
- مثال
- اجرا کردن
- انتظار می رود
- تجربه
- توضیح
- اکتشاف
- کشف
- بررسی
- FAST
- امکانات
- کمی از
- شکل
- نهایی
- سرانجام
- پیدا کردن
- پیدا کردن
- نام خانوادگی
- مناسب
- قابل انعطاف
- تمرکز
- به دنبال
- پیروی
- برای
- جنگل
- فرم
- چهار
- از جانب
- تابع
- بیشتر
- سوالات عمومی
- دریافت کنید
- رفتن
- دادن
- Go
- رفتن
- توری
- راهنمایی
- راهنما
- دست
- خوشحال
- سخت
- آیا
- کمک
- اینجا کلیک نمایید
- بالاتر
- خانه
- در تردید بودن
- چگونه
- چگونه
- اما
- HTML
- HTTPS
- ICON
- اندیشه
- انجام
- اجرا
- اجرای
- مهم
- in
- مشمول
- افزایش
- نشان دادن
- نا محدود
- نمونه
- علاقه
- جالب
- به
- معرفی
- گرفتار
- IT
- ITS
- خود
- سفر
- JPG
- نگاه داشتن
- کراس
- نوع
- دانستن
- دانا
- یاد گرفتن
- یادگیری
- LG
- کتابخانه ها
- کتابخانه
- نهفته است
- پسندیدن
- لاین
- خطوط
- کوچک
- نگاه کنيد
- مطالب
- دستگاه
- فراگیری ماشین
- ماشین آلات
- درشت دستور
- ساخته
- ساخت
- باعث می شود
- ساخت
- بسیاری
- نقشه
- حاشیه
- ریاضی
- ریاضیات
- ماتپلوتلب
- ماتریس
- به حداکثر می رسد
- ممکن است..
- ذکر شده
- صرفا - فقط
- روش
- متری
- متریک
- قدرت
- مدل
- مدل
- اصلاح شده
- بیش
- اکثر
- چندگانه
- مرموز
- طبیعت
- لازم
- نیاز
- شبکه
- شبکه های عصبی
- بعد
- یادداشت
- اکنون
- بی حس
- گرفتن
- به دست آمده
- of
- on
- ONE
- فقط
- بهینه
- or
- سفارش
- سازمان یافته
- دیگر
- ما
- تولید
- پانداها
- پارامتر
- پارامترهای
- بخش
- عبور
- کامل
- کارایی
- انجام می دهد
- افلاطون
- هوش داده افلاطون
- PlatoData
- بازی
- نقطه
- قوی
- عملی
- دقت
- پیش بینی
- پیش گویی
- پیش بینی
- آماده
- قبلی
- قبلا
- قیمت
- پیش بینی قیمت
- قیمت
- قیمت گذاری
- مشکل
- روند
- پیشرفت
- پروژه
- پروژه ها
- پــایتــون
- سریع
- نرخ
- نسبتا
- Rbf
- رسیدن به
- خواندن
- واقعی
- خلاصه
- دریافت
- توصیه
- با توجه
- به یاد داشته باشید
- تکرار
- مکرر
- گزارش
- REST
- نتایج
- حلقه
- قانون
- در حال اجرا
- s
- همان
- سناریو
- یادگیری
- متولد دریا
- جستجو
- جستجو
- بخش
- دانه
- مشاهده
- به نظر می رسد
- انتخاب
- جداگانه
- سلسله
- چند
- سایه
- شکل
- نشان داده شده
- ساده
- پس از
- So
- جامد
- حل کردن
- برخی از
- هجی کردن
- Stackabuse
- انباشته
- استاندارد
- استانداردهای
- شروع
- ارقام
- گام
- مراحل
- توقف
- راست
- مورد مطالعه قرار
- چنین
- پشتیبانی
- مشکوک
- SVG
- جدول
- گرفتن
- هدف
- تکنیک
- جریان تنسور
- آزمون
- تست
- که
- La
- شان
- آنها
- آنجا.
- آنها
- تفکر
- سوم
- این
- سه
- از طریق
- زمان
- بار
- عنوان
- به
- بالا
- تاپیک
- سنتی
- قطار
- آموزش دیده
- آموزش
- دگرگون کردن
- انتقال
- درست
- انواع
- نوعی
- فهمیدن
- درک
- us
- استفاده کنید
- مورد استفاده
- استفاده
- با استفاده از
- معمولا
- استفاده کنید
- اعتبار سنجی
- ارزش
- ارزشها
- Ve
- نسخه
- از طريق
- مسیر..
- we
- خوب
- بود
- چی
- چه شده است
- چه
- که
- در حین
- چرا
- ویکیپدیا
- اراده
- با
- بدون
- برنده شد
- کارگر
- با این نسخهها کار
- بدترین
- خواهد بود
- X
- شما
- شما
- زفیرنت