اذهب إلى المحتوى
  • 0

إنشاء مجموعة بيانات عشوائية لمهمة توقع في مكتبة Sklearn

Meezo ML

السؤال

Recommended Posts

  • 1

يمكنك ذلك باستخدام الكلاس make_regression من مكتبة Sklearn :

sklearn.datasets.make_regression(n_samples=100, n_features=100, n_informative=10, n_targets=1, bias=0.0, shuffle=True, random_state=None)

الوسيط الأول يحدد عدد العينات التي تريدها. افتراضياً 100
الوسيط الثاني يحدد عدد الميزات features التي تريدها. افتراضياً 20
الوسيط الثالث يحدد عدد الميزات لبناء النموذج الخطي المستخدم لتوليد الخرج افتراضيا 10
الوسيط الرابع عدد أهداف التوقع أي أبعاد الخرج y
الوسيط الخامس قيمة bias في نموذج التوقع
الوسيط السادس  لخلط البيانات بعد إنشائها.
 الوسيط الثامن هو وسيط التحكم بنظام العشوائية في التقسيم.
مثال:

from sklearn.datasets import make_regression
X, y = make_regression(n_samples=1000, n_features=4,
                       n_informative=10, n_targets=1, bias=0.0,
                       shuffle=False, random_state=0)
print(X.shape) #(1000, 4)
print(y.shape,end='\n\n') # (1000,)
print(X)
# الخرج
(1000, 4)
(1000,)
[[ 1.76405235  0.40015721  0.97873798  2.2408932 ]
 [ 1.86755799 -0.97727788  0.95008842 -0.15135721]
 [-0.10321885  0.4105985   0.14404357  1.45427351]
 ...
 [ 0.10672049 -0.9118813  -1.46836696  0.5764787 ]
 [ 0.06530561 -0.7735128   0.39494819 -0.50388989]
 [ 1.77955908 -0.03057244  1.57708821 -0.8128021 ]]

 

تم التعديل في بواسطة Ali Haidar Ahmad
رابط هذا التعليق
شارك على الشبكات الإجتماعية

  • 0

يتم إنشاء بيانات بصورة عشوائية بإستخدام دالة make_regression المتوفرة في مكتبة sklearn.datasets. من أهم التعريفات التي يتم تمريرها للدالة هي عدد العينات المراد الحصول عليها، عدد الخصائص features و يمكن أيضاً تمرير n_informative والتي تشير لعدد الخصائص ذات التأثير على قيم y في النموذج. في المثال التالي يتم إنتاج 200 عينة عشوائية، بإستخدام 5 خصائص بها 2 من informative features:

import pandas as pd
import seaborn as sns
import numpy as np
from sklearn import datasets
import matplotlib.pyplot as plt

# إنشاء البيانات
X, y = datasets.make_regression(n_samples=200, n_features=5, n_informative=2)

# إنشاء بانداس لنقوم بحساب العلاقات بين الخصائص
df = pd.DataFrame(X)
df.columns = ['feature1', 'feature2', 'feature3', 'feature4', 'feature5']
df['target'] = y
corr = df.corr()

#heat_map رسم نسبة قوة العلاقة بين الخصائص بإستخدام 
f, ax = plt.subplots(figsize=(9, 6))
mask = np.triu(np.ones_like(corr, dtype=bool))
cmap = sns.diverging_palette(230, 20, as_cmap=True)
sns.heatmap(corr, annot=True, mask = mask, cmap=cmap)

 

رابط هذا التعليق
شارك على الشبكات الإجتماعية

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...