مکین لرننگ - پولی اینویٹریشن رجسٹریشن
- پچھلے ویں لائنر رجوع
- پائیدھی ویں بہت متعدد رجوع
رگرسیون چندجهانه (Polynomial Regression)
اگر نقطههای داده شما به وضوح برای رگرسیون خطی (گذشته از خطوط بین نقطهها) مناسب نیستند، رگرسیون چندجهانه ممکن است انتخاب ایدهآلی باشد.
像线性回归一样,多项式回归使用变量 x 和 y 之间的关系来找到绘制数据点线的最佳方法。

工作原理
Python 有一些方法可以找到数据点之间的关系并画出多项式回归线。我们将向您展示如何使用这些方法而不是通过数学公式。
درج کئے گئے مثال میں، ہم نے 18 موٹر گاڑیوں کو ایک چارج اسٹیشن سے گزرنے کا ریکارڈ کیا ہے۔
ہم نے موٹر گاڑیوں کی رفتار اور گزرنے کا وقت (گھنٹا) درج کیا ہے۔
x ایک دن کا گھنٹا درج کراتا ہے، y رفتار کا درج کراتا ہے:
实例
پہلے اسلیک کا گراف درآور دیں:
import matplotlib.pyplot as plt x = [1,2,3,5,6,7,8,9,10,12,13,14,15,16,18,19,21,22] y = [100,90,80,60,60,55,60,65,70,70,75,76,78,79,90,99,99,100] plt.scatter(x, y) plt.show()
结果:

实例
درآمد کریں نمپائی
اور مپٹل
، بعد میں پولینوم ریگریشن لائن درآور دیں:
نپئولی ایمپورٹ کریں import matplotlib.pyplot as plt x = [1,2,3,5,6,7,8,9,10,12,13,14,15,16,18,19,21,22] y = [100,90,80,60,60,55,60,65,70,70,75,76,78,79,90,99,99,100] مائمول = نپئولی (نپئولی پلی فٹ (ایکس، ی، 3))) myline = numpy.linspace(1, 22, 100) plt.scatter(x, y) plt.plot(myline, mymodel(myline)) plt.show()
结果:

