در این مطلب، ویدئو کدگذاری رگرسیورهای فرآیند گاوسی از ابتدا در پایتون با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:21:43
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,080 –> 00:00:02,879
رگرسیورهای پست گاوسی یا به سادگی gprs
2
00:00:02,879 –> 00:00:04,960
در مورد
3
00:00:04,960 –> 00:00:07,120
مدلهای رگرسیون برای پیشبینی و در
4
00:00:07,120 –> 00:00:09,519
واقع برای بهینهسازی نیز بسیار شگفتانگیز هستند
5
00:00:09,519 –> 00:00:11,920
6
00:00:11,920 –> 00:00:14,400
7
00:00:14,400 –> 00:00:17,680
8
00:00:17,680 –> 00:00:20,720
. در واقع در یک
9
00:00:20,720 –> 00:00:24,000
نوت بوک jupyter با استفاده از numpy فقط با
10
00:00:24,000 –> 00:00:27,439
تجسم های تعاملی
11
00:00:27,439 –> 00:00:31,359
هسته، gpr توابع تصادفی نحوه انطباق gpr
12
00:00:31,359 –> 00:00:34,239
با مشاهدات جدید و
13
00:00:34,239 –> 00:00:36,719
پاسخ آن هنگامی که پارامترهایی مانند نویز و
14
00:00:36,719 –> 00:00:40,000
طول هسته برای gpr ما تغییر می کند،
15
00:00:43,520 –> 00:00:45,920
ما فقط برای استفاده از
16
00:00:45,920 –> 00:00:48,399
numpy عمل می کند. عملیات جبر خطی ما
17
00:00:48,399 –> 00:00:51,199
و رسم نمودار برای تجسم نتایج ما
18
00:00:51,199 –> 00:00:52,800
من
19
00:00:52,800 –> 00:00:54,879
قبلاً چند تابع کمکی
20
00:00:54,879 –> 00:00:57,600
را برای ترسیم سریع ترسیم کرده ام، بنابراین این
21
00:00:57,600 –> 00:00:59,920
یکی برای به روز رسانی طرح
22
00:00:59,920 –> 00:01:01,039
شکل ما است،
23
00:01:01,039 –> 00:01:02,559
این یکی
24
00:01:02,559 –> 00:01:05,438
برای ترسیم توابع ما در مورد ما
25
00:01:05,438 –> 00:01:06,880
26
00:01:06,880 –> 00:01:09,760
است. برای رسم نقاط داده ما
27
00:01:09,760 –> 00:01:11,920
و این یکی برای تجسم
28
00:01:11,920 –> 00:01:15,280
عدم قطعیت به عنوان یک منطقه در نمودار ما است
29
00:01:15,280 –> 00:01:17,680
و من قبلاً نوشتم do از چند
30
00:01:17,680 –> 00:01:19,680
فرمول استفاده می کنیم زیرا
31
00:01:19,680 –> 00:01:21,360
32
00:01:21,360 –> 00:01:24,000
به خاطر سپردن آنها بسیار دشوار است، بنابراین این یکی
33
00:01:24,000 –> 00:01:25,840
فرمول هسته نمایی مربعی
34
00:01:25,840 –> 00:01:28,240
است و این فرمول برای
35
00:01:28,240 –> 00:01:29,920
تطبیق توزیع نرمال چند متغیره ما
36
00:01:29,920 –> 00:01:32,320
با توجه به نکاتی است که
37
00:01:32,320 –> 00:01:33,759
مشاهده
38
00:01:33,759 –> 00:01:37,040
کرده ایم، بنابراین تمام بیایید شروع کنیم
39
00:01:37,040 –> 00:01:39,200
بنابراین اولین کاری که میخواهیم انجام دهیم این است که
40
00:01:39,200 –> 00:01:42,560
تابع کوواریانس خود را پیادهسازی کنیم، بنابراین در
41
00:01:42,560 –> 00:01:44,479
مورد ما این هسته نمایی مربع خواهد بود،
42
00:01:44,479 –> 00:01:47,520
43
00:01:48,799 –> 00:01:50,640
بنابراین برای هسته نمایی مربعی
44
00:01:50,640 –> 00:01:53,200
هنگام مقداردهی اولیه، به دو پارامتر نیاز داریم،
45
00:01:53,200 –> 00:01:56,079
یعنی مقیاس طول
46
00:01:56,079 –> 00:01:58,560
که یک شناور است و بزرگتر از صفر و
47
00:01:58,560 –> 00:02:00,640
واریانس سیگنال که همچنین یک شناور
48
00:02:00,640 –> 00:02:03,600
و بزرگتر از صفر است، در
49
00:02:06,240 –> 00:02:09,038
مرحله بعد وقتی
50
00:02:09,038 –> 00:02:10,800
هسته نمایی مربع خود را مقداردهی اولیه کردیم، می خواهیم
51
00:02:10,800 –> 00:02:14,959
آن را به دو آرگومان فراخوانی کنیم
52
00:02:16,720 –> 00:02:19,360
و کاری که می خواهیم انجام دهیم این است که به سادگی
53
00:02:19,360 –> 00:02:20,800
54
00:02:20,800 –> 00:02:23,840
این فرمول را در اینجا برگردانیم.
55
00:02:28,080 –> 00:02:31,040
اجازه دهید به سرعت هسته نمایی مربعی را تجسم کنیم
56
00:02:31,040 –> 00:02:34,000
،
57
00:02:34,239 –> 00:02:36,160
خوب، بیایید ببینیم آیا این کار می کند یا خیر، کاری که
58
00:02:36,160 –> 00:02:39,280
اکنون انجام می دهم این است که
59
00:02:39,280 –> 00:02:41,760
مقداری پیش فرض را در مربع
60
00:02:41,760 –> 00:02:43,920
قبلی خود اضافه کنم. هسته ponential بنابراین به طور
61
00:02:43,920 –> 00:02:47,200
پیشفرض طول و سیگما
62
00:02:47,200 –> 00:02:49,360
را روی یک تنظیم
63
00:02:49,360 –> 00:02:50,480
64
00:02:50,480 –> 00:02:52,879
میکنم و بله منظورم این است که باید آن را کامپایل کنم و
65
00:02:52,879 –> 00:02:54,879
ببینیم آیا اکنون کار میکند یا
66
00:02:54,879 –> 00:02:55,920
نه، بنابراین
67
00:02:55,920 –> 00:02:58,239
آنچه من در اینجا رسم کردم
68
00:02:58,239 –> 00:03:00,959
هسته نمایی مربعی
69
00:03:00,959 –> 00:03:03,440
با آرگومان دوم در ما است. مورد
70
00:03:03,440 –> 00:03:05,680
روی 0 ثابت شد
71
00:03:05,680 –> 00:03:09,120
و من روی آرگومان اول تغییر میکنم،
72
00:03:09,120 –> 00:03:11,920
بنابراین از 10- تا
73
00:03:11,920 –> 00:03:14,080
10 این آرگومان را در هسته نمایی مربعی تغییر میدهم،
74
00:03:14,080 –> 00:03:16,239
بنابراین این
75
00:03:16,239 –> 00:03:18,800
آرگومان اینجاست
76
00:03:18,800 –> 00:03:21,280
و خوب من چند ویجت را پیادهسازی کردم، بنابراین اکنون
77
00:03:21,280 –> 00:03:24,080
چه کاری میتوانیم انجام دهیم. ما میتوانیم ببینیم چه
78
00:03:24,080 –> 00:03:26,720
اتفاقی میافتد وقتی که
79
00:03:26,720 –> 00:03:29,920
مثلاً آرگومان دوم را
80
00:03:29,920 –> 00:03:31,760
تغییر میدهیم، پس بیایید ببینیم وقتی
81
00:03:31,760 –> 00:03:34,879
آرگومان دوم را به منفی 4.3 تغییر میدهیم چه اتفاقی میافتد، خوب
82
00:03:34,879 –> 00:03:37,599
آنچه میبینیم این است که ما فقط
83
00:03:37,599 –> 00:03:38,560
نمودار را
84
00:03:38,560 –> 00:03:40,879
روی محور x تغییر میدهیم،
85
00:03:40,879 –> 00:03:42,879
پس بیایید ببینیم i یعنی این
86
00:03:42,879 –> 00:03:44,640
شاید جالبتر باشد
87
00:03:44,640 –> 00:03:47,840
وقتی که طول را تغییر میدهیم
88
00:03:50,400 –> 00:03:51,840
خوب
89
00:03:51,840 –> 00:03:52,640
90
00:03:52,640 –> 00:03:54,879
حالا که هسته نمایی مربعی خود را پیادهسازی
91
00:03:54,879 –> 00:03:57,120
کردهایم آماده
92
00:03:57,120 –> 00:04:01,840
ایم gpr خود را پیادهسازی کنیم، بنابراین بیایید این کار را انجام
93
00:04:03,680 –> 00:04:06,080
دهیم، اجازه دهید آن را به سادگی gpr بنامیم
94
00:04:06,080 –> 00:04:07,840
تا ببینیم چه زمانی ini جفت کردن یک
95
00:04:07,840 –> 00:04:11,920
gpr چیزی که باید به آن
96
00:04:11,920 –> 00:04:14,480
بدهیم نقاط مشاهده شده ما است، بنابراین در آنجا
97
00:04:14,480 –> 00:04:15,280
98
00:04:15,280 –> 00:04:18,160
به عنوان مثال داده x داریم که
99
00:04:18,160 –> 00:04:20,238
ورودی نقاطی است که مشاهده کرده ایم
100
00:04:20,238 –> 00:04:22,560
و خروجی نقاطی را که
101
00:04:22,560 –> 00:04:24,880
مشاهده کرده ایم که داده ها را y می نامید،
102
00:04:24,880 –> 00:04:27,040
سپس باید به gpr یک
103
00:04:27,040 –> 00:04:30,160
تابع کوواریانس بدهید
104
00:04:34,800 –> 00:04:37,120
که بهطور پیشفرض میخواهیم آن را به عنوان
105
00:04:37,120 –> 00:04:39,280
نمونهای از هسته نمایی مربعی تنظیم کنیم
106
00:04:39,280 –> 00:04:41,120
107
00:04:41,120 –> 00:04:43,919
و این در مورد gprs بسیار جالب است، ما
108
00:04:43,919 –> 00:04:45,840
میتوانیم
109
00:04:45,840 –> 00:04:49,520
یک نویز را در دادههایی که مشاهده کردهایم وارد کنیم،
110
00:04:49,520 –> 00:04:51,280
بنابراین این همان چیزی است که به آن نویز میگوییم یا
111
00:04:51,280 –> 00:04:54,600
نویز سفید
112
00:04:57,360 –> 00:04:59,919
و کاری که میخواهیم انجام دهیم این است
113
00:04:59,919 –> 00:05:01,840
که
114
00:05:01,840 –> 00:05:04,320
به این
115
00:05:04,320 –> 00:05:06,880
متغیر حافظه gpr میدهیم که در
116
00:05:06,880 –> 00:05:09,440
پایان زمانی که پیشبینیها را انجام دادیم، آن را ذخیره میکنیم، سپس
117
00:05:09,440 –> 00:05:11,520
118
00:05:11,520 –> 00:05:14,880
میانگین ماتریس کوواریانس و غیره را
119
00:05:14,880 –> 00:05:18,039
در self.memory ذخیره میکنیم
120
00:05:19,280 –> 00:05:23,039
و فعلاً میرویم. برای تنظیم آن بر روی غیر
121
00:05:23,039 –> 00:05:26,720
OK، اجازه دهید نگاهی به فرمول بیندازیم،
122
00:05:26,880 –> 00:05:29,680
بنابراین همانطور که در اینجا می بینید برای فرمول برای
123
00:05:29,680 –> 00:05:31,280
انطباق با توزیع نرمال چند متغیره،
124
00:05:31,280 –> 00:05:33,520
باید چند ماتریس را محاسبه کنیم
125
00:05:33,520 –> 00:05:35,120
126
00:05:35,120 –> 00:05:37,520
و ورودی های آن ماتریس ها
127
00:05:37,520 –> 00:05:39,120
همه فقط
128
00:05:39,120 –> 00:05:41,759
تابع کوواریانس هستند. بر روی دادههای ما اعمال میشود،
129
00:05:41,759 –> 00:05:42,880
130
00:05:42,880 –> 00:05:44,880
بنابراین بیایید به سرعت یک تابع کمکی پیادهسازی
131
00:05:44,880 –> 00:05:47,199
کنیم که همه آنها را محاسبه میکند،
132
00:05:47,199 –> 00:05:49,280
بنابراین k، k ستاره کم و قانون k کمترین مقدار مناسبی هستند،
133
00:05:49,280 –> 00:05:52,280
134
00:05:58,400 –> 00:06:01,280
بنابراین اکنون میتوانیم آن k و k
135
00:06:01,280 –> 00:06:03,440
از دست رفته و کیلوها را
136
00:06:03,440 –> 00:06:06,560
با این تابع کمکی محاسبه کنیم.
137
00:06:06,560 –> 00:06:07,759
و
138
00:06:07,759 –> 00:06:09,680
بله همانطور که قبلاً مشاهده کردیم همانطور که
139
00:06:09,680 –> 00:06:12,160
در این فرمول مشاهده کردیم در اینجا
140
00:06:12,160 –> 00:06:15,120
برای هر پیش بینی می خواهیم از
141
00:06:15,120 –> 00:06:16,880
این ماتریس k استفاده کنیم
142
00:06:16,880 –> 00:06:20,240
و این ماتریس k به
143
00:06:20,240 –> 00:06:21,919
مقادیر ما در جایی که می خواهیم پیش بینی انجام دهیم وابسته نیست
144
00:06:21,919 –> 00:06:23,360
145
00:06:23,360 –> 00:06:26,160
بنابراین این ماتریس k فقط
146
00:06:26,160 –> 00:06:28,960
کوواریانس است. ماتریس نقاط دادهای که
147
00:06:28,960 –> 00:06:30,639
قبلاً مشاهده کردهایم و از آنجایی
148
00:06:30,639 –> 00:06:33,280
که میخواهیم از آن در هر پیشبینی استفاده کنیم
149
00:06:33,280 –> 00:06:34,400
، میخواهیم آن
150
00:06:34,400 –> 00:06:36,560
را هنگام مقداردهی اولیه یک gpr محاسبه کنیم
151
00:06:36,560 –> 00:06:39,039
152
00:06:42,319 –> 00:06:46,479
و در اینجا فراموش شده است که باید
153
00:06:46,479 –> 00:06:48,400
154
00:06:48,400 –> 00:06:51,039
نویز را به مورب اضافه
155
00:06:52,080 –> 00:06:54,639
کنیم و اینکه چه چیزی هستیم. به
156
00:06:54,639 –> 00:06:57,759
دلایل پایداری این کار
157
00:06:57,759 –> 00:07:00,160
این است که مقداری اضافه می کنیم
158
00:07:00,160 –> 00:07:02,240
که کمی بیشتر از به اصطلاح
159
00:07:02,240 –> 00:07:04,400
اپسیلون ماشینی است، بنابراین وقتی
160
00:07:04,400 –> 00:07:06,800
با عملیات ماتریس سروکار داریم،
161
00:07:06,800 –> 00:07:10,400
مقداری ناپایداری عددی داریم.
162
00:07:10,400 –> 00:07:12,720
در عملیات خود
163
00:07:12,720 –> 00:07:14,560
به منظور جلوگیری
164
00:07:14,560 –> 00:07:16,880
165
00:07:16,880 –> 00:07:19,360
از منفرد بودن ماتریس کوواریانس غیرقابل وارونه بودن
166
00:07:19,360 –> 00:07:21,520
، آن مقادیر را روی قطر اضافه می کنیم،
167
00:07:21,520 –> 00:07:22,960
168
00:07:22,960 –> 00:07:25,440
بنابراین در مورد ما این
169
00:07:25,440 –> 00:07:28,720
چیزی حدود 1.6 e به منهای هفت است،
170
00:07:28,720 –> 00:07:31,680
بنابراین ما سه i را اضافه می کنیم. یعنی این یک
171
00:07:31,680 –> 00:07:34,800
مقدار بسیار کوچک است، بنابراین در هنگام تجسم gpr ما هیچ تفاوتی ایجاد نمی کند،
172
00:07:34,800 –> 00:07:37,919
173
00:07:37,919 –> 00:07:39,039
174
00:07:39,039 –> 00:07:41,120
اما منظورم این است که می توانید سعی کنید آن را کنار بگذارید
175
00:07:41,120 –> 00:07:44,000
، اما مطمئناً با
176
00:07:44,000 –> 00:07:45,759
برخی از خطاها
177
00:07:45,759 –> 00:07:46,639
مواجه
178
00:07:46,639 –> 00:07:48,319
خواهید شد، اما این کار را خوب انجام دهید،
179
00:07:48,319 –> 00:07:49,280
180
00:07:49,280 –> 00:07:53,520
بنابراین اکنون که ما خود را اولیه کردیم. gpr
181
00:07:53,520 –> 00:07:55,680
جایی که میخواهیم یک تابع پیشبینی تعریف کنیم،
182
00:07:55,680 –> 00:07:56,879
183
00:07:56,879 –> 00:07:59,360
یعنی میخواهیم پیشبینیهایی را
184
00:07:59,360 –> 00:08:02,160
با gpr خود انجام دهیم و میخواهیم این کار را در
185
00:08:02,160 –> 00:08:04,720
مقادیری انجام دهیم
186
00:08:04,879 –> 00:08:07,280
و در این تابع پیشبینی
187
00:08:07,280 –> 00:08:10,479
اساساً فرمول بالا را پیادهسازی میکنیم،
188
00:08:10,479 –> 00:08:11,440
بنابراین
189
00:08:11,440 –> 00:08:14,960
این سمت چپ در فرمول اینجا
190
00:08:14,960 –> 00:08:17,120
خواهد بود. میانگین تطبیقی ما و ا
191
00:08:17,120 –> 00:08:18,879
ن همان چیزی است که ما قرار است به عن
192
00:08:18,879 –> 00:08:20,720
ان پیش بینی خود برگردانیم و ا
193
00:08:20,720 –> 00:08:23,520
طرف دیگر ما این ما
194
00:08:23,520 –> 00:08:26,960
ریس کوواریانس تطبیقی را
195
00:08:26,960 –> 00:08:31,280
م که در آن واریانس های خود را دار
196
00:08:31,280 –> 00:08:34,640
م، بنابراین باید هر دوی آنها را محاسبه کنیم، بنابر
197
00:08:34,640 –> 00:08:37,519
ین بیایید این ماتریس را انجام دهیم o
198
00:08:37,760 –> 00:08:41,519
ابتدا باید این k ستاره پایین تر
199
00:08:41,519 –> 00:08:44,560
و ستاره کندتر را محاسبه کنیم، بنابراین این
200
00:08:44,560 –> 00:08:47,680
به سادگی ماتریس کوواریانس
201
00:08:47,680 –> 00:08:49,600
202
00:08:49,600 –> 00:08:51,839
بالا در اینجا است، من
203
00:08:51,839 –> 00:08:54,480
تابع کوواریانس را فراموش کردم،
204
00:08:54,480 –> 00:08:56,959
این به سادگی ماتریس کوواریانس
205
00:08:56,959 –> 00:08:57,820
206
00:08:57,820 –> 00:08:59,120
[Music]
207
00:08:59,120 –> 00:09:02,000
داده های ورودی
208
00:09:02,000 –> 00:09:03,279
و
209
00:09:03,279 –> 00:09:05,200
داده های مقادیر اضافه است
210
00:09:05,200 –> 00:09:06,399
و به
211
00:09:06,399 –> 00:09:09,920
خوبی با تابع کوواریانس ما
212
00:09:09,920 –> 00:09:14,000
هنگام مقداردهی اولیه gpr
213
00:09:14,000 –> 00:09:14,280
بنابراین
214
00:09:14,280 –> 00:09:17,330
[Music] مشخص
215
00:09:18,240 –> 00:09:20,480
کردیم و همین کار را با
216
00:09:20,480 –> 00:09:22,080
ستاره پایینی 2 انجام می دهیم،
217
00:09:22,080 –> 00:09:25,040
اما در این مورد
218
00:09:26,560 –> 00:09:30,080
هر دو داده در اینجا در مقادیر
219
00:09:30,080 –> 00:09:32,880
خوب هستند، بنابراین اکنون ما معکوس k
220
00:09:32,880 –> 00:09:34,959
از مقدار را داریم. ماتریس کوواریانس دادههای ورودی ما
221
00:09:34,959 –> 00:09:36,640
222
00:09:36,640 –> 00:09:40,000
و دادههایی با مقادیری که
223
00:09:40,000 –> 00:09:42,000
میخواهیم پیشبینی کنیم و
224
00:09:42,000 –> 00:09:44,399
ماتریس کوواریانس فقط دادههایی را که
225
00:09:44,399 –> 00:09:46,399
میخواهیم پیشبینی انجام دهیم، بنابراین بیایید
226
00:09:46,399 –> 00:09:50,360
این فرمول را در اینجا پیادهسازی کنیم
227
00:09:53,360 –> 00:09:55,760
، فراموش کردم منظورم این نیست که اینطور نیست. این
228
00:09:55,760 –> 00:09:58,320
ماتریس کوواریانس است خوب است، اما ما نمی خواهیم
229
00:09:58,320 –> 00:09:59,040
230
00:09:59,040 –> 00:10:00,959
ماتریس کوواریانس را ذخیره کنیم، اما می
231
00:10:00,959 –> 00:10:02,880
خواهیم معکوس
232
00:10:02,880 –> 00:10:04,800
ماتریس کوواریانس را ذخیره کنیم،
233
00:10:04,800 –> 00:10:06,000
بنابراین
234
00:10:06,000 –> 00:10:09,120
من اینجا را فراموش
235
00:10:11,519 –> 00:10:14,079
کردم بسیار خوب، بنابراین این میانگین ماست، بیایید تشک
236
00:10:14,079 –> 00:10:17,200
کوواریانس خود را پیاده سازی کنیم.
237
00:10:17,440 –> 00:10:18,959
238
00:10:18,959 –> 00:10:21,760
rix
239
00:10:24,880 –> 00:10:28,240
بله خوب ماتریس کوواریانس um
240
00:10:28,240 –> 00:10:33,079
بیایید این را در اینجا تطبیق بنامیم تا
241
00:10:36,560 –> 00:10:38,720
بتوانیم آن را از ما متمایز کنیم. منظورم
242
00:10:38,720 –> 00:10:40,800
این است که شاید این نام کاملی نباشد
243
00:10:40,800 –> 00:10:43,040
بنابراین باید
244
00:10:43,040 –> 00:10:45,440
حاوی ماتریس کوواریانس باشد پس
245
00:10:45,440 –> 00:10:47,920
باید آن را به عنوان داده
246
00:10:47,920 –> 00:10:50,800
محاسبه کوواریانس تعریف می کردیم ماتریس به عنوان مثال،
247
00:10:50,800 –> 00:10:53,920
بنابراین شاید بتوانیم
248
00:10:55,760 –> 00:10:59,320
این را در اینجا تطبیق دهیم،
249
00:11:00,959 –> 00:11:02,880
بنابراین اکنون نام صحیح را داریم و اکنون
250
00:11:02,880 –> 00:11:04,000
میتوانیم
251
00:11:04,000 –> 00:11:0