چطور میتونیم در پکیج sklearn پایتون (یا اسم کاملش scikit-learn) از دادههای موجود در خودش استفاده کنیم و اونا رو بخونیم؟! در این مطلب، در مورد همین موضوع صحبت میکنیم!
خب قطعه کد زیر رو در نظر بگیرید تا توضیح بدم!
from sklearn.datasets import load_iris
iris=load_iris()
در خط اول اومدیم گفتیم از پکیج sklearn (که اسم کاملش هست Scikit-Learn ! و معروفترین پکیج پایتون برای یادگیری ماشین است!) میخوایم استفاده کنیم! اما همین sklearn یه زیربخش داره به اسم datasets (به معنی مجموعهدادهها) که مجموعه دادههای معروف مختلف توووش هست! مثلاً یکی از دادههای خیلی معروف اسمش هست iris ! که در مورد گل زنبق است (طول و عرض کاسبرگ و طول و عرض گلبرگ مربوط به 150 گل زنبق رو اومدن جمعآوری و ثبت کردن)! بماند! بحث ما الان داده iris نیست! باز هم تاکید کنم که این iris فقط یه نمونه بود! وگرنه اون بخش datasets دادههای دیگه هم داره! هدف ما لیست کردن اون دادهها نیست! ولی بدونید iris فقط یه نمونه از اوناست!
داشتم میگفتم! از پکیج sklearn و از زیربخش datasets داریم دستور load_iris رو وارد برنامه میکنیم!
در خط بعدی داریم از همون load_iris استفاده میکنیم! خروجیش رو میریزیم توی یک متغیری به اسم iris (اسم دلبخواهه! حال کردید میتونستید بذارید Sajjad) !
یه چیز تخصصیتر رو هم بگم که البته اگر متوجه نشدید، اشکال نداره! به کلیت این آموزش خللی وارد نمیشه و میتونید به راحتی بقیهش رو ادامه بدید! ولی برای بهتر فمیدنش باید مبحث شیگرایی در پایتون و اینکه شی چی هست و این جور چیزا رو بلد باشید! اگر بلد نیستید هم این تیکه رو بیخیال بشید فعلا! نفهمیدن این یه دونه بخشی که الان میخوام بگم، خیلی به کلیت آموزش خللی وارد نمیکنه! اون نکته اینه که اون متغیر iris اصطلاحاً یک Dictionary-like object است! یعنی یک شیء که شبیه دیکشنری است! بازم میگم اگر متوجه نشید، به دلیل اینه که مبحث شیگرایی رو بلد نیستید، ولی اشکال نداره! از این جا به بعد رو دوباره پیش بیاید!
اولاً از تیتر بالا خوف نکنید! در ادامه سعی میکنیم به صورت کوچهبازاری توضیح بدیم!
اون متغیر iris چیز میزای مختلف داره! که میخوایم دونه دونه بررسی کنیم!
این میاد دادهها رو به ما میده!
x=iris.data
print(x)
بخشی از خروجی [چون کل خروجی که زیاده و 150تا داده است! حوصله ندارم همش رو بیارم اینجا! فقط دوتای اول و دوتای آخرش رو میذارم و بینش سه نقطه میذارم!]
[[5.1 3.5 1.4 0.2]
[4.9 3. 1.4 0.2]
….
[6.2 3.4 5.4 2.3]
[5.9 3. 5.1 1.8]]
از روی این خروجی، مشخصه که دادههایی که ثبت شده، 4 ستون داده بوده! اما شاید بپرسید، حالا اسم ستون اول و دوم و الی آخر چی بوده؟! اینو توی تیتر بعدی توضیح میدم!
ایشون اسم ویژگیها (featureها یا به زبون خودمون، اسم همون ستونها) رو به ما میده!
feature_names=iris.feature_names
print(feature_names)
خروجی!:
[‘sepal length (cm)’, ‘sepal width (cm)’, ‘petal length (cm)’, ‘petal width (cm)’]
که یعنی ستون اول طول کاسبرگ (sepal length) به سانتیمتر (cm) است! ستون دوم، عرض کاسبرگ (sepal width) به سانتیمتر (cm) است! ستون سوم، طول گلبرگ (petal length) به سانتیمتر (cm)! و ستون آخر عرض گلبرگ (petal width) به سانتیمتر (cm) است!
یعنی متغیر هدف! اگر میپرسید متغیر هدف چی هست! یعنی شما دارید این آموزش رو اشتباهی میخونید! چون اینکه بدونید متغیر هدف یعنی چی، جزو ابتدائیات یادگیری ماشین هست و فرض این آموزش اینه که این الفاظ رو میدونید یعنی چی! اگر دوست داشتید، دوره یادگیری ماشین خودمون میتونه بهتون کمک کنه! اونجا از صفر صفر شروع میکنیم و خیلی از این مباحث و حتی پیشرفتهترش رو با فیلم و کامل توضیح میدیم!
دوره یادگیری ماشین با پایتون خودمون!
y=iris.target
print(y)
در اینجا اومدیم، مقدار label (یا همون برچسب یا همون مقدار متغیر هدف!) هر کدوم از اون 150 داده رو ریختیم توی متغیری به اسم y ! و آخرش هم داریم چاپش میکنیم!
خروجی [که برچسب هر کدوم از اون 150 تا داده رو نشون میده] !
[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
2 2]
همینطور که میبینید برچسبهای این داده iris شامل سه مقدار 0 و 1 و 2 است! حالا شاید بپرسید که خب حالا اسم این سه مقدار چیه؟! اینو توی تیتر بعدی میگم!
ایشون اسمِ مقادیرِ متغیر هدف (همون target) رو نشون میده!
target_names=iris.target_names
print(target_names)
خروجی!:
[‘setosa’ ‘versicolor’ ‘virginica’]
که این سهتا، اسم سه گونه گل زنبق است! در داده iris هدف اینه که براساس طول و عرض گلبرگ و طول و عرض کاسبرگ، بیاد گونه گل زنبق رو شناسایی کنه! یعنی گونه گل زنبق میشه متغیر هدف! و مقادیری که متغیر هدف میتونه به خودش بگیره هم همینایی است که دارید در بالا میبینید! به همین سادگی!
این بزرگوار مخفف description (به معنی توضیح و توصیف) است! چون با استفاده از این، میتونید یه توضیحی از داده رو بگیرید! که در این مثال میاد یه توضیحی در مورد دیتاست iris بهتون میده!
print(iris.DESCR)
خروجی! [انصافاً بیست میلیون خط خروجی میده! کپی و paste کردنش اینجا فایده نداره و فقط الکی اینجا فضا رو پُر میکنیم! خودتون برید اجرا کنید و بخونید! به انگلیسی در مورد دیتاست توضیح میده!]
1- ما در شبکههای اجتماعی مختلف، مطلب میذاریم (به صورت فیلم و تصویر و غیره)! حتماً ما رو دنبال کنید! آدرسهامون در شبکههای اجتماعی مختلف رو میتونید از طریق این لینک پیدا کنید!
2- اگر دوست داشتید، ما دورهها مختلفی در زمینه پایتون داریم، که میتونید از طریق این لینک، اونا رو ببینید!
امیدوارم این مطلب براتون مفید بوده باشه!
تعداد دیدگاه | 0 |
تعداد بازدید | 1.8K |
تاریخ انتشار | 14/07/2023 |
تاریخ بروزرسانی | 14/07/2023 |
نویسنده | گروه آموزشی کولاک |