مثال کی تفسیر
ضروری ماڈولوں کو درآمد کریں:
نپئولی ایمپورٹ کریں import matplotlib.pyplot as plt
x اور y کی اعداد کی آرائی قائم کریں:
x = [1,2,3,5,6,7,8,9,10,12,13,14,15,16,18,19,21,22] y = [100,90,80,60,60,55,60,65,70,70,75,76,78,79,90,99,99,100]
نمپائی سے ایک طریقہ ہے جو ہمیں پولینوم ماڈل قائم کرنے میں مدد کرتا ہے:
مائمول = نپئولی (نپئولی پلی فٹ (ایکس، ی، 3)))
بعد میں، درج کئے گئے اعداد کو دکھانے کا طریقہ طے لیں، ہم سے شروع کرتے ہیں، 1 سے شروع اور 22 تک ختم کرتے ہیں:
myline = numpy.linspace(1, 22, 100)
اسلیک کا پتلی پتلی گراف درآور دیں:
plt.scatter(x, y)
پولینوم ریگریشن لائن درآور دیں:
plt.plot(myline, mymodel(myline))
گراف دکھائیں:
plt.show()
R-Squared
مهم ہے کہ معلوم کریں کہ x اور y کی اعداد کا تعلق کتنا اچھا ہے، اگر کوئی تعلق نہیں ہوتا تو پولینوم ریگریشن کو کوئی بھی چیزی کا پیش بینی نہیں کرسکتا۔
اس تعلقات کو ر کواضی (r-squared) کے ذریعے میل کیا جاتا ہے۔
ر کواضی کا دامن 0 سے 1 تک ہوتا ہے، جس میں 0 کس طرح کا تعلق نہیں ہوتا اور 1 کس طرح کا 100 فیصد تعلق ہوتا ہے۔
پائینت اور اسکائلن ماڈول آپ کو اس کا اعداد و شمار کی کچلی کاری کریں گا، آپ کو صرف x اور y آرائی کو داخل کرنا ہوگا:
实例
مجھ کا اعداد و شمار پولینوم ریگریشن میں کس طرح کی کچلی کاری کا رکھتا ہے؟
نپئولی ایمپورٹ کریں سکل ریمٹکس میٹرکز. ر2_اسکور ایمپورٹ کریں x = [1,2,3,5,6,7,8,9,10,12,13,14,15,16,18,19,21,22] y = [100,90,80,60,60,55,60,65,70,70,75,76,78,79,90,99,99,100] مائمول = نپئولی (نپئولی پلی فٹ (ایکس، ی، 3))) پرنٹ (ر2_اسکور (ی، مائمول (ایکس)))
تعلیمات:نتیجہ 0.94 کا مطلب یہ ہے کہ بہت اچھا تعلق ہے، جس کو ہم مستقبل کی پیش بینی میں پولینوم ریگریشن کا استعمال کرسکتے ہیں۔
مستقبل کی اعداد کا پیش بینی
اب، ہم جمع کی گئی معلومات کا استعمال کر سکتے ہیں کہ مستقبل کی اعداد پیش بینی کریں۔
مثلاً: آیئے کوشش کریں کہ ہم شام 17 بجے کے آس پاس چارج اسٹیشن سے گزرنے والی موٹر گاڑیوں کی رفتار کا پیش بینی کریں:
اس کے لئے، ہمیں اسی مثال کے ساتھ کچھ چیزوں کی ضرورت ہے، mymodel آرائی کا نام:
مائمول = نپئولی (نپئولی پلی فٹ (ایکس، ی، 3)))
实例
17 بجے کوچ کی رفتار کا پیش بینی کریں:
نپئولی ایمپورٹ کریں سکل ریمٹکس میٹرکز. ر2_اسکور ایمپورٹ کریں x = [1,2,3,5,6,7,8,9,10,12,13,14,15,16,18,19,21,22] y = [100,90,80,60,60,55,60,65,70,70,75,76,78,79,90,99,99,100] مائمول = نپئولی (نپئولی پلی فٹ (ایکس، ی، 3))) speed = mymodel(17) print(speed)
اس مثال کی پیش بینی رفتار 88.87 ہے، اور ہم گراف میں بھی اس کو دیکھ سکتے ہیں:

پیش بینی کی کچلی کاری؟
آیئے ایک مثال بنا دیں جس میں پولینوم ریگریشن مستقبل کی اعداد پیش بینی کرنے کا بہترین طریقہ نہیں ہے۔
实例
x 和 y 轴的这些值会导致多项式回归的拟合度非常差:
نپئولی ایمپورٹ کریں import matplotlib.pyplot as plt ایکس = [89, 43, 36, 36, 95, 10, 66, 34, 38, 20, 26, 29, 48, 64, 6, 5, 36, 66, 72, 40] ی = [21, 46, 3, 35, 67, 95, 53, 72, 58, 10, 26, 34, 90, 33, 38, 20, 56, 2, 47, 15] مائمول = نپئولی (نپئولی پلی فٹ (ایکس، ی، 3))) myline = numpy.linspace(2, 95, 100) plt.scatter(x, y) plt.plot(myline, mymodel(myline)) plt.show()
结果:

r-squared 值呢?
实例
您应该得到一个非常低的 r-squared 值。
نپئولی ایمپورٹ کریں سکل ریمٹکس میٹرکز. ر2_اسکور ایمپورٹ کریں ایکس = [89, 43, 36, 36, 95, 10, 66, 34, 38, 20, 26, 29, 48, 64, 6, 5, 36, 66, 72, 40] ی = [21, 46, 3, 35, 67, 95, 53, 72, 58, 10, 26, 34, 90, 33, 38, 20, 56, 2, 47, 15] مائمول = نپئولی (نپئولی پلی فٹ (ایکس، ی، 3))) پرنٹ (ر2_اسکور (ی، مائمول (ایکس)))
نتائج: 0.00995 کوئی جڑ نہیں ہے، اور اس کا مطلب یہ ہوتا ہے کہ اس داده کا مجموعہ نہیں ایک پولی نیوم رجوع کو مناسب نہیں بناتا ہے۔
- پچھلے ویں لائنر رجوع
- پائیدھی ویں بہت متعدد رجوع