MatlabTips
891 subscribers
462 photos
73 videos
54 files
304 links
آموزش MATLAB با "استفاده از ویدئو و متن" در سطوح مبتدی تا پیشرفته
پاسخ به سوالات تخصصی:
@roholazandie
Download Telegram
🔵راز JPEG🔵

خیلی برای ما پیش آمده است که وقتی عکسی در اینترنت میبینیم با پدیده بارگذاری (لود شدن) عکس مواجه می شویم. یعنی اول یک تصویر تار میبینیم و سپس جزییات بیشتری به آن اضافه می شود تا اینکه می توانیم آن را کامل ببینیم. اما چرا چنین است؟ دلیل این نحوه بارگذاری در فشرده سازی jpg نهفته است. در این روش از تبدیل DCT(Discrete Cosine Transform) استفاده می شود. به این ترتیب که دقیقا شبیه به تبدیل فوریه به جای نگه داشتن کل تصویر ضریب های یک تبدیل فرکانسی از آن نگه داشته می شود. این ضرایب برای فرکانس های کمتر (کلیات تصویر) تا فرکانس های بیشتر(جزییات بیشتر) وجود دارند. ضرایب برای فرکانس های کمتر حاوی اطلاعات بیشتری هستند و حتی فرستادن بخشی از کل طیف فرکانسی کافی است تا شما تصویر را بدون تقریبا هیچ خدشه ای ببینید. زمانی که یک تصویر در اینترنت لود می شود. به جای فرستادن کل تصویر مرورگر شما ابتدا ضرایبِ فرکانس های پایین تر را گرفته و سعی میکند با استفاده از آن ها تصویر را نشان دهد با رسیدن ضرایبِ فرکانس های بالاتر مرورگر جزییات بیشتری به تصویر اضافه می کند تا بتواند آن را به صورت کامل تر بازیابی کند. در تصویر زیر از 900 ضریب تنها 435 تای اول آن را نشان داده ایم. می بینید حتی با 60 ضریب هم تصویر تقریبا کامل است. کد متلب مربوط به آن را می توانید دانلود کنید و خودتان هم تست کنید.

منبع: https://www.mathworks.com/examples/image/mw/images-ex44409888-image-compression-with-the-discrete-cosine-transform
dct_compression.m
926 B
زوم هایی که گاهی در فیلم های اکشن میبینیم چقدر به واقعیت نزدیک هستند؟ آیا دیدن پلاک یک ماشین از چند کیلومتر قابل انجام است؟ می توانید خودتان چک کنید. دوربین های ۲۵ میلیارد پیکسلی زیر تصویر هایی منحصر بفرد با زوم هایی باور نکردنی در اختیار می گذارند

https://www.bigpixel.cn/
🔴آیا غلبه ماشین ها نزدیک است؟🔴

بعد از موفقیت شگفت انگیز مدل زبانی BERT توسط گوگل، چند روز پیش شرکت openai از مدل زبانی جدید خود به نام GPT2 پرده برداری کرد و سورس کد آن را هم بر روی github قرار داد. بنابر ادعای این شرکت این بهترین مدل زبانی ای است که تا کنون ساخته شده است. این مدل به طرز شگفت آوری خوب کار میکند به طوری که قادر است با گرفتن تنها یک جمله (یا پاراگراف) از شما آن را ادامه دهد و تا چندین پاراگراف به صورت بسیار منظم، دقیق و معنا دار در مورد آن داستان سرایی کند!! نمونه های آن را می توانید در لینکی که می گذارم ببینید. کیفیت خروجی های تولید شده آنقدر زیاد است که تشخیص اینکه آن را ماشین تولید کرده است تقریبا غیر ممکن است.

اما قسمت عجیب تر ماجرا چیز دیگری است openai برای اولین بار برخلاف رسم معمول که مدل های آموزش داده شده را در اختیار برنامه نویسان قرار می دهند تا در برنامه های خود استفاده کنند از انجام اینکار خودداری کرده است!! نویسندگان این مقاله نوشته اند کیفیت خروجی ها آنقدر بالاست که می تواند توسط افراد یا گروه هایی در راستای اهداف "مخرب" استفاده شود!!! آنها در وبلاگ خود چند نمونه از کارهای مخربی که می توان با این مدل کرد را لیست کرده اند:

