رمزگذار بخشی از شبکهست که وظیفهی فشردهسازی دادههای ورودی رو به عهده داره. این بخش از شبکه تلاش میکنه تا ویژگیهای مهم و بنیادین دادهها رو درک کنه و اونها رو به یک بردار کوچکتر معروف به "کد" تبدیل کنه. کدگذارها به ما اجازه میدن که با دادههای کمتر، بیشتر ببینیم و درک کنیم.
رمزگذار معمولاً شامل چند لایهست که میتونه شامل لایههای کاملاً متصل (fully connected layers)، لایههای کانولوشنی (convolutional layers) یا حتی لایههای تکراری (recurrent layers) باشه.
هر لایه از نورونهایی تشکیل شده که وزنها و بایاسهای خاص خودشون رو دارن. این نورونها با گذروندن دادهها از توابع فعالساز خاص، به تدریج ویژگیهای مورد نیاز رو استخراج و کد میکنن.
در مدلهای پیشرفتهتر، رمزگذارها ممکنه از تکنیکهایی مثل رگولاریزاسیون (Regularization) برای جلوگیری از بیشبرازش استفاده کنن. علاوه بر این، میشه از خودرمزنگار متغیر (Variational Autoencoders) که مدلهای احتمالی هستن هم استفاده کرد تا یک توزیع احتمالی از دادهها رو در فضای کد مدلسازی کنن.
رمزگذارها کاربردهای زیادی از جمله کاهش بعد، حذف نویز از دادهها (denoising)، آموزش بدون نظارت و حتی تولید دادههای جدید دارن. این ابزارها به دلیل تواناییشون در درک و فشردهسازی دادهها، در از زمینههای پزشکی، تشخیص چهره و مالی استفاده دارن.
#Deep_Learning
#AutoEncoders
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👌5👍3❤2👨💻1
❓کوییز شماره ۱۱۶: در چه شرایطی استفاده از کدگذارهای خودرمزنگار با لایههای تکراری (RNN) توصیه میشه؟
Anonymous Quiz
20%
در شرایطی که دادهها تصادفی و بدون ترتیب زمانی هستن.
60%
وقتی دادههای ورودی دارای ترتیب زمانی وابسته مثل سریهای زمانی یا دنبالههای متنی هستن.
10%
برای دادههایی که نیاز به تحلیل تصویر دقیق دارن.
10%
زمانی که تنها یک لایه از دادهها بدون هیچ وابستگی زمانی یا فضایی استفاده میشه.
❤3🤔2😎2👍1
در این کد، یک کدگذار ساده در شبکههای خودرمزنگار با استفاده از کتابخانهی Keras و با هدف کاهش بعد دادههای تصویری پیادهسازی شده.
import numpy as np
from tensorflow.keras.layers import Input, Dense
from tensorflow.keras.models import Model
def build_autoencoder(input_dim, encoding_dim):
# تعریف ورودی
input_img = Input(shape=(input_dim,))
# لایهی کدگذار
encoded = Dense(encoding_dim, activation='relu')(input_img)
# لایهی کدگشا
decoded = Dense(input_dim, activation='sigmoid')(encoded)
# مدل خودرمزنگار کامل
autoencoder = Model(input_img, decoded)
# مدل کدگذار
encoder = Model(input_img, encoded)
# مدل کدگشا
# برای ساخت کدگشا به یک ورودی برای لایههای کدگشا نیاز داریم
encoded_input = Input(shape=(encoding_dim,))
decoder_layer = autoencoder.layers[-1]
decoder = Model(encoded_input, decoder_layer(encoded_input))
autoencoder.compile(optimizer='adam', loss='binary_crossentropy')
return autoencoder, encoder, decoder
# پارامترهای مدل
input_dim = 784 # مثلا برای تصاویر MNIST با ابعاد 28x28
encoding_dim = 32 # ابعاد فضای ویژگی که میخواهیم دادهها را به آن تبدیل کنیم
autoencoder, encoder, decoder = build_autoencoder(input_dim, encoding_dim)
autoencoder.summary()
encoder.summary()
decoder.summary()
#Deep_Learning
#AutoEncoders
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7👌3❤1👨💻1
فضای پنهان در مفهوم خودرمزنگار، به بخشی از شبکه اشاره داره که دادههای ورودی رو به نمایشی فشردهتر تبدیل میکنه. این فضا معمولاً بین رمزگذار و رمزگشا قرار میگیره و محتوای اطلاعاتی مفید و مرتبط برای بازسازی دادهها رو در خودش جا میده. فضای پنهان نقش مهمی در یادگیری ویژگیهای معنادار دادهها داره و به عنوان یک نقطه فشرده سازی دادهها عمل میکنه.
این فضا میتونه کاربردهای مختلفی مثل کاهش بعد دادهها، دستهبندی، تشخیص ناهنجاری و یادگیری بدون نظارت داشته باشه و به عنوان یک نقطه مهم برای فهم و تحلیل دادهها عمل میکنه. همچنین اجازه میده تا الگوهای پیچیده و ساختارهای زیربنایی در دادهها شناسایی شن.
#Deep_Learning
#AutoEncoders
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👌5👍3👨💻2
❓کوییز شماره ۱۱۷: کدوم یک از گزینههای زیر بهترین توضیح رو برای اهمیت تفسیرپذیری فضای پنهان در خودرمزنگارها ارائه میده؟
Anonymous Quiz
35%
تفسیرپذیری بالا به ما اجازه میده تا مدلهایی با دقت بیشتری طراحی کنیم.
10%
تفسیرپذیری فضای پنهان امکان مدلسازی توزیعهای پیچیدهتر دادهها رو فراهم میکنه.
45%
تفسیرپذیری این فضا اجازه میده ویژگیهای معنادار و مهم دادهها به طور مؤثرتری شناسایی و استخراج شن.
10%
تفسیرپذیری به بهبود سرعت آموزش شبکه کمک میکنه.
❤5😎3👍1🤔1
در نهایت، تعادل بین ظرفیت Latent Space و توانایی شبکه برای بازسازی دادهها، به دقت فرایند یادگیری و هدف نهایی مدل بستگی داره. انتخاب درست اندازه و ظرفیت این فضا به بهینهسازی عملکرد خودرمزنگار در کاربردهای مختلف کمک میکنه.
#Deep_Learning
#AutoEncoders
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤2👌1
رمزگشا بخشی از اتوانکودره که وظیفهی بازسازی دادههای ورودی رو از نمایش فشردهای که توسط رمزگذار ایجاد شده، به عهده داره. به طور ساده، اگه انکودر وظیفه فشردهسازی دادهها رو داره، دیکودر وظیفهی بازگرداندن اونها به حالت اصلی (یا نزدیک بهش) رو داره.
معماری دیکودر میتونه به شکلهای مختلفی باشه اما اغلب شامل لایههایی هست که عملکردی معکوس نسبت به لایههای انکودر دارن. این لایهها ممکنه شامل کانولوشن، لایههای کاملاً متصل و یا حتی لایههای نرمالسازی باشن.
عملکرد Decoder مستقیماً تحت تاثیر کیفیت نمایش ارائه شده توسط Encoder قرار داره. اگه نمایش فشرده دارای اطلاعات کافی و مرتبط با ویژگیهای دادههای ورودی باشه، رمزگشا میتونه بازسازی دقیقتری انجام بده. در نتیجه کیفیت آموزش Encoder روی عملکرد Decoder تاثیر مستقیم داره.
#Deep_Learning
#AutoEncoders
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍4👌3👨💻1
❓کوییز شماره ۱۱۸: کدوم یک از گزینههای زیر استراتژی صحیحی برای بهینهسازی Decoder در شبکههای اتوانکودر هست؟
Anonymous Quiz
11%
استفاده از تعداد زیادی لایهی کانولوشنی برای افزایش پیچیدگی مدل.
33%
کاهش تعداد پارامترها در Decoder برای جلوگیری از بیشبرازش.
50%
ادغام مکانیزم توجه به Decoder برای تمرکز بهتر روی نواحی کلیدی دادهها.
6%
افزایش سرعت یادگیری رمزگشا بدون توجه به انکودر.
❤3😎3👍2🤔1👨💻1
اتوانکدر از مفاهیم مهم حوزه یادگیری عمیقه که برای یادگیری ویژگیهای نهفته در دادهها و بازسازی اطلاعات با کاهش بعد به کار میره. این تکنولوژی بهخصوص در مواردی که نیاز به کاهش ابعاد دادهها با حفظ اطلاعات مهم وجود داره، کاربرد فراوانی داره.
#Deep_Learning
#AutoEncoders
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7👌3❤2👨💻1
یونت یک معماری شبکه عمیق برای تجزیه و تحلیل تصویره که اولین بار برای کاربردهای پزشکی، مثل تصویربرداری از بافتهای زیستی استفاده شد. این معماری توسط Olaf Ronneberger و همکارانش در سال 2015 ارائه شد و به سرعت به یکی از محبوبترین مدلها برای وظایف تقسیمبندی تصویر تبدیل شد.
معماری یونت شبیه به حرف "U" هست و به همین دلیل نام گذاریش به این صورته. این معماری از دو بخش اصلی تشکیل شده: کدگذار (Encoder) و کدگشا (Decoder).
یکی از ویژگیهای اصلی یونت، استفاده از اتصالات انتقالی بین لایههای متناظر کدگذار و کدگشاست. این اتصالات به اطلاعات موجود در کدگذار اجازه میدن تا مستقیماً به کدگشا منتقل شن، که باعث بهبود دقت بازسازی و کمک به حفظ جزئیات مکانی میشه.
رمزگشا در معماری یونت شروع به بازسازی تصویر از مجموعهای محدود از ویژگیهای پیچیده میکنه که توسط کدگذار فشرده شدن. در این فرآیند، هر مرحله شامل مراحل زیره:
این مراحل به طور متوالی تکرار میشن تا تصویر ورودی به طور کامل بازسازی شه. در نهایت، یک لایه کانولوشنی نهایی برای تولید خروجی نهایی که تقسیمبندی تصویره، استفاده میشه.
معماری یونت به دلیل توانایی در کار با تصاویری که نیاز به تحلیل دقیق و بازسازی جزئیات دارن، بسیار محبوبه و در بسیاری از زمینههای پژوهشی و کاربردی به کار رفته.
#Deep_Learning
#AutoEncoders
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤3👌3👨💻1
❓کوییز شماره ۱۱۹: کدوم یک از موارد زیر یک مزیت رقابتی U-Net نسبت به مدلهای دیگه مثل SegNet یا FCN در زمینه تقسیمبندی تصاویره؟
Anonymous Quiz
24%
استفاده از تعداد لایههای کانولوشنی بیشتر برای پردازش تصاویر
41%
کاهش نیاز به دادههای آموزشی بزرگ به دلیل اتصالات انتقالی موثر
18%
بهبود زمان آموزش به واسطه استفاده موثر از واحدهای پردازشی
18%
توانایی پردازش تصاویر با رزولوشن بالا بدون نیاز به تغییر اندازه
😎4👍3❤2🤔2
درک ساختار U-Net به درک مفهوم AutoEncodrs کمک میکنه و در این ویدیو به بهونه بررسی مقاله U-Net، با فرآیند down/up sampling که در ساختار encode/decoder ها استفاده میشه آشنا خواهیم شد.
#Deep_Learning
#AutoEncoders
#YouTube
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
مقاله شبکه عصبی یونت | U-Net 2015
شبکههای عصبی کانولوشنی و بازگشتی خیلی ساختار متفاوتی دارند و تقریبا ربطی به هم ندارن. از یه جا با هم یک چیزی رو مشترک وارد ساختارهاشون کردن اون هم مفهوم autoencoders هست. CNNs ها با U-net این و RNNs ها با Transformers از ساختار AutoEncoders بهره بردن.
درک…
درک…
👍6❤2🔥1👌1
یکی از متداولترین کاربردهای خودرمزنگارها، کاهش بعد دادههاست. در دنیای واقعی، دادهها معمولا دارای بعد بالا هستن و پردازششون میتونه هم از نظر محاسباتی و هم از نظر زمانی هزینهبر باشه. خودرمزنگارها میتونن این دادهها رو به فضاهای کوچکتر و مدیریتپذیرتر تبدیل کنن.
خودرمزنگارهای دنویزینگ (Denoising AutoEncoders) به یادگیری نمایش دادهها به نحوی که نویز موجود در دادههای ورودی حذف شه، میپردازن. این تکنیک بسیار مفید در پیشپردازش دادهها برای سایر الگوریتمهای یادگیری ماشینه.
خودرمزنگارهای واریانسی (Variational AutoEncoders) یک نوع خاص از خودرمزنگارها هستن که میتونن برای تولید دادههای جدید استفاده شن. این خودرمزنگارها یک فضای پیوسته و هموار از دادهها رو فراهم میکنن که میشه ازش برای تولید نمونههای جدید با ویژگیهای مشابه به دادههای آموزش دیده استفاده کرد.
خودرمزنگارها میتونن برای تشخیص دادههایی که از الگوی عادی خارج هستن (ناهنجاریها) استفاده شن. این کاربرد در صنایع مختلف مثل تشخیص تقلب در تراکنشهای بانکی یا شناسایی خطاها در سیستمهای مکانیکی اهمیت داره.
اخیراً، تکنیکهای پیشرفتهتری در زمینه خودرمزنگارها توسعه پیدا کردن. برای مثال، خودرمزنگارهای توزیع شده که میتونن به طور همزمان روی چند سرور یا دستگاه پردازش دادهها رو انجام بدن و برای دادههای بزرگمقیاس بسیار مفیدن.
#Deep_Learning
#AutoEncoders
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👌3👍2👨💻1
❓کوییز شماره ۱۲۰: کدوم یک از ویژگیهای زیر مربوط به استفاده از خودرمزنگارها در سیستمهای توصیهگر (Recommendation Systems) هست؟
Anonymous Quiz
24%
تولید توصیههای شخصیسازی شده با تحلیل پیوسته کاربران.
24%
تشخیص تقلب در ارزیابیهای کاربران.
29%
حذف نویز از دادههای کاربران برای تحلیل دقیقتر.
24%
کاهش بعد دادههای کاربر برای بهبود سرعت پردازش.
👍3😎3❤1🤔1👨💻1
معماری U-Net بهعنوان یکی از معماریهای برجسته در پردازش و بخشبندی تصاویر در علوم کامپیوتر شناخته شده و در حوزههایی که دادههای محدودی در دسترس هستن، تحولی بزرگی ایجاد کرده.
#Deep_Learning
#AutoEncoders
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥4❤2👏1
اتوانکدرهای متغیر (VAEs) امکان استخراج الگوها و معانی سادهتر از دادههای نویزدار رو فراهم میکنن، و رویکرد جدیدی در تفسیر اطلاعات ارائه میدن.
#Deep_Learning
#AutoEncoders
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤3👏1👌1
#Weekend
#Deep_Learning
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5👌3❤1👨💻1
#Deep_Learning
#Word_Embedding_Methods
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤2👨💻2👌1
تعبیه کلمه (Word Embedding)، روشی در پردازش زبان طبیعیه (NLP) که در اون کلمات، عبارات یا جملات به صورت نمایشهای عددی یا بردارهایی در فضاهای چندبُعدی تبدیل میشن. این بردارها میتونن ویژگیها و مفاهیم مختلف لغوی و معنایی رو بیان کنن.
تعبیه کلمات به ماشین اجازه میده تا درک بهتری از متن داشته باشه، به این صورت که کلمات با مفاهیم مشابه، نزدیک به هم و کلمات با مفاهیم متفاوت، دور از هم قرار میگیرن.
در این روش برای کلمات نمایشهایی با ابعاد بزرگ و مقادیر ۰ و ۱ ایجاد میشه که بهینه نیستن. تعبیه کلمه دستهای بردارهایی با ابعاد بسیار بالا و sparse (پراکنده) رسم میکنه و نهایتا برای کلمات بدون درکی از متن یا محاسبهای فقط یک عدد مشخص میشه.
از مدلهای معروف این روش میشه به Bag of Words و One-Hot Encoding اشاره کرد و مشکلاتی مثل هزینه محاسبات بالا و غیر کارآمد بودن داره. در این روش به عنوان خروجی یک بردار ساده داریم.
این روش بردار محوره اما برای کلمهای که چند معنی داره، نمیتونه چند بردار خروجی بده. در نتیجه به عنوان خروجی بردارهای ثابتی داریم که بر پایه فرمول هستن و درکی از متن ندارن. از معروفترین مدلهای تعبیه آماری میشه به tf/idf، LDA، LSA و مدلهای N-gram اشاره کرد.
در این نوع مدل نحوه تعبیه کلمات رو یادمیگیره و ما به صورت دستی یا آماری این کار رو انجام نمیدیم. یعنی توسط شبکههای عصبی سبک (Shallow NNs) در یک فرآیند تکراری یادگیری اتفاق میافته.
خروجی این روش وکتورهای ثابت بر پایه شبکه عصبیه، درکی از متن ندارن (context-free) و از مدلهای معروف این روش میشه به word2vec، GloVe و FastText اشاره کرد.
این روش، تکامل یافتهترین حالت ممکنه و بردار کلمات رو بر پایه متن یادمیگیره و از متن درک داره (context-aware). در Contextualized Embedding هر کلمه بر اساس متن یا جملهای که در اون ظاهر میشه، نمایش متفاوتی داره در نتیجه به عنوان خروجی بردارهای پویا داریم.
مدلهایی مثل BERT یا GPT از این روش استفاده میکنن. در این مدلها، معنا و کاربرد کلمات با تغییر زمینه تغییر میکنه، که در نتیجه به درک بهتر نقش و معنای کلمات در جملات مختلف کمک میشه.
#Deep_Learning
#Word_Embedding_Methods
@Data_ML | دیتاساینس و ماشین لرنینگ
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤2👌1👨💻1
❓کوییز شماره ۱۲۱: کدوم گزینه بهترین توصیف برای تفاوت اصلی بین تعبیههای آماری مثل LSA و تعبیههای چگال مثل Word2Vec هست؟
Anonymous Quiz
56%
تعبیههای آماری فقط بر پایه تکرار کلمات در متن هستن، اما تعبیههای چگال از NNs استفاده میکنن.
0%
تعبیههای چگال همیشه ابعاد کمتری نسبت به تعبیههای آماری دارن.
22%
تعبیههای آماری هیچ وقت نمیتونن معنی کلمات رو درک کنن.
22%
تعبیههای چگال فقط برای زبانهای با ساختار پیچیده استفاده میشن.
🤔5👍4😎2