در این مطلب، ویدئو آموزش پردازش تصویر با استفاده از پایتون | آموزش OpenCV پایتون | آموزش پایتون | ادورکا با زیرنویس فارسی را برای دانلود قرار داده ام. شما میتوانید با پرداخت 15 هزار تومان ، این ویدیو به علاوه تمامی فیلم های سایت را دانلود کنید.اکثر فیلم های سایت به زبان انگلیسی می باشند. این ویدئو دارای زیرنویس فارسی ترجمه شده توسط هوش مصنوعی می باشد که میتوانید نمونه ای از آن را در قسمت پایانی این مطلب مشاهده کنید.
مدت زمان فیلم: 00:46:01
تصاویر این ویدئو:
قسمتی از زیرنویس این فیلم:
00:00:00,250 –> 00:00:07,279
[موسیقی]
2
00:00:07,279 –> 00:00:09,599
سلام همه اینها جنید یاو از idioca است
3
00:00:09,599 –> 00:00:11,200
و من به همه شما خوش آمد می گویم به این جلسه
4
00:00:11,200 –> 00:00:12,799
که در آن ما در مورد پردازش تصویر با استفاده از پایتون صحبت خواهیم کرد،
5
00:00:12,799 –> 00:00:14,639
6
00:00:14,639 –> 00:00:16,079
بنابراین بدون هیچ مقدمه ای اجازه دهید
7
00:00:16,079 –> 00:00:18,480
به سرعت شما را در دستور کار امروز راهنمایی کنم،
8
00:00:18,480 –> 00:00:19,680
ما این جلسه را با
9
00:00:19,680 –> 00:00:21,279
درک اینکه پردازش تصویر دقیقاً چیست
10
00:00:21,279 –> 00:00:23,359
و چرا به آن نیاز داریم که
11
00:00:23,359 –> 00:00:25,119
به جلو حرکت کنیم، در مورد چگونگی استفاده از
12
00:00:25,119 –> 00:00:27,680
پایتون برای بینایی رایانه
13
00:00:27,680 –> 00:00:29,039
صحبت خواهم کرد در نهایت این جلسه را با
14
00:00:29,039 –> 00:00:30,480
قدم زدن در میان برخی از مفاهیم اساسی
15
00:00:30,480 –> 00:00:31,119
16
00:00:31,119 –> 00:00:33,280
که حول بینایی رایانه می چرخند و سپس به پایان می رسانیم.
17
00:00:33,280 –> 00:00:34,880
خواهیم دید که چگونه میتوانیم
18
00:00:34,880 –> 00:00:36,399
آن را با ساختن برنامهای که
19
00:00:36,399 –> 00:00:38,719
کاراکترهای دستنویس را تشخیص میدهد، اجرا
20
00:00:38,719 –> 00:00:40,719
کنیم، قبل از شروع، عضویت
21
00:00:40,719 –> 00:00:41,840
در کانال یوتیوب ما را در نظر بگیرید
22
00:00:41,840 –> 00:00:43,680
و نماد زنگ را بزنید تا در مورد فنآوریهای آموزشی بهروز بمانید
23
00:00:43,680 –> 00:00:45,039
24
00:00:45,039 –> 00:00:46,399
و همچنین اگر بهدنبال
25
00:00:46,399 –> 00:00:48,239
صدور گواهینامه آموزش آنلاین در پایتون هستید.
26
00:00:48,239 –> 00:00:49,600
لینک داده شده در کادر توضیحات
27
00:00:49,600 –> 00:00:50,800
زیر را بررسی کنید
28
00:00:50,800 –> 00:00:52,960
تا اکنون شروع کنید به
29
00:00:52,960 –> 00:00:54,399
درستی پردازش
30
00:00:54,399 –> 00:00:56,320
تصویر چیست و پردازش تصویر یک روش است d برای
31
00:00:56,320 –> 00:00:58,480
انجام برخی عملیات روی یک تصویر،
32
00:00:58,480 –> 00:01:00,640
این کار به منظور به دست آوردن یک
33
00:01:00,640 –> 00:01:02,399
تصویر بهبودیافته یا بهبود برخی
34
00:01:02,399 –> 00:01:03,680
اطلاعات مفید از آن انجام
35
00:01:03,680 –> 00:01:05,119
می شود، می توان گفت این یک نوع
36
00:01:05,119 –> 00:01:07,280
پردازش سیگنال است که در آن ورودی در
37
00:01:07,280 –> 00:01:09,439
واقع یک تصویر است و خروجی نیز می تواند
38
00:01:09,439 –> 00:01:11,200
یک تصویر یا ویژگی یا
39
00:01:11,200 –> 00:01:12,880
ویژگی که با آن تصویر خاص مرتبط است،
40
00:01:12,880 –> 00:01:14,000
41
00:01:14,000 –> 00:01:15,840
اما چرا ما به درستی به پردازش تصویر نیاز
42
00:01:15,840 –> 00:01:17,920
داریم، همه ما می دانیم که امروزه
43
00:01:17,920 –> 00:01:19,759
پردازش تصویر از جمله فناوری هایی است که به سرعت در حال
44
00:01:19,759 –> 00:01:21,040
45
00:01:21,040 –> 00:01:23,040
رشد است و یک حوزه تحقیقاتی اصلی در
46
00:01:23,040 –> 00:01:24,320
رشته مهندسی و علوم کامپیوتر
47
00:01:24,320 –> 00:01:25,200
48
00:01:25,200 –> 00:01:26,880
را تشکیل می دهد. پردازش تصویر در
49
00:01:26,880 –> 00:01:29,040
زمینههای مختلفی استفاده میشود، همانطور که در اینجا مشاهده میکنید، ما
50
00:01:29,040 –> 00:01:31,360
میتوانیم از پردازش تصویر برای ردیابی رفتار انسانها
51
00:01:31,360 –> 00:01:32,320
52
00:01:32,320 –> 00:01:34,240
و موقعیتهای آنها
53
00:01:34,240 –> 00:01:35,680
استفاده
54
00:01:35,680 –> 00:01:38,560
55
00:01:38,560 –> 00:01:40,640
56
00:01:40,640 –> 00:01:41,920
57
00:01:41,920 –> 00:01:44,240
کنیم. همه شاهد این موضوع هستند، می بینید که
58
00:01:44,240 –> 00:01:46,000
ماشین های بدون راننده یکی از
59
00:01:46,000 –> 00:01:47,840
جالب ترین تکنولوژی های
60
00:01:47,840 –> 00:01:48,560
امروزی هستند
61
00:01:48,560 –> 00:01:50,000
و بازیکنان برتر وقتی صحبت از
62
00:01:50,000 –> 00:01:52,159
ماشینهای بدون راننده به میان میآید مانند تسلا
63
00:01:52,159 –> 00:01:54,960
آئودی مرسدس هستند و بسیاری دیگر
64
00:01:54,960 –> 00:01:55,920
به آخرین اما
65
00:01:55,920 –> 00:01:58,240
مهمترین برنامهای که
66
00:01:58,240 –> 00:02:00,640
پردازش تصویر را در تصاویر پزشکی
67
00:02:00,640 –> 00:02:02,960
که میبینید پیادهسازی میکند، میرویم، ما میتوانیم از این سی تی اسکن اشعه ایکس یا
68
00:02:02,960 –> 00:02:05,280
MRI برای پیدا کردن موارد
69
00:02:05,280 –> 00:02:07,200
غیرعادی استفاده کنیم. یک فرد دارای نوعی
70
00:02:07,200 –> 00:02:08,639
شکستگی یا
71
00:02:08,639 –> 00:02:10,479
سرطان است که با استفاده از MRI تشخیص داده میشود، م
72
00:02:10,479 –> 00:02:12,640
در واقع میتوانیم آن تص
73
00:02:12,640 –> 00:02:14,400
یر خاص را با مج
74
00:02:14,400 –> 00:02:16,319
وعهای از تصاویر دیگر که
75
00:02:16,319 –> 00:02:18,560
دارند یا کاملاً طبیعی هستند و سپس بر
76
00:02:18,560 –> 00:02:20,400
ساس معیارهای خاصی مقایسه می
77
00:02:20,400 –> 00:02:21,840
کنیم. با اعمال آن در یک مدل یادگیری عمیق،
78
00:02:21,840 –> 00:02:23,840
میتوانیم بفهمیم که آیا ناهنجاریهایی وجود دارد یا خیر،
79
00:02:23,840 –> 00:02:26,080
80
00:02:26,080 –> 00:02:28,080
اما میبینید که نمیتوانیم از خروجی یا
81
00:02:28,080 –> 00:02:29,599
هر نظری که توسط الگوریتم
82
00:02:29,599 –> 00:02:30,400
یادگیری ماشینی ارائه میشود
83
00:02:30,400 –> 00:02:32,720
استفاده کنیم، این همیشه به عنوان
84
00:02:32,720 –> 00:02:33,680
نظر سوم
85
00:02:33,680 –> 00:02:35,280
یا چیزی دیگر در نظر گرفته میشود. که ما می توانیم به بیمار نشان دهیم
86
00:02:35,280 –> 00:02:37,280
که فلان نمایشنامه مشکلات فلان و فلانی دارد،
87
00:02:37,280 –> 00:02:38,959
88
00:02:38,959 –> 00:02:40,400
بنابراین اکنون که
89
00:02:40,400 –> 00:02:42,400
انگیزه پشت پردازش تصویر را می دانیم،
90
00:02:42,400 –> 00:02:44,000
مطمئنم اکنون ممکن است تعجب کنید چگونه
91
00:02:44,000 –> 00:02:46,239
می توانم با پردازش تصویر درست کار کنم،
92
00:02:46,239 –> 00:02:48,319
می بینید که ما تعداد
93
00:02:48,319 –> 00:02:50,319
زبان های برنامه نویسی و فریم ورک های مختلفی برای
94
00:02:50,319 –> 00:02:51,040
کار داریم،
95
00:02:51,040 –> 00:02:52,959
اما یکی از روش های محبوب
96
00:02:52,959 –> 00:02:54,239
استفاده از پایتون است،
97
00:02:54,239 –> 00:02:55,920
می بینید پایتون
98
00:02:55,920 –> 00:02:57,680
کتابخانه ها و ابزارهای داخلی زیادی دارد که نه تنها می توانیم با آنها
99
00:02:57,680 –> 00:02:58,560
100
00:02:58,560 –> 00:03:00,319
اعمالی را روی این تصاویر انجام دهید، مانند
101
00:03:00,319 –> 00:03:02,560
تقویت آستانه یا هر چیز دیگری
102
00:03:02,560 –> 00:03:02,879
،
103
00:03:02,879 –> 00:03:04,800
اما ما همچنین میتوانیم تصاویر را با استفاده از
104
00:03:04,800 –> 00:03:06,159
یادگیری عمیق یا الگوریتمهای ماشینکاری پردازش
105
00:03:06,159 –> 00:03:08,239
کنیم تا عملیات طبقهبندی را
106
00:03:08,239 –> 00:03:09,360
انجام دهیم،
107
00:03:09,360 –> 00:03:11,280
برخی از چارچوبها یا کتابخانههای محبوب
108
00:03:11,280 –> 00:03:13,440
در اینجا
109
00:03:13,440 –> 00:03:16,480
opencv pytorch هستند، سپس tensorflow numpy
110
00:03:16,480 –> 00:03:19,280
و بسیاری دیگر کاملاً درست است. اکنون
111
00:03:19,280 –> 00:03:21,519
که شهودی مختصر در مورد پردازش تصویر داریم،
112
00:03:21,519 –> 00:03:22,879
بیایید برخی از مفاهیم اساسی را ببینیم
113
00:03:22,879 –> 00:03:25,440
که حول این
114
00:03:25,440 –> 00:03:27,360
یکی از اساسیترین مفاهیم در
115
00:03:27,360 –> 00:03:28,560
پردازش
116
00:03:28,560 –> 00:03:30,640
تصویر است، فیلترهای تصویری که در
117
00:03:30,640 –> 00:03:32,480
فیلترهای پردازش تصویر مشاهده میکنید، عمدتاً برای
118
00:03:32,480 –> 00:03:34,159
سرکوب فرکانسهای بالا استفاده میشوند.
119
00:03:34,159 –> 00:03:34,799
تصویری
120
00:03:34,799 –> 00:03:36,879
که با صاف کردن یک تصویر یا با
121
00:03:36,879 –> 00:03:38,319
کاهش فرکانس است که با
122
00:03:38,319 –> 00:03:40,159
افزایش است یا تشخیص لبهها در آن
123
00:03:40,159 –> 00:03:41,440
تصویر خاص،
124
00:03:41,440 –> 00:03:43,599
یک تصویر را میتوان با استفاده از
125
00:03:43,599 –> 00:03:45,360
یک دامنه فرکانس فیلتر کرد یا در یک حوزه فضایی
126
00:03:45,360 –> 00:03:46,159
127
00:03:46,159 –> 00:03:47,920
که در مورد دامنه فرکانس صحبت میکند،
128
00:03:47,920 –> 00:03:49,680
شامل تبدیل آن
129
00:03:49,680 –> 00:03:51,440
تصویر خاص به یک دامنه فرکانس است،
130
00:03:51,440 –> 00:03:53,519
آن فرکانس را با یک فیلتر فرکانس ضرب کنید
131
00:03:53,519 –> 00:03:55,519
و سپس یک بار دیگر
132
00:03:55,519 –> 00:03:57,120
تبدیل مجدد نتیجه به یک
133
00:03:57,120 –> 00:03:58,239
دامنه فضایی انجام می شود
134
00:03:58,239 –> 00:04:00,000
که می بینید دامنه فضایی چیزی نیست جز یک
135
00:04:00,000 –> 00:04:02,799
ماتریس، راه دیگر فیلتر کردن تصویر ما
136
00:04:02,799 –> 00:04:04,159
با استفاده از هسته
137
00:04:04,159 –> 00:04:05,920
هسته است یا می توان از آن به عنوان
138
00:04:05,920 –> 00:04:07,920
یک فیلتر برای استخراج
139
00:04:07,920 –> 00:04:09,920
هر گونه اطلاعات استفاده کرد. این برخی از
140
00:04:09,920 –> 00:04:11,360
فیلترهای محبوبی که وجود دارند
141
00:04:11,360 –> 00:04:13,439
فیلتر متوسط است، سپس ما فیلتر حالت حد
142
00:04:13,439 –> 00:04:15,120
کثر فیلتر فیلتر حداقل فی
143
00:04:15,120 –> 00:04:17,358
تر گاوسی داریم و بسیاری موارد دیگر روش کا
144
00:04:17,358 –> 00:04:19,199
این است که می دانید ما یک تص
145
00:04:19,199 –> 00:04:20,560
یر داریم که در یک دامنه خاص وجود دا
146
00:04:20,560 –> 00:04:21,199
د و ا
147
00:04:21,199 –> 00:04:22,880
ن هسته خاص فقط روی آن حرکت می کند
148
00:04:22,880 –> 00:04:24,960
و این همان چیزی است که در اینجا اتفاق می افتد
149
00:04:24,960 –> 00:04:25,360
150
00:04:25,360 –> 00:04:28,479
همانطور که می بینید در اینجا تصویر ما
151
00:04:28,479 –> 00:04:30,320
خوب است بنابراین این چیز خاص تصویر ما است
152
00:04:30,320 –> 00:04:31,520
و این
153
00:04:31,520 –> 00:04:34,320
چیزی که ما به عنوان هسته گفتیم خوب است، می توانیم بگوییم
154
00:04:34,320 –> 00:04:35,919
یک کرنل یا یک فیلتر
155
00:04:35,919 –> 00:04:37,680
و این اساساً در اینجا چیزی است که ما استفاده می کنیم این
156
00:04:37,680 –> 00:04:40,400
است
157
00:04:40,720 –> 00:04:43,199
که شما یک فیلتر را می شناسید و هر بار که این
158
00:04:43,199 –> 00:04:44,240
فیلتر از
159
00:04:44,240 –> 00:04:46,080
تمام این نقاط دامنه خاص عبور می
160
00:04:46,080 –> 00:04:47,840
کند، می توانید آن را اینجا ببینید. مقادیر مشخصی را به ما می دهد،
161
00:04:47,840 –> 00:04:50,400
162
00:04:50,400 –> 00:04:53,040
بنابراین یک فیلتر به این شکل درست کار می کند،
163
00:04:53,040 –> 00:04:53,600
164
00:04:53,600 –> 00:04:55,600
بنابراین در مؤلفه بعدی، اگر
165
00:04:55,600 –> 00:04:57,280
جلوتر برویم، چیزی به نام
166
00:04:57,280 –> 00:04:58,400
padding
167
00:04:58,400 –> 00:05:00,800
okay داریم، بنابراین همانطور که اشاره کردم ما از
168
00:05:00,800 –> 00:05:01,520
آن استفاده
169
00:05:01,520 –> 00:05:03,440
خواهیم کرد، بدانید که ما از یک فیلتر درست استفاده خواهیم کرد.
170
00:05:03,440 –> 00:05:04,800
اجازه دهید به سرعت به شما نشان دهم که
171
00:05:04,800 –> 00:05:06,880
پس این چیزی که در اینجا قرار دارد یک فیلتر است و
172
00:05:06,880 –> 00:05:08,000
این تصویر ماست،
173
00:05:08,000 –> 00:05:09,759
اما وقتی این فیلتر از میان این
174
00:05:09,759 –> 00:05:11,520
تصویر که در این شبکه سه متقاطع قرار دارد حرکت می کند،
175
00:05:11,520 –> 00:05:13,680
اغلب می دانید که
176
00:05:13,680 –> 00:05:14,560
چه اتفاقی می افتد این است
177
00:05:14,560 –> 00:05:16,800
که می دانید تصویر ما بریده می شود. و هنگامی که
178
00:05:16,800 –> 00:05:18,240
یک تصویر برش میشود، یعنی همین
179
00:05:18,240 –> 00:05:20,400
پیکسلهای خاص، این پیکسلها برش میشوند
180
00:05:20,400 –> 00:05:21,759
و زمانی که یک تصویر برش
181
00:05:21,759 –> 00:05:23,120
داده میشود، بیشتر ویژگیها از
182
00:05:23,120 –> 00:05:24,560
بین
183
00:05:24,560 –> 00:05:25,840
184
00:05:25,840 –> 00:05:26,960
میروند.
185
00:05:26,960 –> 00:05:28,639
این در واقع تصویر را برش میدهد،
186
00:05:28,639 –> 00:05:30,400
بنابراین برای جلوگیری از
187
00:05:30,400 –> 00:05:31,520
اضافه کردن چند
188
00:05:31,520 –> 00:05:33,680
لایه پیکسل اضافی با این
189
00:05:33,680 –> 00:05:35,520
اتفاق، میدانید که همه این
190
00:05:35,520 –> 00:05:38,479
لایههای خارجی در تبدیل نهایی ما گنجانده میشوند،
191
00:05:38,479 –> 00:05:38,960
192
00:05:38,960 –> 00:05:41,360
بنابراین
193
00:05:41,360 –> 00:05:43,280
دقیقاً به همین دلیل است که ما از آن استفاده میکنیم. padding اساساً ما
194
00:05:43,280 –> 00:05:45,120
از padding برای حذف یا
195
00:05:45,120 –> 00:05:46,240
به منظور کاهش
196
00:05:46,240 –> 00:05:48,960
از دست دادن اطلاعات از تصویر خود استفاده می کنیم که
197
00:05:48,960 –> 00:05:50,639
در حال حرکت به سمت مفهوم بعدی است
198
00:05:50,639 –> 00:05:51,600
199
00:05:51,600 –> 00:05:53,440
که آستانه گذاری است.
200
00:05:53,440 –> 00:05:54,639
201
00:05:54,639 –> 00:05:56,560
202
00:05:56,560 –> 00:05:58,080
203
00:05:58,080 –> 00:05:59,680
همانطور که از نام اینجا پیداست، تقسیم بندی
204
00:05:59,680 –> 00:06:01,440
اساساً به معنای جدا کردن است،
205
00:06:01,440 –> 00:06:04,240
بنابراین در اینجا یک تصویر خوب داریم و
206
00:06:04,240 –> 00:06:06,080
این اساساً می تواند یک تصویر رنگی
207
00:06:06,080 –> 00:06:07,360
یا یک تصویر rgb باشد
208
00:06:07,360 –> 00:06:09,680
و سپس همه شما می دانید که تصاویر یا
209
00:06:09,680 –> 00:06:11,520
تصاویر اساساً یک مقدار پیکسل هستند، بنابراین
210
00:06:11,520 –> 00:06:13,280
شبکه پیکسل ها و
211
00:06:13,280 –> 00:06:15,440
مقدار پیکسل یک تصویر می تواند از
212
00:06:15,440 –> 00:06:18,880
0 تا 255 0 متغیر باشد، معمولاً به این معنی است که یک تصویر سیاه است
213
00:06:18,880 –> 00:06:20,000
و 255
214
00:06:20,000 –> 00:06:22,240
به این معنی است که یک پیکسل سفید است، بنابراین آنچه
215
00:06:22,240 –> 00:06:24,080
در آستانه تصویر انجام می دهیم. این است که ما یک
216
00:06:24,080 –> 00:06:25,440
مقدار آستانه خاصی را تعیین
217
00:06:25,440 –> 00:06:27,840
می کنیم که شما می گویید چیزی می دانید مانند ما
218
00:06:27,840 –> 00:06:29,360
مانند جایی در میانه راه راست
219
00:06:29,360 –> 00:06:31,280
پایین می آییم و یک مقدار آستانه را تعیین می کنیم
220
00:06:31,280 –> 00:06:33,600
و هر مقداری که زیر این
221
00:06:33,600 –> 00:06:35,360
آستانه قرار دارد می گوییم این است که دوست
222
00:06:35,360 –> 00:06:37,759
داریم آن پیکسل را با یکی از این دو جایگزین کنیم. یک یا
223
00:06:37,759 –> 00:06:38,960
صفر
224
00:06:38,960 –> 00:06:40,720
یا آن چیزی نیست، اما می تواند سیاه یا
225
00:06:40,720 –> 00:06:42,319
سفید باشد و هر مقداری
226
00:06:42,319 –> 00:06:43,919
که در طرف دیگر وجود دارد،
227
00:06:43,919 –> 00:06:45,280
مقدار متناوب را در اینجا می گیرد
228
00:06:45,280 –> 00:06:46,800
و بنابراین آنچه در نتیجه اتفاق می افتد این
229
00:06:46,800 –> 00:06:48,400
است که ما یک لکه داریم که
230
00:06:48,400 –> 00:06:49,360
در اینجا انجام می شود.
231
00:06:49,360 –> 00:06:51,520
بسیار خوب، همانطور که می بینید اینجا ما
232
00:06:51,520 –> 00:06:53,520
اینجا داریم، مردی داریم که لایک
233
00:06:53,520 –> 00:06:54,960
می گیرد و سعی می کند چیزی
234
00:06:54,960 –> 00:06:56,720
را در اینجا ضبط کند، پس از اتمام
235
00:06:56,720 –> 00:06:58,479
اجرای آستانه، می توانید ببینید
236
00:06:58,479 –> 00:07:00,160
که تصویر به
237
00:07:00,160 –> 00:07:01,680
سیاه و سفید تبدیل شده است، بنابراین با این چیزی است که
238
00:07:01,680 –> 00:07:02,000
اتفاق می افتد
239
00:07:02,000 –> 00:07:04,479
این است که استخراج نویز
240
00:07:04,479 –> 00:07:06,400
و همچنین اسکن کردن هرگونه ناهنجاری آسان تر می شود و
241
00:07:06,400 –> 00:07:08,080
242
00:07:08,080 –> 00:07:09,759
243
00:07:09,759 –> 00:07:11,120
244
00:07:11,120 –> 00:07:13,520
اکنون که می دانیم این آستانه تصویر چه کار می کند، به مبحث بعدی که اجزای متصل است ادامه
245
00:07:13,520 –> 00:07:14,880
می دهیم. درست است، بنابراین
246
00:07:14,880 –> 00:07:15,599
اساساً
247
00:07:15,599 –> 00:07:17,680
من می دانم که مقدار می تواند یک
248
00:07:17,680 –> 00:07:19,120
یا صفر باشد، بنابراین
249
00:07:19,120 –> 00:07:21,280
اکنون آنچه اتفاق می افتد این است که ما باید
250
00:07:21,280 –> 00:07:22,400
تصویر خود را درست پردازش کنیم،
251
00:07:22,400 –> 00:07:23,919
بنابراین این بخش خاص یا این
252
00:07:23,919 –> 00:07:25,360
تصویر خاص در اینجا چیزی
253
00:07:25,360 –> 00:07:26,639
جز تصویر آستانه ای
254
00:07:26,639 –> 00:07:28,240
نیست، بنابراین در اینجا هر مقداری که وجود داشت
255
00:07:28,240 –> 00:07:29,840
به یک یا
256
00:07:29,840 –> 00:07:30,400
صفر تبدیل شده است،
257
00:07:30,400 –> 00:07:32,560
اما اکنون این هنوز برای ما فایده ای ندارد،
258
00:07:32,560 –> 00:07:33,759
بنابراین این جایی است که اجزای متصل
259
00:07:33,759 –> 00:07:34,800
وارد می شوند،
260
00:07:34,800 –> 00:07:36,720
بنابراین هر زمان که
261
00:07:36,720 –> 00:07:38,400
ساختار پیوسته پیکسل ها وجود داشته باشد، دقیقاً همانطور که
262
00:07:38,400 –> 00:07:39,759
در اینجا می بینید، دست این مرد
263
00:07:39,759 –> 00:07:42,160
این یک پیوسته است. ردیفی از پیکسلها
264
00:07:42,160 –> 00:07:43,199
را داریم،
265
00:07:43,199 –> 00:07:44,479
میتوانید از طرف دیگر آن را ببینید، اما
266
00:07:44,479 –> 00:07:46,160
یک ناحیه پیکسل سفید کوچک وجود دارد که در اینجا
267
00:07:46,160 –> 00:07:47,120
268
00:07:47,120 –> 00:07:48,960
وجود دارد، بنابراین اگر یک پل کوچک
269
00:07:48,960 –> 00:07:50,560
یا یک شکاف کوچک در اینجا وجود داشته باشد، به این معنی است
270
00:07:50,560 –> 00:07:52,240
که آن دو دو جزء متفاوت هستند
271
00:07:52,240 –> 00:07:54,000
، به همین دلیل است که وقتی من این اجزای متصل را انجام میدهم،
272
00:07:54,000 –> 00:07:54,720
273
00:07:54,720 –> 00:07:57,039
میتوانید در اینجا ببینید که این بازوی راست این
274
00:07:57,039 –> 00:07:58,240
مرد و یک لپتاپ
275
00:07:58,240 –> 00:08:00,080
یکی هستند زیرا
276
00:08:00,080 –> 00:08:01,919
هیچ فاصله پیکسلی بین آنها وجود ندارد.
277
00:08:01,919 –> 00:08:03,520
278
00:08:03,520 –> 00:08:05,440
میتوانیم بگوییم که میتوانیم آنالیز را در
279
00:08:05,440 –> 00:08:06,319
اینجا انجام دهیم، میتوانیم بگوییم
280
00:08:06,319 –> 00:08:08,560
این سر آن مرد است و سپس ما
281
00:08:08,560 –> 00:08:09,840
هدفون داریم و سپس
282
00:08:09,840 –> 00:08:11,680
بیشتر میتوانیم هر تصویری را
283
00:08:11,680 –> 00:08:13,039
که این خروجی داریم،
284
00:08:13,039 –> 00:08:14,960
میتوانیم آن را روی یک تصویر اصلی بپوشانیم تا
285
00:08:14,960 –> 00:08:16,479
درک بهتری از آن داشته باشیم.
286
00:08:16,479 –> 00:08:17,680
چه چیزهایی را میخواهیم
287
00:08:17,680 –> 00:08:19,599
شناسایی کنیم و همچنین میتوانیم عملیاتهای
288
00:08:19,599 –> 00:08:20,400
289
00:08:20,400 –> 00:08:22,560
مختلفی مانند ساختن یک جعبه مرزی را انجام دهیم،
290
00:08:22,560 –> 00:08:24,319
میتوانیم این مقدار خاص را در اینجا به دست آوریم
291
00:08:24,319 –> 00:08:26,000
و این فقط یک جعبه مرزی
292
00:08:26,000 –> 00:08:27,919
در اطراف آن ایجاد میکند و اگر اجازه دهید فقط
293
00:08:27,919 –> 00:08:29,680
رنگ قلم را تغییر دهم دوست دارید
294
00:08:29,680 –> 00:08:31,520
خوب است، اگر من این رنگ سبز را بگیرم، بنابراین این
295
00:08:31,520 –> 00:08:33,039
چیز خاص
296
00:08:33,039 –> 00:08:34,159
با گرفتن
297
00:08:34,159 –> 00:08:36,080
حداکثر و حداقل مقدار این
298
00:08:36,080 –> 00:08:38,399
مختصات، یک کادر محدود ایجاد می کند و سپس ما می توانیم این
299
00:08:38,399 –> 00:08:39,519
بخش خاص را در اینجا تشخیص دهیم،
300
00:08:39,519 –> 00:08:41,599
بنابراین دقیقاً به همین دلیل است که آستانه گذاری تصویر را انجام می دهیم
301
00:08:41,599 –> 00:08:43,440
و سپس می بینیم که چه چیزی
302
00:08:43,440 –> 00:08:44,240
تداوم مختلفی
303
00:08:44,240 –> 00:08:46,160
در پیکسلهایی است که ما داریم به طوری
304
00:08:46,160 –> 00:08:47,680
که میتوانیم ابعاد مختلف مختلف را
305
00:08:47,680 –> 00:08:49,680
در یک
306
00:08:49,680 –> 00:08:51,440
تصویر ببینیم، بنابراین اکنون درک اساسی
307
00:08:51,440 –> 00:08:53,360
از چیستی تصویر داریم.
308
00:08:53,360 –> 00:08:54,320
309
00:08:54,320 –> 00:08:55,920
بیایید اکنون به جلو برویم و اجازه دهید به شما نشان دهم
310
00:08:55,920 –> 00:08:57,519
که چگونه می توانیم هر آنچه را که
311
00:08:57,519 –> 00:08:59,440
یاد گرفته ایم در قالب یک
312
00:08:59,440 –> 00:09:01,040
برنامه پیاده سازی کنیم، بنابراین اجازه دهید
313
00:09:01,040 –> 00:09:02,800
من به سرعت به ویرایشگر کد خود در اینجا بروم
314
00:09:02,800 –> 00:09:04,240
و ویرایشگر کدی که
315
00:09:04,240 –> 00:09:07,040
استفاده می کنم ویژوال استودیو است. کد
316
00:09:07,040 –> 00:09:09,120
بسیار درست است، بنابراین اجازه دهید من به سرعت
317
00:09:09,120 –> 00:09:22,320
دایرکتوری خود را در
318
00:09:22,320 –> 00:09:23,839
اینجا تنظیم کنم، بنابراین اکنون که اینجا هستیم،
319
00:09:23,839 –> 00:09:24,880
کاری که میخواهم انجام دهیم این است که
320
00:09:24,880 –> 00:09:25,440
321
00:09:25,440 –> 00:09:27,600
این عملیات را در دو مرحله انجام میدهیم، بنابراین اجازه
322
00:09:27,600 –> 00:09:30,160
دهید سریعاً این کار را انجام دهم، اجازه
323
00:09:30,160 –> 00:09:32,720
دهید به رنگ من پس اجازه دهید به شما
324
00:09:32,720 –> 00:09:34,720
بگویم که اینجا چه کار می کنم دقیقاً
325
00:09:34,720 –> 00:09:36,560
خوب است بنابراین اولین چیزی که باید ایجاد کنیم
326
00:09:36,560 –> 00:09:38,000
این است
327
00:09:38,000 –> 00:09:39,920
که این مدل چه کاری انجام می دهد این است که این
328
00:09:39,920 –> 00:09:42,000
مدل چندین تصویر می گیرد،
329
00:09:42,000 –> 00:09:44,080
خوب این مدل چندین تصویر خواهد داشت
330
00:09:44,080 –> 00:09:46,160
و ما آموزش خواهیم داد این مدل در
331
00:09:46,160 –> 00:09:48,880
دادههای mnist،
332
00:09:49,519 –> 00:09:51,279
بنابراین دادههای عفو اساساً مجموعهای از
333
00:09:51,279 –> 00:09:52,560
ارقام دستنویس هستند
334
00:09:52,560 –> 00:09:54,399
و این مدل
335
00:09:54,399 –> 00:09:56,399
اساساً مبتنی بر یک مدل یادگیری عمیق است که
336
00:09:56,399 –> 00:09:57,040
337
00:09:57,040 –> 00:09:58,959
ما خودمان ایجاد میکنیم و روش کار این
338
00:09:58,959 –> 00:10:00,800
است که وقتی این مدل را آموزش دهیم، هر
339
00:10:00,800 –> 00:10:02,800
ورودی تصویری که ارائه می کنم h اندازه
340
00:10:02,800 –> 00:10:04,399
28 کاما
341
00:10:04,399 –> 00:10:05,839
28 خواهد بود که پیش بینی درستی به من می دهد
342
00:10:05,839 –> 00:10:07,920
که آن تصویر دقیقا چه کاری انجام می دهد،
343
00:10:07,920 –> 00:10:10,240
خوب این مرحله یک است و مرحله دوم
344
00:10:10,240 –> 00:10:11,120
این است
345
00:10:11,120 –> 00:10:12,560
که ما باید به هر مدلی که
346
00:10:12,560 –> 00:10:14,959
ایجاد کرده ایم، فایل dot h5 را برای آن ایجاد
347
00:10:14,959 –> 00:10:16,480
کنیم تا ما اکنون می توانید از این در
348
00:10:16,480 –> 00:10:17,360
برنامه ما استفاده کنید،
349
00:10:17,360 –> 00:10:19,839
آنچه در برنامه ما اتفاق می افتد این است
350
00:10:19,839 –> 00:10:20,959
که اجازه دهید به شما نشان دهم
351
00:10:20,959 –> 00:10:23,279
که در اینجا چه کاری انجام خواهیم داد، بنابراین ما
352
00:10:23,279 –> 00:10:26,240
یک تابلو شبیه به این
353
00:10:26,240 –> 00:10:28,800
درست می کنیم و هر زمان که بخواهید در داخل این تابلو
354
00:10:28,800 –> 00:10:30,880
مانند هر تصویر دست نوشته ای را بردارید
355
00:10:30,880 –> 00:10:32,959
و شما نه را فشار دهید، اتفاقی که می افتد این است که
356
00:10:32,959 –> 00:10:34,880
ما یک کادر محدود می گیریم
357
00:10:34,880 –> 00:10:36,800
که این عدد خاص را
358
00:10:36,800 –> 00:10:38,880
که نه است را شناسایی می کند و یک خروجی در اینجا به من
359
00:10:38,880 –> 00:10:39,519
360
00:10:39,519 –> 00:10:41,839
می دهد و اگر هشت را بنویسم
361
00:10:41,839 –> 00:10:43,279
فقط این را تشخیص می
362
00:10:43,279 –> 00:10:45,120
دهد و یک عدد آن و همه اینها را به من می دهد.
363
00:10:45,120 –> 00:10:46,640
در زمان واقعی اتفاق می افتد
364
00:10:46,640 –> 00:10:48,320
بسیار خوب، بنابراین بسیار جالب به نظر می رسد،
365
00:10:48,320 –> 00:10:49,839
بنابراین اجازه دهید ما اکنون به سرعت
366
00:10:49,839 –> 00:10:52,480
روی آن کار کنیم، بنابراین ابتدا
367
00:10:52,480 –> 00:10:53,839
به یک نوت بوک
368
00:10:53,839 –> 00:10:55,360
jupyter برای آموزش مدل خود نیاز داریم،
369
00:10:55,360 –> 00:10:59,200
بنابراین کاری که من می خواهم انجام دهم در این پوشه است
370
00:10:59,200 –> 00:11:01,200
که من زوج دارم. از تصاویر در اینجا این
371
00:11:01,200 –> 00:11:02,959
تصاویر چیزی نیست جز تصویر منیست،
372
00:11:02,959 –> 00:11:04,399
بنابراین همانطور که در اینجا می بینید این یک
373
00:11:04,399 –> 00:11:06,640
تصویر کوچک است، یک هفت است و سپس اگر
374
00:11:06,640 –> 00:11:09,360
پنج را بگذارم خوب است، بنابراین این تصویر نشان دهنده
375
00:11:09,360 –> 00:11:11,120
سه است، بنابراین این اساسا یک مجموعه داده کوچک است
376
00:11:11,120 –> 00:11:12,399
که من انجام داده ام
377
00:11:12,399 –> 00:11:15,200
و اکنون در داخل این ما یک مدل را آموزش میدهیم،
378
00:11:15,200 –> 00:11:16,160
بنابراین
379
00:11:16,160 –> 00:11:17,920
بیایید سریعاً این کار را انجام دهیم تا یک
380
00:11:17,920 –> 00:11:19,200
دفترچه یادداشت jupyter در اینجا باز شود،
381
00:11:19,200 –> 00:11:22,959
فقط باید ctrl alt p را به
382
00:11:23,040 –> 00:11:26,160
درستی فشار دهیم و اکنون فقط آن را
383
00:11:26,160 –> 00:11:29,839
میزنیم و حالا در نهایت
384
00:11:30,320 –> 00:11:32,000
همه را درست ذخیره میکنیم، بنابراین اکنون ما قرار است
385
00:11:32,000 –> 00:11:33,839
این مدل خاص را به درستی آموزش دهیم،
386
00:11:33,839 –> 00:11:36,079
بنابراین کاری که من در اینجا انجام می دهم این است که ابتدا
387
00:11:36,079 –> 00:11:38,079
سعی می کنیم این را ذخیره کنیم،
388
00:11:38,079 –> 00:11:39,760
بنابراین من این را در داخل توسعه این مدل ذخیره می
389
00:11:39,760 –> 00:11:41,760
کنم و فقط نامی را
390
00:11:41,760 –> 00:11:42,160
در اینجا
391
00:11:42,160 –> 00:11:45,200
به عنوان
392
00:11:45,200 –> 00:11:48,160
توسعه مدل می گذارم و ما. این را کاملاً ذخیره خواهیم کرد
393
00:11:48,160 –> 00:11:48,640
394
00:11:48,640 –> 00:11:51,839
و اکنون بسیار خوب بچه ها، بنابراین اکنون که
395
00:11:51,839 –> 00:11:53,440
ما اینجا در نوت بوک ژوپیتر خود
396
00:11:53,440 –> 00:11:54,800
هستیم ابتدا باید چند
397
00:11:54,800 –> 00:11:56,639
وابستگی را به درستی نصب کنیم، بنابراین برای
398
00:11:56,639 –> 00:11:58,639
نصب نیازی نیست در واقع
399
00:11:58,639 –> 00:12:00,720
به خط فرمان آناکوندا برگردم و تایپ کنید
400
00:12:00,720 –> 00:12:02,399
تا میانبر ساده ای داشته باشیم که کاری که
401
00:12:02,399 –> 00:12:04,079
می توانیم انجام دهیم این است که c یک علامت تعجبی
402
00:12:04,079 –> 00:12:04,880
403
00:12:04,880 –> 00:12:08,240
404
00:12:08,240 –> 00:12:11,440
405
00:12:11,440 –> 00:12:15,040
406
00:12:15,040 –> 00:12:24,160
بگذارید و تایپ کنید pip install keras خوب است و سپس ما نیز میتوانیم همین کار را برای pip install sql انجام دهیم و بیایید این کار را به درستی اجرا کنیم،
407
00:12:24,160 –> 00:12:25,839
بنابراین همانطور که میبینید در اینجا ما
408
00:12:25,839 –> 00:12:27,519
keras را با موفقیت
409
00:12:27,519 –> 00:12:29,839
در نوت بوک jupyter خود نصب کردهایم، این
410
00:12:29,839 –> 00:12:31,279
معمولاً زمان میبرد. بسته به
411
00:12:31,279 –> 00:12:32,079
سرعت اینترنت شما
412
00:12:32,079 –> 00:12:35,040
بسیار خوب است، بنابراین اجازه دهید من اکنون به سرعت keras را وارد
413
00:12:35,040 –> 00:12:36,639
414
00:12:36,639 –> 00:12:40,639
کنم تا از
415
00:12:40,639 –> 00:12:44,240
مجموعه داده keras dot داده های
416
00:12:44,240 –> 00:12:47,279
mnist را به درستی وارد کنیم و سپس چند
417
00:12:47,279 –> 00:12:49,040
چیز دیگر که به آنها نیاز
418
00:12:49,040 –> 00:12:52,639
داریم مانند numpy import numpy
419
00:12:52,639 –> 00:12:55,600
به عنوان np و سپس در همان زمان است. زمان ما
420
00:12:55,600 –> 00:12:57,040
همچنین از
421
00:12:57,040 –> 00:13:00,720
matplotlib import matlab
422
00:13:00,720 –> 00:13:07,839
dot pipelot به عنوان plt استفاده می کنیم،
423
00:13:08,720 –> 00:13:10,399
بنابراین دلیل اینکه من با
424
00:13:10,399 –> 00:13:11,760
این مشکل مواجه شدم این است که
425
00:13:11,760 –> 00:13:13,839
هسته دیگری را انتخاب می کردم، بنابراین اجازه دهید
426
00:13:13,839 –> 00:13:15,519
اکنون این را دوباره اجرا کنم، مطمئناً باید
427
00:13:15,519 –> 00:13:18,000
درست کار کند.
428
00:13:18,000 –> 00:13:19,519
429
00:13:19,519 –> 00:13:21,360
چیزی که در اینجا بارگذاری می شود،
430
00:13:21,360 –> 00:13:21,920
این است که ما این را داریم،
431
00:13:21,920 –> 00:13:23,519
اگر باید داده های ما را روی mnist خود بارگیری کنید، ما
432
00:13:23,519 –> 00:13:25,600
433
00:13:25,600 –> 00:13:27,360
داده داریم برابر است با ما به این کلاس می
434
00:13:27,360 –> 00:13:28,959
گوییم mnist
435
00:13:28,959 –> 00:13:33,120
داده بارگذاری نقطه، پس بیایید منتظر این باشیم.
436
00:13:33,120 –> 00:13:35,839
و حالا چیزی که این به ما برمی گرداند یک قطار
437
00:13:35,839 –> 00:13:37,279
و تست درست است، بنابراین اگر بتوانم
438
00:13:37,279 –> 00:13:38,560
مستندات را در اینجا ببینم،
439
00:13:38,560 –> 00:13:40,480
بنابراین شما می توانید اینجا را ببینید که این به عنوان
440
00:13:40,480 –> 00:13:42,079
برچسب ها خوب است، بنابراین به ما
441
00:13:42,079 –> 00:13:44,240
x test white xtrain و حلقه سفید را می دهد،
442
00:13:44,240 –> 00:13:46,399
بنابراین اجازه دهید سریع این را کپی کنم
443
00:13:46,399 –> 00:13:49,839
و آن را در اینجا بچسبانید و حالا وقتی
444
00:13:49,839 –> 00:13:52,320
این را با shift enter اجرا کردم، خواهید دید
445
00:13:52,320 –> 00:13:52,959
که ما
446
00:13:52,959 –> 00:13:56,000
دوست داریم اگر x را در اینجا قرار دهم،
447
00:13:56,000 –> 00:13:57,440
یعنی شاید قرار باشد این را
448
00:13:57,440 –> 00:13:59,199
از اینجا حذف کنم
449
00:13:59,199 –> 00:14:00,639
و این را از حروف کوچک به
450
00:14:00,639 –> 00:14:04,000
بزرگ و درست فقط x
451
00:14:06,160 –> 00:14:08,399
all را تغییر دهم. درست است پس اجازه دهید من فقط
452
00:14:08,399 –> 00:14:11,040
پرانتزها را در اینجا برگردانم
453
00:14:11,360 –> 00:14:14,399
و این را اجرا کنم، بنابراین حالا بیایید ببینیم که
454
00:14:14,399 –> 00:14:15,680
اکستنشن ما چگونه به نظر می رسد
455
00:14:15,680 –> 00:14:19,040
شکل نقطه کرنش x بنابراین می توانید ببینید که
456
00:14:19,040 –> 00:14:20,480
ما 60 000 تصویر داریم
457
00:14:20,480 –> 00:14:22,880
آه که اندازه آنها 28 کاما 28 است حالا بیایید
458
00:14:22,880 –> 00:14:24,800
ببینیم چگونه این تصاویر باید شبیه
459
00:14:24,800 –> 00:14:26,639
به این باشند که برای دیدن تصویر کاری که من
460
00:14:26,639 –> 00:14:28,880
انجام خواهم داد این است که می توانیم از plt dot show درست استفاده کنیم،
461
00:14:28,880 –> 00:14:32,079
بنابراین plt dot من نشان می دهم و اکنون
462
00:14:32,079 –> 00:14:34,399
تنها کاری که باید انجام دهید این است که مقدار من را در اینجا
463
00:14:34,399 –> 00:14:36,320
منتقل کنید تا کرنش x باشد
464
00:14:36,320 –> 00:14:38,880
که ما به وضوح نیاز داریم مقدار صفر درست است،
465
00:14:38,880 –> 00:14:39,519
466
00:14:39,519 –> 00:14:44,560
بنابراین اجازه دهید من فقط نقطه plt را به عنوان y قرار دهم
467
00:14:44,560 –> 00:14:46,480
اکنون می توانید ببینید که ما یک عدد پنج داریم
468
00:14:46,480 –> 00:14:47,760
اکنون ممکن است تعجب کنید که
469
00:14:47,760 –> 00:14:49,279
داده های برچسب کجا هستند، بنابراین اجازه دهید
470
00:14:49,279 –> 00:14:50,800
برچسبی را که در باران سفید وجود دارد را نیز به شما بدهم،
471
00:14:50,800 –> 00:14:51,199
472
00:14:51,199 –> 00:14:54,480
بنابراین اگر عنوان را اینجا قرار دهم، بنابراین کاری که می توانم انجام دهم این
473
00:14:54,480 –> 00:14:55,120
است که
474
00:14:55,120 –> 00:14:58,720
y قطار صفر
475
00:14:58,720 –> 00:15:00,160
باشد. همانطور که می بینید این پنج است و اکنون
476
00:15:00,160 –> 00:15:02,000
به طور مشابه اگر مقدار دیگری
477
00:15:02,000 –> 00:15:02,720
بگذارم مثلاً
478
00:15:02,720 –> 00:15:05,360
300 مقدار تصادفی را می بینید که
479
00:15:05,360 –> 00:15:07,199
به من ah می دهد برچسب درستی دارد
480
00:15:07,199 –> 00:15:08,399
و اکنون اگر فکر می کنید این
481
00:15:08,399 –> 00:15:10,560
یک تصویر رنگی است اشتباه است رنگی نیست
482
00:15:10,560 –> 00:15:11,760
483
00:15:11,760 –> 00:15:13,120
دلیل اینکه چرا ما این را دریافت می کنیم این است
484
00:15:13,120 –> 00:15:15,040
که matplotlib در حال تلاش برای تبدیل
485
00:15:15,040 –> 00:15:16,399
این است، بنابراین اگر می خواهید از این امر جلوگیری کنید، کاری که
486
00:15:16,399 –> 00:15:17,920
می توانید انجام دهید این است که نقشه را ببینید،
487
00:15:17,920 –> 00:15:21,120
ما فقط می توانیم آن را به خاکستری صعود کنیم، بنابراین اکنون
488
00:15:21,120 –> 00:15:22,880
تصویر ما کاملاً در مقیاس خاکستری خواهد بود،
489
00:15:22,880 –> 00:15:24,800
بنابراین اکنون که ما می دانیم که
490
00:15:24,800 –> 00:15:27,279
داده های ما چگونه است، بیایید اکنون یک مدل ایجاد کنیم،
491
00:15:27,279 –> 00:15:29,680
بنابراین کاری که من می خواهم انجام دهم این است که من
492
00:15:29,680 –> 00:15:30,880
فقط یک نظر در اینجا
493
00:15:30,880 –> 00:15:33,920
ایجاد مدل می دهم،
494
00:15:33,920 –> 00:15:35,680
بنابراین برای ایجاد مدل اگر می دانید
495
00:15:35,680 –> 00:15:37,680
که یادگیری عمیق چگونه کار می کند، ما در اینجا نظر می
496
00:15:37,680 –> 00:15:39,360
دهم. از چیزی به نام چارچوب keras استفاده خواهد
497
00:15:39,360 –> 00:15:40,240
498
00:15:40,240 –> 00:15:42,240
شد روش کار این است
499
00:15:42,240 –> 00:15:43,839
که ما چندین لایه خواهیم داشت
500
00:15:43,839 –> 00:15:45,600
و هر یک از این لایه ها
501
00:15:45,600 –> 00:15:46,959
یک لایه کانولوشن
502
00:15:46,959 –> 00:15:49,360
را می شناسند تا ویژگی های اضافی را به خود اختصاص دهد اگر مجبور باشید
503
00:15:49,360 –> 00:15:50,720
ابعاد را کاهش دهید، سپس
504
00:15:50,720 –> 00:15:51,279
از
505
00:15:51,279 –> 00:15:53,600
فیلترها برای این کار استفاده خواهیم کرد، بنابراین اکنون ببینیم چگونه ما
506
00:15:53,600 –> 00:15:54,560
میتوانیم این کار را از
507
00:15:54,560 –> 00:15:58,560
لایههای keras dot
508
00:15:58,560 –> 00:16:02,079
وارد کنیم، لایه متراکم را به
509
00:16:02,079 –> 00:16:04,480
درستی وارد کنیم و سپس لایه پیچیدگی داریم،
510
00:16:04,480 –> 00:16:06,399
بنابراین این اساساً یک فیلتر است،
511
00:16:06,399 –> 00:16:10,160
بنابراین contour d کاملاً درست است
512
00:16:10,160 –> 00:16:13,839
و سپس میانگین Pool
513
00:16:14,800 –> 00:16:16,639
خوب است و نام واقعی این
514
00:16:16,639 –> 00:16:17,920
استخر متوسط 2d است و سپس
515
00:16:17,920 –> 00:16:19,839
ا باید آن را صاف کنیم تا
516
00:16:19,839 –> 00:16:21,120
لایه کاملاً صاف شود،
517
00:16:21,120 –> 00:16:23,040
بنابراین این همان چیزی است که ما داریم و
518
00:16:23,040 –> 00:16:24,959
جدای از آن، ما به چند چیز دیگر نیز نیاز داریم
519
00:16:24,959 –> 00:16:26,000
که
520
00:16:26,000 –> 00:16:29,279
مدل ترتیبی است، بنابراین از
521
00:16:29,279 –> 00:16:33,279
مدلهای keras dot حالت ترتیبی را وارد کنید بسیار
522
00:16:33,279 –> 00:16:35,920
خوب و اکنون کاری که میخواهم انجام دهم این است
523
00:16:35,920 –> 00:16:37,759
که ما. شروع به ایجاد یک مدل
524
00:16:37,759 –> 00:16:39,839
میکنم، بنابراین ابتدا نام متغیر را در اینجا قرار میدهم،
525
00:16:39,839 –> 00:16:41,360
526
00:16:41,360 –> 00:16:44,079
بنابراین مدل باید برابر با ترتیبی باشد،
527
00:16:44,079 –> 00:16:44,639
528
00:16:44,639 –> 00:16:45,839
در حال حاضر باید چند
529
00:16:45,839 –> 00:16:47,920
مؤلفه دیگر به این مدل
530
00:16:47,920 –> 00:16:48,720
531
00:16:48,720 –> 00:16:51,839
اضافه کنیم تا اکنون نقطه مدل را اضافه کنیم. پیچیدگی ما را صدا می زنیم
532
00:16:51,839 –> 00:16:53,519
2d خیلی
533
00:16:53,519 –> 00:16:55,600
خوب است و اکنون باید تعداد فیلترها را بدهیم
534
00:16:55,600 –> 00:16:57,440
، بنابراین از آنجایی که این یک تصویر کوچک است،
535
00:16:57,440 –> 00:16:59,199
کاری که من می خواهم انجام دهم این است که من فقط
536
00:16:59,199 –> 00:17:00,240
چند فیلتر را ارائه می دهم که
537
00:17:00,240 –> 00:17:02,800
4 است سپس اندازه هسته که معمولاً به
538
00:17:02,800 –> 00:17:04,799
اندازه یک فیلتر است.
539
00:17:04,799 –> 00:17:07,199
این اندازه کرنل ابتدا
540
00:17:07,199 –> 00:17:09,039
با اعداد فرد داده می شود
541
00:17:09,039 –> 00:17:11,119
و ما معمولاً از اندازه هسته مانند
542
00:17:11,119 –> 00:17:12,559
سه متقاطع سه یا
543
00:17:12,559 –> 00:17:14,559
پنج متقاطع پنج استفاده می کنیم کاملاً بستگی به این دارد
544
00:17:14,559 –> 00:17:15,760
که شما از آن برای چه استفاده می
545
00:17:15,760 –> 00:17:18,880
کنید بنابراین در اینجا من از 5 کراس 5 استفاده می کنم
546
00:17:18,880 –> 00:17:21,039
و همینطور است لایه اول درست ما خواهیم بود
547
00:17:21,039 –> 00:17:23,760
باید شکل ورودی را مشخص کنیم بنابراین شکل ورودی بنابراین
548
00:17:23,760 –> 00:17:26,400
شکل ورودی در
549
00:17:26,400 –> 00:17:29,120
اینجا 28 کاما 28 کاما 28 خواهد بود
550
00:17:29,120 –> 00:17:31,679
و یکی به این دلیل است که یک تصویر rgb نیست
551
00:17:31,679 –> 00:17:32,640
552
00:17:32,640 –> 00:17:34,320
و در نهایت باید یک
553
00:17:34,320 –> 00:17:36,480
تابع فعال سازی
554
00:17:36,480 –> 00:17:38,400
بدهیم. از تابع فعالسازی برای
555
00:17:38,400 –> 00:17:40,640
افزایش غیرخطی بودن استفاده کنید بسیار خوب
556
00:17:40,640 –> 00:17:42,000
و موردی که میخواهم در اینجا استفاده کنم
557
00:17:42,000 –> 00:17:44,320
این است که کاملاً دوباره بارگذاری شود، بنابراین
558
00:17:44,320 –> 00:17:46,640
جالب به نظر میرسد، بنابراین اجازه دهید من این را اجرا
559
00:17:46,640 –> 00:17:48,400
کنم، فکر میکنم یک اشتباه تایپی کوچک در اینجا انجام دادهام،
560
00:17:48,400 –> 00:17:50,559
پس خوب است. قرار است فقط آن را به e تغییر دهم
561
00:17:50,559 –> 00:17:52,960
562
00:17:54,240 –> 00:17:57,280
و دوباره یک اشتباه تایپی در اینجا وجود دارد، بنابراین اکنون کاری که می
563
00:17:57,280 –> 00:17:58,799
خواهم اینجا انجام دهم این است
564
00:17:58,799 –> 00:18:00,880
کمی کوچکنمایی کنید، ما چنین لایههای مشابهی ایجاد میکنیم،
565
00:18:00,880 –> 00:18:02,320
566
00:18:02,320 –> 00:18:04,559
بنابراین از آنجایی که این فقط یک کانولوشن است 2 بعدی
567
00:18:04,559 –> 00:18:06,080
پس از این، چیزی به نام
568
00:18:06,080 –> 00:18:06,480
569
00:18:06,480 –> 00:18:08,480
میانگین استخر خواهیم داشت که معمولاً برای
570
00:18:08,480 –> 00:18:09,600
کاهش
571
00:18:09,600 –> 00:18:12,799
ابعاد شما انجام میشود خوب بنابراین نقطه مدل اضافه کنید تا
572
00:18:12,799 –> 00:18:15,360
ما استخر متوسط را اضافه می کنیم و اکنون فق
573
00:18:15,360 –> 00:18:17,760
باید یک اندازه استخر ارائه ده
574
00:18:17,760 –> 00:18:20,960
م بنابراین فقط اندازه استخر را در اینجا قرار می دهیم و ای
575
00:18:20,960 –> 00:18:22,160
معمولاً سه
576
00:18:22,160 –> 00:18:24,160
ربدر سه به عنوان یا پنج متقاطع پنج است ام
577
00:18:24,160 –> 00:18:25,679
همانطور که یک تصویر کوچک است فقط دو
578
00:18:25,679 –> 00:18:26,720
ربدر می دهیم دو تا
579
00:18:26,720 –> 00:18:28,240
کاملاً خوب، پس این کار انجام شد، ما
580
00:18:28,240 –> 00:18:30,160
با یک لایه خاص تمام می کنیم، حالا بعد از این
581
00:18:30,160 –> 00:18:31,120
، دوباره
582
00:18:31,120 –> 00:18:33,200
یک لایه کانولوشن را پاس می کنیم، بنابراین من فقط
583
00:18:33,200 –> 00:18:34,240
این را در اینجا کپی می کنم
584
00:18:34,240 –> 00:18:36,160
و آن را پیست می کنم و فقط چند
585
00:18:36,160 –> 00:18:38,160
تغییر را به جای شکل ورودی انجام می دهم
586
00:18:38,160 –> 00:18:40,799
. فقط این را با هیچی جایگزین
587
00:18:40,799 –> 00:18:42,720
نمیکنیم و سپس اندازه هستهای که میتوانیم به
588
00:18:42,720 –> 00:18:44,320
جای پنج کراس پنج بدهیم، میتوانیم
589
00:18:44,320 –> 00:18:45,600
هفت کراس هفت
590
00:18:45,600 –> 00:18:47,120
یا هشت کراس هشت بدهیم کاملاً به شما بستگی دارد،
591
00:18:47,120 –> 00:18:48,880
بنابراین در اینجا من هفت کراس هفت را میدهم
592
00:18:48,880 –> 00:18:49,280
593
00:18:49,280 –> 00:18:51,200
و سپس این هنوز هم خواهد بود.
594
00:18:51,200 –> 00:18:52,320
به همین شکل باقی بمانند،
595
00:18:52,320 –> 00:18:53,919
بنابراین پس از این، کاری که میخواهیم انجام دهیم این است ما
596
00:18:53,919 –> 00:18:55,600
باید مدل خود را مسطح
597
00:18:55,600 –> 00:18:58,480
کنیم تا model dot add اکنون یک لایه مسطح اضافه می کنیم
598
00:18:58,480 –> 00:19:00,240
599
00:19:00,240 –> 00:19:01,520
و در نهایت برای انجام
600
00:19:01,520 –> 00:19:03,120
عملیات طبقه بندی باید
601
00:19:03,120 –> 00:19:03,600
602
00:19:03,600 –> 00:19:06,640
لایه متراکم را انجام دهیم تا مدل dot dense
603
00:19:06,640 –> 00:19:09,039
بنابراین اضافه شود و اکنون برای این
604
00:19:09,039 –> 00:19:10,960
اضافه می کنیم لایه متراکم
605
00:19:10,960 –> 00:19:13,679
کاملاً درست است، بنابراین در اینجا ما واحدهایی خواهیم داشت، به طوری
606
00:19:13,679 –> 00:19:15,919
که یک کار طبقه بندی را انجام می دهیم،
607
00:19:15,919 –> 00:19:17,679
بنابراین واحدهای اینجا نشان دهنده
608
00:19:17,679 –> 00:19:20,000
تعداد خروجی های ما هستند زیرا می دانیم که
609
00:19:20,000 –> 00:19:21,679
تعداد خروجی ها در اینجا از صفر
610
00:19:21,679 –> 00:19:22,240
تا نه
611
00:19:22,240 –> 00:19:24,000
خوب است زیرا این اعداد ما هستند. حق دارند،
612
00:19:24,000 –> 00:19:25,760
بنابراین ما به اینجا
613
00:19:25,760 –> 00:19:29,440
واحدها را به عنوان 10 می دهیم. بسیار خوب و سپس فعال سازی داریم،
614
00:19:29,440 –> 00:19:30,799
615
00:19:30,799 –> 00:19:32,160
بنابراین فعال سازی که می خواهیم
616
00:19:32,160 –> 00:19:34,559
از آن استفاده کنیم نرم افزار softmax است،
617
00:19:34,559 –> 00:19:37,840
بنابراین اجازه دهید اکنون این یا
618
00:19:37,840 –> 00:19:38,880
قبل از آن را کامپایل کنیم، اجازه دهید من
619
00:19:38,880 –> 00:19:40,880
این سلول را اجرا کنم و در نهایت ما را انجام دهیم.
620
00:19:40,880 –> 00:19:43,840
آن را کامپایل می کنم مدل نقطه کامپایل
621
00:19:43,840 –> 00:19:45,840
خوب است و اکنون در اینجا باید ضرر را بدهیم
622
00:19:45,840 –> 00:19:47,760
بنابراین در اینجا می گوییم ضرر این
623
00:19:47,760 –> 00:19:49,039
باید برابر باشد با
624
00:19:49,039 –> 00:19:50,640
چه نوع ضرری که ما دنبال آن هستیم
625
00:19:50,640 –> 00:19:53,280
می توانیم بگوییم آنتروپی متقاطع طبقه ای
626
00:19:53,280 –> 00:19:54,559
می توانیم از چیزی به نام پراکنده نیز استفاده کنیم.
627
00:19:54,559 –> 00:19:56,640
رده بندی متقاطع en
628
00:19:56,640 –> 00:19:58,480
اگر از آنتروپی متقاطع طبقهبندی گذشته استفاده
629
00:19:58,480 –> 00:20:00,160
کنم، مجبور نیستم خروجیهایم
630
00:20:00,160 –> 00:20:01,600
را به یک لایه داغ تبدیل کنم، بسیار
631
00:20:01,600 –> 00:20:04,159
خوب، بنابراین این کار را انجام میدهم تا
632
00:20:04,159 –> 00:20:05,600
633
00:20:05,600 –> 00:20:08,960
آنتروپی متقاطع مقولهای پراکنده
634
00:20:09,120 –> 00:20:11,039
باشد و بهینهسازی که
635
00:20:11,039 –> 00:20:13,520
در اینجا از آن استفاده خواهم کرد. آیا آدم
636
00:20:13,520 –> 00:20:15,120
میتوانید از هر چیزی که میخواهید
637
00:20:15,120 –> 00:20:17,600
استفاده کنید، میتوانید از آن استفاده کنید، مانند نزول گرادیان تصادفی،
638
00:20:17,600 –> 00:20:19,280
سپس انواع مختلفی دارید که میتوانید
639
00:20:19,280 –> 00:20:20,720
از بهترین آنها استفاده کنید
640
00:20:20,720 –> 00:20:22,960
که در حال حاضر دیگران هستند، adam است و سپس
641
00:20:22,960 –> 00:20:24,799
معیارهایی که میخواهیم این را نشان
642
00:20:24,799 –> 00:20:28,320
دهیم با دقت بسیار خوب است.
643
00:20:28,320 –> 00:20:31,039
بنابراین این کار انجام شد و در نهایت
644
00:20:31,039 –> 00:20:32,480
ما مدل خود را کامپایل می کنیم،
645
00:20:32,480 –> 00:20:35,679
بنابراین اجازه دهید من این را به درستی اجرا کنم،
646
00:20:35,679 –> 00:20:37,360
شاید یک اشتباه تایپی کوچک در اینجا انجام داده ایم،
647
00:20:37,360 –> 00:20:39,440
بنابراین اجازه دهید این را از
648
00:20:39,440 –> 00:20:40,400
دقت به
649
00:20:40,400 –> 00:20:42,880
acc به دقت تغییر دهم، اوه بله،
650
00:20:42,880 –> 00:20:44,080
بهینه ساز درست می شود، بنابراین
651
00:20:44,080 –> 00:20:46,799
بهینه ساز درست است بنابراین اکنون کاری که
652
00:20:46,799 –> 00:20:48,240
میخواهیم انجام دهیم این است که در نهایت میخواهیم
653
00:20:48,240 –> 00:20:50,480
خلاصه نقطه مدل را ببینیم، بنابراین خلاصه نقطهای
654
00:20:50,480 –> 00:20:51,520
655
00:20:51,520 –> 00:20:53,440
مدل، اساساً آنچه را که در اینجا گنجاندهایم به ما میدهد
656
00:20:53,440 –> 00:20:54,799
،
657
00:20:54,799 –> 00:20:56,720
بنابراین همانطور که میبینید تعداد
658
00:20:56,720 –> 00:20:59,280
کل لایهها به عنوان
659
00:20:59,280 –> 00:21:00,880
1446 تعداد para داریم. متر بسیار
660
00:21:00,880 –> 00:21:02,400
کوچک است وقتی با برنامه های یادگیری عمیق ما مقایسه کنید،
661
00:21:02,400 –> 00:21:04,080
662
00:21:04,080 –> 00:21:05,679
خوب است، بنابراین در نهایت ما می خواهیم
663
00:21:05,679 –> 00:21:07,679
مدل خود را آموزش دهیم، بنابراین برای آموزش مدل خود، مدل
664
00:21:07,679 –> 00:21:08,799
665
00:21:08,799 –> 00:21:12,640
نقطه مناسب داریم و اکنون باید
666
00:21:12,640 –> 00:21:14,480
فقط مقادیر خود را در اینجا پاس کنم، بنابراین تست x خواهد بود.
667
00:21:14,480 –> 00:21:15,520
668
00:21:15,520 –> 00:21:18,320
سپس ما تست سفید را انجام خواهیم داد، بنابراین
669
00:21:18,320 –> 00:21:20,240
باران سفید خواهد بود،
670
00:21:20,240 –> 00:21:22,799
سپس تعداد دورهها q1 است،
671
00:21:22,799 –> 00:21:24,320
زیرا اگر تعداد دورهها را بیشتر کنیم، به درستی بیش از
672
00:21:24,320 –> 00:21:25,440
حد مشت میشود، بنابراین
673
00:21:25,440 –> 00:21:27,840
تعداد دورهها این یک میشود و
674
00:21:27,840 –> 00:21:28,880
اندازه دسته
675
00:21:28,880 –> 00:21:32,799
فقط یک دوره را در یک بار نشان میدهد. این
676
00:21:32,799 –> 00:21:34,559
فقط تمام مقادیر را به درستی دریافت می کند و
677
00:21:34,559 –> 00:21:37,440
به من اجازه می دهد این را به درست