تولید اخبار جعلی
دزدیدن هویت افراد به صورت آنلاین!(چت کردن با دیگران به جای ایشان توسط ماشین!)
تولید اسپم هایی که سرویس های معمول قادر به تشخیص آنها نیستند!
تولید محتواهای مخرب توسط افراد بد اندیش بر روی پلتفرمهایی مثل توییتر(توسط بات ها)

این لیست بیشتر شبیه به داستان های علمی-تخیلی از آینده است، اما ظاهرا واقعیت دارند! نویسندگان این مدل را بر روی ۴۰ گیگابایت متن اینترنتی آموزش داده اند اما مدل اصلی را در دسترس قرار نداده اند به جای آن تنها یک مدل کوچک و کدها را در اختیار برنامه نویسان قرار داده اند. هر کسی از جمله نویسندگان این مقاله می دانند دیر یا زود یک نفر با داشتن کدها می تواند همان مدل را آموزش دهد اما ظاهرا openai نخواسته است آن شرکت پلیدی باشد که این مشکلات را شروع میکند و برای همیشه بدنام باقی بماند. تقریبا یک سال پیش تولید تصاویر و حتی ویدیوهای فیک(لب خوانی معروف اوباما) ممکن شد اما تولید متن های فیک همراه با آن ها، آینده چندان زیبایی را برای ما به تصویر نمیکشد. برخی از بنیانگذاران openai یک مقاله بر روی arxiv قرار داده اند و از مسئولیت اخلاقی که بر دوش متخصصان هوش مصنوعی است و راهکارهای مقابله با استفاده نادرست از این تکنولوژی ها سخن گفته اند. باید نتایج این پیشرفت های عجیب و هوشمند را در چند سال آینده ببینیم

مدل زبانی openai:
https://blog.openai.com/better-language-models/

راهکارهای مقابله با استفاده نادرست از هوش مصنوعی جدید:
https://arxiv.org/abs/1802.07228
این شخص وجود خارجی ندارد!

این وبسایت با استفاده از تکنیک variational autoencoder که توسط nvidia برای تصاویر چهره با کیفیت بالا ارائه شد به صورت نامتناهی تصاویر چهره جعلی تولید میکند!! کافی است هر بار سایت را رفرش کنید تا یک چهره ی جعلی جدید تولید شود!

https://thispersondoesnotexist.com/
این یکی از نمونه هایی است که الگوریتم gpt-2 به صورت جعلی تولید کرده است. در قسمت بالا یک متن در مورد وجود تک شاخ هایی که قادر به انگلیسی صحبت کردن هستند، توسط انسان نوشته شده است و پایین ماشین به صورت اتوماتیک آن را ادامه داده است. چند نکته شگفت انگیز در متن تولید شده توسط ماشین وجود دارد. اول اینکه این متن تا حد بسیار زیادی منسجم است و دوم اینکه مانند یک متن علمی و خبری با شواهد پر شده است و در نهایت اینکه قسمت های مختلف متن در یک زنجیره تقریبا منطقی به هم متصل می شوند!!
در نگاه اول تصور کردم که این یک شوخی است اما با اجرا کردن کد متوجه شدم که مدل جدید زبانی واقعا این کار را می کند. این تقریبا شبیه بیرون آمدن غول از چراغ جادو است!
خودتان امتحان کنید:

https://colab.research.google.com/github/ilopezfr/gpt-2/blob/master/gpt-2-playground_.ipynb#scrollTo=tI-HVDbQS9dF
🔵ویرایش هوشمند تصویر چهره🔵

تغییر در چهره افراد تنها با اضافه کردن چند خط ساده نقاشی شده.
بزودی شاهد نسل جدیدی از نرم افزار تغییر عکس چهره می شویم که تقریبا به هیچ مهارت خاصی برای یادگیری نیاز ندارند. در حال حاضر شرکت ادوبی سازنده فوتوشاپ از فناوری های بالغ در حوزه هوش مصنوعی در نسخه های جدید خود استفاده میکند.

مقاله:
https://arxiv.org/abs/1902.06838

کد:

https://github.com/JoYoungjoo/SC-FEGAN

(مقاله در ۱۸ فوریه ۲۰۱۹ بر روی arxiv آپلود شده است)
This media is not supported in your browser
VIEW IN TELEGRAM
تغییر هوشمند در تصاویر چهره!(مقاله و کد بالا)
محققان دانشگاه کمبریج نرم افزاری توسعه داده اند که تنها بر اساس لایک های شما بر روی فیسبوک می تواند شخصیت شما را در 5 پارامتر اصلی شخصیت پیش بینی کند. با استفاده از تنها 10 لایک نرم افزار بهتر از همکار شما، با 70 لایک بهتر از دوست(یا هم اتاقی) با 150 لایک بهتر از افراد خانواده و با 300 لایک بهتر از همسر شما شخصیت شما را پیش بینی کند.

پ ن
حالا هی بگید مگه من چی دارم روی اینترنت و هر نرم افزاری (حتی زمانی که می دونید جاسوسی میکنند) نصب کنید!

https://www.telegraph.co.uk/news/science/science-news/11340166/Facebook-knows-you-better-than-your-members-of-your-own-family.html
هر منحنی بسته ای که بتوانید بکشید از چهار گوشه یک مربع عبور میکند!
حدسی که در ۱۹۱۱ توسط otto toeplitz مطرح شد و تاکنون نه اثبات شده و نه مثال نقضی برای آن پیدا شده است!

https://en.m.wikipedia.org/wiki/Inscribed_square_problem?wprov=sfla1
1_Dk3GumlgjMnBbYhyE8jYhQ.gif
22.5 MB
آموزش شبکه های عصبی عمیق با یک Visualization بسیار قوی از نحوه کار کردن Stochastic Gradient Descent . قدم به قدم از پایه در سه قسمت در پایتون (به انگلیسی)

https://towardsdatascience.com/the-keys-of-deep-learning-in-100-lines-of-code-907398c76504
یکی دیگر از کاربرد های #stylegan تبدیل کردن تابلو های نقاشی به افراد واقعی، در این مورد مونالیزا به انسان تبدیل شده است!!

سورس کد:
https://github.com/NVlabs/stylegan
یک کتاب آنلاین بسیار عالی برای یادگیری شبکه های عصبی و یادگیری عمیق. همراه با کد، قدم به قدم از صفر (برگرفته از کورس یادگیری عمیق برکلی)
نویسندگان کتاب در شرکت آمازون محقق هوش مصنوعی هستند.

https://d2l.ai/
این وبسایت یک تصویر چهره جعلی تولید شده توسط شبکه عصبی و یک تصویر چهره واقعی را در کنار هم میگذارد و از شما میخواهد تشخیص دهید که کدام واقعی ست و کدام جعلی.

https://www.whichfaceisreal.com/index.php
🔵آموزش کار کردن با تصاویر، موزیک و ویدیو در متلب🔵

کافی است به لینک زیر بروید و دکمه سبز را بزنید تا تمام کد ها دانلود شود. این آموزش برای کسانی که تازه متلب را شروع کرده اند ساخته شده است

https://github.com/roholazandie/matlab_multimedia_tutorial
🔵اطلس فعال سازی(Activation Atlas)🔵

شبکه های عصبی عمیق(Deep learning) بسیار موفق بوده است اما همیشه به این متهم می شده که بیشتر شبیه به یک جعبه سیاه است و نمی تواند توضیح دهد چرا یک ورودی مشخص به خروجی مورد انتظارش منجر می شود. این رویه در چند سال اخیر در حال تغییر است. اطلس فعال سازی یک تلاش بسیار جالب برای نمایش این است که در درون این شبکه ها چه می گذرد.
در مرحله اول نیاز است که آنچه در لایه های درونی شبکه است را خوب بشناسیم. مقادیری که بر روی توابع فعال سازی لایه های داخلی است شبیه مشتی عدد بی معناست اما بالاخره افرادی توانستند راهی برای نمایش آن بخش ها بیابند. برای یک تصویر ورودی به شبکه عصبی این مقادیر می توانند ویژگی های مشخصی از تصویر مانند لبه ها در لایه های پایین تر تا اشیا، مثلا یک چشم یا چرخ در لایه های بالاتر باشند.(از چپ به راست لایه ها عمیق تر می شوند و ویژگی های سطح بالاتری عیان می شود)