مرورگر شما از این ویدیو پشتیبانی نمی کند.
نکته:
ممکن هست محتوای این صفحه بروز نباشد ولی دانلود دوره آخرین آپدیت می باشد.
نمونه ویدیوها:
(صرفا برای مشاهده نمونه ویدیو، ممکن هست نیاز به شکن داشته باشید.)
بارگزاری مجدد
توضیحات دوره:
ساخت و آموزش ترنسفورمرهای NLP، مدلهای زبانی بزرگ و مکانیسمهای توجه (با استفاده از PyTorch). کاوش با ابزارهای تفسیرپذیری مکانیکی
معماری مدلهای زبانی بزرگ (LLM) از جمله GPT (OpenAI) و BERT
بلاکهای ترنسفورمر
الگوریتم توجه (Attention)
Pytorch
پیشآموزش (Pretraining) مدلهای زبانی بزرگ
هوش مصنوعی قابل توضیح (Explainable AI)
تفسیرپذیری مکانیکی
یادگیری ماشین
یادگیری عمیق
تحلیل مؤلفههای اصلی (PCA)
خوشهبندی ابعاد بالا
کاهش ابعاد
کاربردهای پیشرفته شباهت کسینوسی
پیش نیازها: انگیزه برای یادگیری مدلهای زبانی بزرگ و هوش مصنوعی
تجربه در کدنویسی مفید است اما ضروری نیست
آشنایی با یادگیری ماشین مفید است اما ضروری نیست
دانش پایه جبر خطی مفید است
یادگیری عمیق، از جمله نزول گرادیان، مفید است اما ضروری نیست
درک عمیق مدلهای زبانی بزرگ (LLMs): معماری، آموزش و مکانیسمها
توضیحات
مدلهای زبانی بزرگ (LLMs) مانند ChatGPT، GPT-4، GPT-5، Claude، Gemini و LLaMA در حال متحول کردن هوش مصنوعی، پردازش زبان طبیعی (NLP) و یادگیری ماشین هستند. اما بیشتر دورهها فقط نحوه استفاده از LLMها را آموزش میدهند. این دوره جامع بیش از ۹۰ ساعته به شما میآموزد که این مدلها واقعاً چگونه کار میکنند و چگونه با استفاده از روشهای یادگیری ماشین و تفسیرپذیری مکانیکی آنها را کالبدشکافی کنید.
این یک کاوش عمیق و جامع در مورد معماریهای ترنسفورمر ، مکانیسمهای خود-توجهی (Self-Attention) ، لایههای جاسازی (Embeddings) ، خط لولههای آموزشی و استراتژیهای استنتاج است که در هر مرحله با کدهای عملی پایتون و PyTorch همراه است.
چه هدف شما ساخت ترنسفورمر اختصاصی از صفر باشد، چه تنظیم دقیق (Fine-tune) مدلهای موجود یا درک ریاضیات و مهندسی پشت هوش مصنوعی مولد پیشرفته ، این دوره پایه و ابزارهای مورد نیاز شما را فراهم میکند.
آنچه خواهید آموخت
معماری کامل LLMها — توکنسازی، جاسازیها، رمزگذارها، رمزگشاکها، سرهای توجه، شبکههای پیشخور و نرمالسازی لایهای
ریاضیات مکانیسمهای توجه — توجه ضرب داخلی، توجه چند-سره، کدگذاری موقعیتی، ماسکینگ علّی، انتخاب احتمالی توکن
آموزش LLMها — بهینهسازی (Adam, AdamW)، توابع هزینه، انباشت گرادیان، پردازش دستهای، زمانبندهای نرخ یادگیری، منظمسازی (L1, L2)، برش گرادیان
تنظیم دقیق و مهندسی پرامپت برای وظایف پاییندستی NLP و تنظیم سیستم
معیارهای ارزیابی — پرپلکسیتی (Perplexity)، دقت و مجموعهدادههای بنچمارک مانند MAUVE، HellaSwag، SuperGLUE و روشهای ارزیابی سوگیری و عدالت
پیادهسازیهای عملی با PyTorch برای ترنسفورمرها، لایههای توجه و حلقههای آموزش مدل زبانی، کلاسهای سفارشی و توابع هزینه اختصاصی
تکنیکهای استنتاج — رمزگشایی حریصانه (Greedy)، جستجوی پرتویی (Beam Search)، نمونهبرداری top-k و مقیاسبندی دما
قوانین مقیاسپذیری و توازن بین اندازه مدل، دادههای آموزشی و عملکرد
محدودیتها و سوگیریها در LLMها — تفسیرپذیری، ملاحظات اخلاقی و هوش مصنوعی مسئولانه
ترنسفورمرهای فقط رمزگشا (Decoder-only)
جاسازیها (Embeddings) ، شامل جاسازیهای توکن و جاسازیهای موقعیتی
تکنیکهای نمونهبرداری — روشهای تولید متن جدید از جمله top-p، top-k، چندجملهای و حریصانه
چرا این دوره متفاوت است؟
بیش از ۹۳ ساعت ویدیو با کیفیت HD — ترکیبی از تئوری، کدنویسی و کاربردهای عملی
چالشهای کدنویسی در هر بخش — به همراه پاسخهای کامل و قابل دانلود
ساخت از اصول اولیه — شروع از پیادهسازیهای پایه پایتون/Numpy و پیشروی به سمت مدلهای کامل LLM در PyTorch
مناسب برای پژوهشگران، مهندسان و یادگیرندگان پیشرفته که میخواهند فراتر از استفاده از APIهای «جعبه سیاه» بروند
توضیحات شفاف بدون سادهسازی بیش از حد محتوا — متراکم اما قابل فهم
این دوره برای چه کسانی است؟
مهندسان یادگیری ماشین و دانشمندان داده
پژوهشگران هوش مصنوعی و متخصصان NLP
توسعهدهندگان نرمافزار علاقهمند به یادگیری عمیق و هوش مصنوعی مولد
دانشجویان تحصیلات تکمیلی یا خودآموزانی با مهارتهای متوسط پایتون و دانش پایه یادگیری ماشین
تکنولوژیها و ابزارهای مورد بررسی
Python و PyTorch برای یادگیری عمیق
NumPy و Matplotlib برای محاسبات عددی و بصریسازی
Google Colab برای دسترسی رایگان به GPU
Hugging Face Transformers برای کار با مدلهای پیشآموزشدیده
Tokenizers و ابزارهای پیشپردازش متن
پیادهسازی ترنسفورمرها در PyTorch، تنظیم دقیق LLMها، رمزگشایی با مکانیسمهای توجه و بررسی ساختارهای داخلی مدل
اگر در مورد مطالب سوالی داشتید چه کنید؟
این دوره دارای بخش پرسش و پاسخ (Q&A) است که میتوانید سوالات خود را در مورد مطالب دوره (ریاضیات، آمار، کدنویسی یا جنبههای یادگیری ماشین) مطرح کنید. من سعی میکنم تمام سوالات را ظرف یک روز پاسخ دهم. شما همچنین میتوانید تمام سوالات و پاسخهای دیگران را ببینید که یادگیری شما را بهبود میبخشد! و میتوانید با شرکت در بحثهای جاری به بخش پرسش و پاسخ کمک کنید.
در پایان این دوره، شما نهتنها خواهید دانست چگونه با LLMها کار کنید، بلکه درک خواهید کرد چرا آنها به این شکل عمل میکنند و قادر خواهید بود مدلهای زبانی مبتنی بر ترنسفورمر خود را طراحی، آموزش، ارزیابی و مستقر کنید.
همین حالا ثبتنام کنید و تسلط بر مدلهای زبانی بزرگ را از پایه آغاز کنید.
سرفصل ها و درس ها
مقدمه
Introductions
پیشنیازهای [مهم] و نحوه موفقیت در این دوره
[IMPORTANT] Prerequisites and how to succeed in this course
استفاده از پلتفرم یودمی
Using the Udemy platform
دریافت کد دوره و بررسی دقیق کلیات
Getting the course code, and the detailed overview
آیا به اشتراک Colab Pro نیاز دارید؟
Do you need a Colab Pro subscription?
درباره ویدیوهای «چالش کدنویسی»
About the "CodeChallenge" videos
بخش اول: توکنسازی و جاسازیها
—— ** —— Part 1: Tokenizations and embeddings —— ** ——
توکنسازی و جاسازیها
Tokenizations and embeddings
از کلمات به توکنها و اعداد
Words to tokens to numbers
چرا متن باید شمارهگذاری شود؟
Why text needs to be numbered
تبدیل متن به توکنهای شمارهگذاری شده
Parsing text to numbered tokens
چالش کدنویسی: ایجاد و بصریسازی توکنها (بخش ۱)
CodeChallenge: Create and visualize tokens (part 1)
چالش کدنویسی: ایجاد و بصریسازی توکنها (بخش ۲)
CodeChallenge: Create and visualize tokens (part 2)
آمادهسازی متن برای توکنسازی
Preparing text for tokenization
چالش کدنویسی: توکنسازی کتاب ماشین زمان
CodeChallenge: Tokenizing The Time Machine
توکنسازی کاراکترها در مقابل زیر-کلمات و کلمات
Tokenizing characters vs. subwords vs. words
الگوریتم کدگذاری جفت-بایت (BPE)
Byte-pair encoding algorithm
چالش کدنویسی: BPE برای رسیدن به اندازه واژگان مورد نظر
CodeChallenge: Byte-pair encoding to a desired vocab size
کاوش در توکنساز ChatGPT-4
Exploring ChatGPT4's tokenizer
چالش کدنویسی: شمارش توکن بر اساس طول زیر-کلمه (بخش ۱)
CodeChallenge: Token count by subword length (part 1)
چالش کدنویسی: شمارش توکن بر اساس طول زیر-کلمه (بخش ۲)
CodeChallenge: Token count by subword length (part 2)
چند حرف r در کلمه strawberry وجود دارد؟
How many "r"s in strawberry?
چالش کدنویسی: نام رپر الگوریتمیک خود را بسازید :)
CodeChallenge: Create your algorithmic rapper name :)
توکنسازی در BERT
Tokenization in BERT
چالش کدنویسی: شمارش کاراکترها در توکنهای BERT
CodeChallenge: Character counts in BERT tokens
ترجمه بین توکنسازهای مختلف
Translating between tokenizers
چالش کدنویسی: بیشتر درباره ترجمه توکنها
CodeChallenge: More on token translation
چالش کدنویسی: نسبتهای فشردهسازی توکنسازی
CodeChallenge: Tokenization compression ratios
توکنسازی در زبانهای مختلف
Tokenization in different languages
چالش کدنویسی: قانون زیپف در کاراکترها و توکنها
CodeChallenge: Zipf's law in characters and tokens
تغییرات کلمات در توکنساز Claude
Word variations in Claude tokenizer
فضاهای جاسازی
Embeddings spaces
مقایسه Word2Vec، GloVe، GPT و BERT
Word2Vec vs. GloVe vs. GPT vs. BERT... oh my!
کاوش در جاسازیهای پیشآموزشدیده GloVe
Exploring GloVe pretrained embeddings
چالش کدنویسی: جاسازیهای ویکیپدیا در مقابل توییتر (بخش ۱)
CodeChallenge: Wikipedia vs. Twitter embeddings (part 1)
چالش کدنویسی: جاسازیهای ویکیپدیا در مقابل توییتر (بخش ۲)
CodeChallenge: Wikipedia vs. Twitter embeddings (part 2)
کاوش در جاسازیهای GPT-2 و BERT
Exploring GPT2 and BERT embeddings
چالش کدنویسی: ریاضیات با توکنها و جاسازیها
CodeChallenge: Math with tokens and embeddings
شباهت کسینوسی (و رابطه آن با همبستگی)
Cosine similarity (and relation to correlation)
چالش کدنویسی: شباهتهای کسینوسی در GPT-2
CodeChallenge: GPT2 cosine similarities
چالش کدنویسی: معکوسسازی جاسازی (بردار به توکن)
CodeChallenge: Unembeddings (vectors to tokens)
جاسازیهای موقعیتی
Position embeddings
چالش کدنویسی: بررسی جاسازیهای موقعیتی
CodeChallenge: Exploring position embeddings
آموزش جاسازیها از صفر
Training embeddings from scratch
ساخت یک لودر داده برای آموزش مدل
Create a data loader to train a model
ساخت مدلی برای یادگیری جاسازیها
Build a model to learn the embeddings
تابع هزینه برای آموزش جاسازیها
Loss function to train the embeddings
آموزش و ارزیابی مدل
Train and evaluate the model
چالش کدنویسی: نحوه تغییر جاسازیها
CodeChallenge: How the embeddings change
چالش کدنویسی: جاسازیها چقدر پایدار هستند؟
CodeChallenge: How stable are embeddings?
بخش دوم: مدلهای زبانی بزرگ
—— ** —— Part 2: Large language models —— ** ——
مدلهای زبانی بزرگ
Large language models
ساخت یک مدل GPT
Build a GPT
وقتی میتوان دانلود کرد، چرا بسازیم؟
Why build when you can download?
مدل ۱: جاسازی (ورودی) و معکوسسازی (خروجی)
Model 1: Embedding (input) and unembedding (output)
درک nn.Embedding و nn.Linear
Understanding nn.Embedding and nn.Linear
چالش کدنویسی: GELU در مقابل ReLU
CodeChallenge: GELU vs. ReLU
سافتمکس (و دما): ریاضیات، Numpy و PyTorch
Softmax (and temperature): math, numpy, and pytorch
نمونهبرداری تصادفی کلمات با torch.multinomial
Randomly sampling words with torch.multinomial
سایر روشهای نمونهبرداری توکن: greedy، top-k و top-p
Other token sampling methods: greedy, top-k, and top-p
چالش کدنویسی: کاوشهای بیشتر در سافتمکس
CodeChallenge: More softmax explorations
نرمالسازی لایهای (LayerNorm): چیست، چرا، چه زمانی و چگونه
What, why, when, and how to layernorm
مدل ۲: جاسازی موقعیتی، LayerNorm، خروجی متصل و دما
Model 2: Position embedding, layernorm, tied output, temperature
علّیت زمانی از طریق جبر خطی (تئوری)
Temporal causality via linear algebra (theory)
میانگینگیری از گذشته در حالی که آینده نادیده گرفته شود (کد)
Averaging the past while ignoring the future (code)
الگوریتم «توجه» (تئوری)
The "attention" algorithm (theory)
چالش کدنویسی: پیادهسازی دستی توجه و در PyTorch
CodeChallenge: Code Attention manually and in Pytorch
مدل ۳: یک سر توجه (Attention Head)
Model 3: One attention head
بلاک ترنسفورمر (تئوری)
The Transformer block (theory)
بلاک ترنسفورمر (کد)
The Transformer block (code)
مدل ۴: چندین بلاک ترنسفورمر
Model 4: Multiple Transformer blocks
توجه چند-سره: تئوری و پیادهسازی
Multihead attention: theory and implementation
کار با GPU
Working on the GPU
مدل ۵: GPT-2 کامل روی GPU
Model 5: Complete GPT2 on the GPU
چالش کدنویسی: زمانسنجی مدل ۵ روی CPU و GPU
CodeChallenge: Time model5 on CPU and GPU
بررسی GPT-2 شرکت OpenAI
Inspecting OpenAI's GPT2
خلاصهسازی GPT با استفاده از معادلات
Summarizing GPT using equations
بصریسازی nano GPT
Visualizing nano-GPT
چالش کدنویسی: چند پارامتر وجود دارد؟ (بخش ۱)
CodeChallenge: How many parameters? (part 1)
چالش کدنویسی: چند پارامتر وجود دارد؟ (بخش ۲)
CodeChallenge: How many parameters? (part 2)
چالش کدنویسی: توزیع وزنهای آموزشدیده GPT-2
CodeChallenge: GPT2 trained weights distributions
چالش کدنویسی: آیا واقعاً به Q نیاز داریم؟
CodeChallenge: Do we really need Q?
پیشآموزش LLMها
Pretrain LLMs
«پیشآموزش» چیست و آیا ضروری است؟
What is "pretraining" and is it necessary?
معرفی huggingface.co
Introducing huggingface.co
بهینهساز AdamW
The AdamW optimizer
چالش کدنویسی: SGD در مقابل Adam و AdamW
CodeChallenge: SGD vs. Adam vs. AdamW
آموزش مدل ۱
Train model 1
چالش کدنویسی: افزودن مجموعه تست
CodeChallenge: Add a test set
چالش کدنویسی: آموزش مدل ۱ با جاسازیهای GPT-2
CodeChallenge: Train model 1 with GPT2's embeddings
چالش کدنویسی: آموزش مدل ۵ با تغییرات
CodeChallenge: Train model 5 with modifications
ساخت یک تابع هزینه سفارشی
Create a custom loss function
چالش کدنویسی: آموزش مدلی برای علاقه به «X»
CodeChallenge: Train a model to like "X"
چالش کدنویسی: مسائل مقیاسبندی عددی در مدلهای یادگیری عمیق
CodeChallenge: Numerical scaling issues in DL models
مقداردهی اولیه وزنها
Weight initializations
چالش کدنویسی: آموزش مدل ۵ با مقداردهی اولیه وزنها
CodeChallenge: Train model 5 with weight inits
Dropout در تئوری و در PyTorch
Dropout in theory and in Pytorch
آیا باید logitها یا log softmax(logits) را خروجی داد؟
Should you output logits or log-softmax(logits)?
مجموعهداده FineWeb
The FineWeb dataset
چالش کدنویسی: Dropout دقیق در مدل ۵ (بخش ۱)
CodeChallenge: Fine dropout in model 5 (part 1)
چالش کدنویسی: Dropout دقیق در مدل ۵ (بخش ۲)
CodeChallenge: Fine dropout in model 5 (part 2)
چالش کدنویسی: چه اتفاقی برای توکنهای استفاده نشده میافتد؟
CodeChallenge: What happens to unused tokens?
گزینههای بهینهسازی
Optimization options
تنظیم دقیق مدلهای پیشآموزشدیده
Fine-tune pretrained models
«تنظیم دقیق» (Fine-tuning) به چه معناست؟
What does "fine-tuning" mean?
تنظیم دقیق یک GPT-2 پیشآموزشدیده
Fine-tune a pretrained GPT2
چالش کدنویسی: نرخهای یادگیری گالیور
CodeChallenge: Gulliver's learning rates
درباره تولید متن از مدلهای پیشآموزشدیده
On generating text from pretrained models
چالش کدنویسی: به حداکثر رساندن فاکتور «X»
CodeChallenge: Maximize the "X" factor
آلیس در سرزمین عجایب و ادگار آلن پو (با GPT neo)
Alice in Wonderland and Edgar Allen Poe (with GPT-neo)
چالش کدنویسی: کمیسازی تنظیم دقیق آلیس/ادگار
CodeChallenge: Quantify the Alice/Edgar fine-tuning
چالش کدنویسی: گفتگویی بین آلیس و ادگار
CodeChallenge: A chat between Alice and Edgar
تنظیم دقیق جزئی با منجمد کردن وزنهای توجه
Partial fine-tuning by freezing attention weights
چالش کدنویسی: تنظیم دقیق و منجمد کردن هدفمند (بخش ۱)
CodeChallenge: Fine-tuning and targeted freezing (part 1)
چالش کدنویسی: تنظیم دقیق و منجمد کردن هدفمند (بخش ۲)
CodeChallenge: Fine-tuning and targeted freezing (part 2)
تنظیم دقیق با کارایی پارامتر (PEFT)
Parameter-efficient fine-tuning (PEFT)
CodeGen برای تکمیل کد
CodeGen for code completion
چالش کدنویسی: تنظیم دقیق codeGen برای حسابان
CodeChallenge: Fine-tune codeGen for calculus
تنظیم دقیق BERT برای طبقهبندی
Fine-tuning BERT for classification
چالش کدنویسی: تحلیل احساسات IMDB با استفاده از BERT
CodeChallenge: IMDB sentiment analysis using BERT
برش گرادیان و زمانبند نرخ یادگیری (بخش ۱)
Gradient clipping and learning rate scheduler (part 1)
برش گرادیان و زمانبند نرخ یادگیری (بخش ۲)
Gradient clipping and learning rate scheduler (part 2)
چالش کدنویسی: برش، منجمد کردن و زمانبندی BERT
CodeChallenge: Clip, freeze, and schedule BERT
ذخیره و بارگذاری مدلهای آموزشدیده
Saving and loading trained models
تصمیم BERT: آلیس یا ادگار؟
BERT decides: Alice or Edgar?
چالش کدنویسی: تکامل آلیس و ادگار (بخش ۱)
CodeChallenge: Evolution of Alice and Edgar (part 1)
چالش کدنویسی: تکامل آلیس و ادگار (بخش ۲)
CodeChallenge: Evolution of Alice and Edgar (part 2)
وقتی میتوان از AGI استفاده کرد، چرا تنظیم دقیق کنیم؟
Why fine-tune when you can use AGI?
تنظیم دستورالعمل (Instruction Tuning)
Instruction tuning
تنظیم دستورالعمل (Instruction Tuning) چیست؟
What is instruction tuning?
برخی مجموعهدادهها برای تنظیم دستورالعمل
Some datasets for instruction tuning
آموزش یک چتبات با ساختار سیستم-کاربر-دستیار
Training a chatbot with system-user-assistant
تنظیم دستورالعمل با GPT-2
Instruction tuning with GPT2
چالش کدنویسی: تنظیم دستورالعمل GPT-2 Large (بخش ۱)
CodeChallenge: Instruction tuning GPT2-large (part 1)
چالش کدنویسی: تنظیم دستورالعمل GPT-2 Large (بخش ۲)
CodeChallenge: Instruction tuning GPT2-large (part 2)
یادگیری تقویتشده از بازخورد انسانی (RLHF)
Reinforcement learning from human feedback (RLHF)
بخش سوم: ارزیابی LLMها
—— ** —— Part 3: Evaluating LLMs —— ** ——
ارزیابی LLMها
Evaluating LLMs
ارزیابیهای کمی
Quantitative evaluations
وعدهها و چالشهای ارزیابیهای کمی
Promises and challenges of quantitative evaluations
مسائل عددی در logitها و سافتمکس
Numerical issues in logits and softmax
پرپلکسیتی (Perplexity)
Perplexity
چالش کدنویسی: پرپلکسیتیهای گیجکننده
CodeChallenge: Perplexing perplexities
دقت پیشبینی کلمات ماسک شده
Masked word prediction accuracy
HellaSwag
HellaSwag
وارد کردن مدلهای بزرگ با استفاده از bitsandbytes
Import large models using bitsandbytes
چالش کدنویسی: ارزیابیهای HellaSwag در دو مدل (بخش ۱)
CodeChallenge: HellaSwag evals in two models (part 1)
چالش کدنویسی: ارزیابیهای HellaSwag در دو مدل (بخش ۲)
CodeChallenge: HellaSwag evals in two models (part 2)
واگرایی KL (Kullback Leibler)
KL (Kullback-Leibler) divergence
MAUVE
MAUVE
چالش کدنویسی: کاوشهای MAUVE بزرگ و کوچک
CodeChallenge: Large and small MAUVE explorations
SuperGLUE و سایر ترکیبات
SuperGLUE and other amalgamations
ارزیابی سوگیری و عدالت
Assessing bias and fairness
بنچمارکهای غیر فنی
Non-technical benchmarks
ارزیابیهای کیفی
Qualitative evaluations
ارزیابیهای جعبه سیاه
Black box evals
تیم قرمز (Red Teaming)
Red-teaming
دقت، انسجام و مرتبط بودن
Accuracy, coherence, and relevance
توزیع فعالسازهای حالت پنهان
Distributions of hidden-state activations
نقشههای حرارتی توکنها برای بازرسی کیفی
Heatmaps of tokens for qualitative inspection
چالش کدنویسی: بصریسازی پیشبینیهای تک توکنی
CodeChallenge: Visualize single-token predictions
بخش چهارم: ایمنی هوش مصنوعی و تفسیرپذیری مکانیکی
—— ** —— Part 4: AI safety and mechanistic interpretability —— ** ——
مروری بر ایمنی هوش مصنوعی و تفسیرپذیری مکانیکی
Overview of AI safety and mechanistic interpretability
ایمنی هوش مصنوعی
AI safety
ایمنی و همسویی (Alignment) هوش مصنوعی
AI safety and alignment
چرا هوش مصنوعی نمیتواند صرفاً ایمن و اخلاقی باشد؟
Why can't AI just be safe and moral?
یادگیری در متن (In-context) و یادگیری چند-نمونهای (Few-shot)
In-context and few-shot learning
مقیاسپذیری و ایمنی هوش مصنوعی
Scaling and AI safety
عملی: هک کردن یک هوش مصنوعی برای سرقت رمز عبور!
Hands-on: Hack an AI to steal a password!
چگونه در زمینه ایمنی هوش مصنوعی فعالیت کنیم
How to get involved in AI safety
تفسیرپذیری
Interpretability
«تفسیرپذیری مکانیکی» (Mech Interp) چیست؟
What is "mech interp" (mechanistic interpretability)?
تفسیرپذیری مکانیکی چه رابطهای با ایمنی هوش مصنوعی دارد؟
How does mech interp relate to AI safety?
مفاهیم و اصطلاحات در تفسیرپذیری مکانیکی
Concepts and terms in mech interp
رویکردهای تئوری و تجربی در پژوهش و آموزش
Theoretical and empirical approaches in research and teaching
انتقادات کلی به تفسیرپذیری مکانیکی
General criticisms of mechanistic interpretability
بخش پنجم: تفسیرپذیری مکانیکی مشاهدهای (غیر علّی)
—— ** —— Part 5: Observation (non-causal) mech interp —— ** ——
تفسیرپذیری مکانیکی مشاهدهای (غیر علّی)
Observation (non-causal) mechanistic interpretability
بررسی جاسازیهای توکن (بخش ۱)
Investigating token embeddings (part 1)
چالش کدنویسی: شباهت کسینوسی (پیشرفته) (بخش ۱)
CodeChallenge: Cosine similarity (advanced) (part 1)
چالش کدنویسی: شباهت کسینوسی (پیشرفته) (بخش ۲)
CodeChallenge: Cosine similarity (advanced) (part 2)
چالش کدنویسی: شباهت کسینوسی در توالیهای کلمات
CodeChallenge: Cosine similarity in word sequences
چالش کدنویسی: رنگآمیزی شباهت کسینوسی
CodeChallenge: Coloring cosine similarity
چالش کدنویسی: آیا جاسازیهای تصادفی قابل تفسیر هستند؟
CodeChallenge: Can random embeddings be interpreted?
پروجکشن T-SNE و خوشهبندی DBSCAN (تئوری)
T-SNE projection and DBSCAN clustering (theory)
پروجکشن T-SNE و خوشهبندی DBSCAN (پایتون)
T-SNE projection and DBSCAN clustering (Python)
چالش کدنویسی: خوشهبندی عبارات «x»
CodeChallenge: cluster the "x" terms
چالش کدنویسی: توکنسازی، جاسازی و خوشهبندی ایموجیهای شاد
CodeChallenge: Tokenize, embed, and cluster happy emojis
تحلیل شباهت بازنمایی (RSA)
RSA (representational similarity analysis)
چالش کدنویسی: مقایسه جاسازیها با RSA (بخش ۱)
CodeChallenge: Compare embeddings with RSA (part 1)
چالش کدنویسی: مقایسه جاسازیها با RSA (بخش ۲)
CodeChallenge: Compare embeddings with RSA (part 2)
چالش کدنویسی: Word2vec در مقابل GPT-2
CodeChallenge: Word2vec vs. GPT2
چالش کدنویسی: نمایش گرافی شباهتهای کسینوسی
CodeChallenge: Graph representation of cosine similarities
حساب مرتبه جاسازیها و آنالوژیها
Embeddings arithmetic and analogies
چالش کدنویسی: آنالوژیهای نرمکد شده در word2vec
CodeChallenge: soft-coded analogies in word2vec
ایجاد و تفسیر «محورهای معنایی» خطی
Creating and interpreting linear "semantic axes"
kNN برای جستجوی مترادفات در BERT
kNN for synonym-searching in BERT
چالش کدنویسی: رقابت kNN بین BERT و GPT
CodeChallenge: BERT v GPT kNN kompetition
پژوهش در مورد ترجمه فضاهای جاسازی
Research on translating embeddings spaces
طیف مقدار تکین زیرماتریسهای جاسازی
Singular value spectrum of embeddings submatrices
چالش کدنویسی: پروجکشنهای SVD از جاسازیهای مرتبط
CodeChallenge: SVD projections of related embeddings
بررسی نورونها و ابعاد
Investigating neurons and dimensions
بیشینهسازی فعالساز از طریق صعود گرادیان (تئوری)
Activation maximization via gradient ascent (theory)
بیشینهسازی فعالساز (کد)
Activation maximization (code)
بیشینهسازی فعالساز از طریق نمونهبرداری دادهها
Activation maximization via data sampling
چالش کدنویسی: بازتولیدپذیری بیشینهسازی فعالساز
CodeChallenge: Reproducibility of activation maximization
استخراج فعالسازها با استفاده از «hookها»
Extracting activations using "hooks"
رابطه بین hookها و output.hidden_states
Relation between hooks and output.hidden_states
شفافسازی خروجی نهایی hidden_states
Clarification of final hidden_states output
چالش کدنویسی: تنظیم گرامر در نورونهای MLP؟ (بخش ۱)
CodeChallenge: Grammar tuning in MLP neurons? (part 1)
چالش کدنویسی: تنظیم گرامر در نورونهای MLP؟ (بخش ۲)
CodeChallenge: Grammar tuning in MLP neurons? (part 2)
چالش کدنویسی: فعالساز تعدیلشده با متن در MLP
CodeChallenge: Context-modulated activation in MLP
چالش کدنویسی: هیستوگرام فعالساز بر اساس طول توکن (بخش ۱)
CodeChallenge: Activation histograms by token length (part 1)
چالش کدنویسی: هیستوگرام فعالساز بر اساس طول توکن (بخش ۲)
CodeChallenge: Activation histograms by token length (part 2)
چالش کدنویسی: هیستوگرام فعالساز بر اساس طول توکن (بخش ۳)
CodeChallenge: Activation histograms by token length (part 3)
برخورد با جاسازیهای کلمات چند-توکنی
Dealing with multitoken word embeddings
چالش کدنویسی: پروجکشنهای MLP تنظیمشده بر اساس دسته (بخش ۱)
CodeChallenge: Category-tuned MLP projections (part 1)
چالش کدنویسی: پروجکشنهای MLP تنظیمشده بر اساس دسته (بخش ۲)
CodeChallenge: Category-tuned MLP projections (part 2)
طبقهبندی از طریق رگرسیون لجستیک: تئوری و کد
Classification via logistic regression: theory and code
رگرسیون لجستیک در مقابل t-test: مفروضات و کاربردها
Logistic regression vs. t-test: assumptions and applications
تنظیم اسامی خاص در GPT-2 medium
Proper noun tuning in GPT2-medium
چالش کدنویسی: تنظیم نفی در نورونهای MLP (بخش ۱)
CodeChallenge: Negation tuning in MLP neurons (part 1)
چالش کدنویسی: تنظیم نفی در نورونهای MLP (بخش ۲)
CodeChallenge: Negation tuning in MLP neurons (part 2)
چالش کدنویسی: تنظیم نفی در نورونهای MLP (بخش ۳)
CodeChallenge: Negation tuning in MLP neurons (part 3)
چالش کدنویسی: تنظیم نفی در نورونهای QVK
CodeChallenge: Negation tuning in QVK neurons
بررسی لایهها
Investigating layers
شباهتهای مرتبط با توکن در داخل و بین ماتریسهای Q، K، V (بخش ۱)
Token-related similarities within and across Q, K, V matrices (part 1)
شباهتهای مرتبط با توکن در داخل و بین ماتریسهای Q، K، V (بخش ۲)
Token-related similarities within and across Q, K, V matrices (part 2)
چالش کدنویسی: شباهتهای مرتبط با توکن در لایههای مختلف
CodeChallenge: Token-related similarities across layers
گروهبندی و RSA در ماتریسهای Q و K
Grouping and RSA in Q and K matrices
چالش کدنویسی: پروفایل لایهای RSA و انتخاب دسته
CodeChallenge: Laminar profile of RSA and category selectivity
تحلیل «ابعاد مؤثر» با PCA
"Effective dimensionality" analysis with PCA
چالش کدنویسی: ابعاد در Pythia 2.3B
CodeChallenge: Dimensionalities in Pythia 2.3B
اطلاعات متقابل (Mutual Information): تئوری و کد
Mutual information: theory and code
اطلاعات متقابل جفتی در طول LLM
Pairwise mutual information through the LLM
اطلاعات متقابل در مقابل کوواریانس
Mutual information vs. covariance
چالش کدنویسی: توجه به قهوه: MI و فواصل توکن (بخش ۱)
CodeChallenge: Attention to coffee: MI and token distances (part 1)
چالش کدنویسی: توجه به قهوه: MI و فواصل توکن (بخش ۲)
CodeChallenge: Attention to coffee: MI and token distances (part 2)
چالش کدنویسی: خوشهها در علائم نگارشی داخلی در مقابل انتهایی (بخش ۱)
CodeChallenge: Clusters in internal vs. terminal punctuation (part 1)
چالش کدنویسی: خوشهها در علائم نگارشی داخلی در مقابل انتهایی (بخش ۲)
CodeChallenge: Clusters in internal vs. terminal punctuation (part 2)
لنز لوجیت (The Logit Lens)
The Logit Lens
چالش کدنویسی: لنز لوجیت در BERT (بخش ۱)
CodeChallenge: Logit Lens in BERT (part 1)
چالش کدنویسی: لنز لوجیت در BERT (بخش ۲)
CodeChallenge: Logit Lens in BERT (part 2)
بررسی جاسازیهای توکن (بخش ۲)
Investigating token embeddings (part 2)
محاسبه چرخشهای بردارهای جاسازی
Calculating rotations of embeddings vectors
چالش کدنویسی: تکامل لایهای تعدیلات زاویهای متوالی
CodeChallenge: Laminar evolution of sequential angular adjustments
طول مسیر و پیشبینی توکن لوجیت
Path length and logit token prediction
چالش کدنویسی: تجزیه طول مسیر جریان باقیمانده (Residual Stream) (بخش ۱)
CodeChallenge: Residual stream path length decomposition (part 1)
چالش کدنویسی: تجزیه طول مسیر جریان باقیمانده (Residual Stream) (بخش ۲)
CodeChallenge: Residual stream path length decomposition (part 2)
مسیرهای فضای حالت در فضای جاسازی
State-space trajectories through embedding space
اجزای سخن با کتابخانه SpaCy
Parts of speech with SpaCy library
چالش کدنویسی: آیا اسمها یا صفتها مسیرهای طولانیتری دارند؟ (بخش ۱)
CodeChallenge: Do nouns or adjectives have longer trajectories? (part 1)
چالش کدنویسی: آیا اسمها یا صفتها مسیرهای طولانیتری دارند؟ (بخش ۲)
CodeChallenge: Do nouns or adjectives have longer trajectories? (part 2)
شناسایی مدارها و اجزاء
Identifying circuits and components
«مدار» در یک مدل یادگیری عمیق چیست؟
What is a "circuit" in a DL model?
جداسازی و بررسی سرهای توجه
Isolating and investigating attention heads
چالش کدنویسی: پروفایل لایهای وزنهای سر توجه
CodeChallenge: Laminar profile of attention head weights
آیا مدارها در فضای کمبعد خوشهبندی شدهاند؟
Are circuits clustered in low-dimensional space?
کاوش پراکنده (Sparse Probing): تئوری و کد
Sparse probing: theory and code
چالشهای رگرسیون لجستیک پراکنده در مجموعهدادههای بزرگ
Challenges with sparse logistic regression in large datasets
متغیرهای «نهفته» در مقابل «آشکار»
"Latent" vs. "manifest" variables
اتوانکودرهای پراکنده (Sparse Autoencoders): تئوری و کد
Sparse autoencoders: theory and code
SAE در GPT-2 درباره Palinka مجارستانی یاد میگیرد
SAE in GPT2 learns about Hungarian Palinka
چالش کدنویسی: پروفایل لایهای پراکندگی اتوانکودر
CodeChallenge: Laminar profile of autoencoder sparsity
مؤلفههای نهفته غیر متعامد از طریق تجزیه مقدار ویژه (تئوری و دمو)
Non-orthogonal latent components via eigendecomposition (theory and demo)
تجزیه مقدار ویژه تعمیمیافته «او (مذکر)» را از «او (مؤنث)» در MLP جدا میکند
Generalized eigendecomposition separates "him" from "her" in MLP
چالش کدنویسی: GED برای جداسازی دستهها در لایههای مختلف (بخش ۱)
CodeChallenge: GED for category isolation across layers (part 1)
چالش کدنویسی: GED برای جداسازی دستهها در لایههای مختلف (بخش ۲)
CodeChallenge: GED for category isolation across layers (part 2)
بخش ششم: تفسیرپذیری مکانیکی مداخلهای (علّی)
—— ** —— Part 6: Intervention (causal) mech interp —— ** ——
تفسیرپذیری مکانیکی مداخلهای (علّی)
Intervention (causal) mech interp
نحوه تغییر فعالسازها
How to modify activations
مقدمهای بر تفسیرپذیری مکانیکی علّی
Introduction to causal mech interp
ویرایش فعالساز: پیادهسازیهای کد
Activation editing: Code implementations
چالش کدنویسی: جایگزینی توجه، MLP و حالتهای پنهان
CodeChallenge: replacing attention, MLP, and hidden states
ویرایش حالتهای پنهان
Editing hidden states
تأثیرات پاییندستی مقیاسبندی لایههای اولیه
Downstream impact of early layer scaling
چالش کدنویسی: مقیاسبندی حالت پنهان و از دست دادن توکن
CodeChallenge: Hidden-state scaling and token loss
چالش کدنویسی: پیشبینیهای نویزی و جابجاشده BERT
CodeChallenge: Noisy and shuffled BERT predictions
چالش کدنویسی: اندازهگیری و اصلاح سوگیری BERT
CodeChallenge: Measure and correct BERT's bias
وصله زدن فعالساز (Activation Patching) با شناسایی مفعول غیرمستقیم
Activation patching with indirect object identification
پرش از یک لایه
Skip a layer
تداخل در مکانیسم توجه
Interfering with attention
حذف سر (Head Ablation) و پیشبینی توکن
Head ablation and token prediction
چالش کدنویسی: پیشبینی توکن پس از حذف سرها (بخش ۱)
CodeChallenge: Token prediction after head ablations (part 1)
چالش کدنویسی: پیشبینی توکن پس از حذف سرها (بخش ۲)
CodeChallenge: Token prediction after head ablations (part 2)
تأثیر خاموش کردن سر بر شباهت کسینوسی
Impact of head-silencing on cosine similarity
چالش کدنویسی: آیا GPT-2 پیتزای آناناس را دوست دارد؟
CodeChallenge: Does GPT2 like pineapple pizza?
وصله زدن سر توجه در IOI
Attention head patching in IOI
چالش کدنویسی: وصله زدن سر و توکن در IOI
CodeChallenge: Head and token patching in IOI
تغییر در MLP
Modifying MLP
جایگزینی متوالی میانه نورونهای MLP
Successive median-replacement of MLP neurons
ضایعهسازی نورونهای MLP بر اساس آمار
Statistics-based lesioning MLP neurons
چالش کدنویسی: پروفایل لایهای ضایعات t در MLP
CodeChallenge: Laminar profile of MLP t-lesions
کاوش در حذف زیر-فضا
Explorations in subspace removal
بخش هفتم: آموزش پایتون
—— ** —— Part 7: Python tutorial —— ** ——
آموزش پایتون
Python tutorial
مقدمات پایتون: کولب و نوتبوکها
Python intro: Colab and notebooks
ایجاد، کار با و ذخیره نوتبوکهای کولب
Creating, working with, and saving Colab notebooks
مقدمات پایتون: انواع دادهها
Python intro: Data types
محاسبات ریاضی و کامنتها
Arithmetic and comments
متغیرها
Variables
لیستها
Lists
بولیها (Boolean)
Booleans
دیکشنریها
Dictionaries
مقدمات پایتون: ایندکسگذاری و برش (Slicing)
Python intro: Indexing and slicing
ایندکسگذاری
Indexing
برش (Slicing)
Slicing
مقدمات پایتون: توابع
Python intro: Functions
ورودیها و خروجیها
Inputs and outputs
کتابخانه numpy
The numpy library
دریافت راهنما برای توابع
Getting help on functions
ایجاد توابع
Creating functions
کپی (تکثیر) متغیرها
Copying (duplicating) variables
تولید اعداد تصادفی
Generating random numbers
مقدمات پایتون: کنترل جریان
Python intro: Flow control
حلقههای for
For loops
دستورات if-else
If-else statements
لیستهای جامع (حلقههای تک خطی)
List comprehension (single-line loops)
مقداردهی اولیه متغیرها
Initializing variables
شمارش تکرار شوندهها (Enumerate)
Enumerate iterables
ترکیب چندین تکرار شونده (Zip)
Zip multiple iterables
مقدمات پایتون: بصریسازی دادهها
Python intro: Data visualization
رسم نقاط و خطوط
Plotting dots and lines
هندسه زیر-نمودارها (Subplot)
Subplot geometry
زیباسازی نمودارها
Making graphs look nice
مقدمات پایتون: رشتهها و متنها
Python intro: Strings and texts
درونیابی رشتهها و f-strings
String interpolation and f-strings
وارد کردن متن از وب
Importing text from the web
پردازش متن
Processing text
مقدمات پایتون: PyTorch
Python intro: Pytorch
کار با کلاسها
Working with classes
ایجاد کلاسهای سفارشی
Creating custom classes
انواع داده، تنسورها و ابعاد
Datatypes, tensors, and dimensions
تغییر شکل تنسورها (Reshaping)
Reshaping tensors
اعداد تصادفی
Random numbers
بخش هشتم: مقدمات یادگیری عمیق
—— ** —— Part 8: Deep learning intro —— ** ——
مقدمات یادگیری عمیق
Deep learning intro
ریاضیات یادگیری عمیق
Math of deep learning
اصطلاحات و انواع داده در ریاضیات و کامپیوتر
Terms and datatypes in math and computers
ترانهاده بردار و ماتریس
Vector and matrix transpose
ترکیبهای وزنی خطی
Linear weighted combinations
ضرب داخلی (Dot Product)
The dot product
ضرب ماتریسی
Matrix multiplication
سافتمکس
Softmax
لگاریتمها
Logarithms
آنتروپی و آنتروپی متقاطع
Entropy and cross-entropy
Min/max و argmin/argmax
Min/max and argmin/argmax
میانگین و واریانس
Mean and variance
نمونهبرداری تصادفی و تغییرپذیری نمونهبرداری
Random sampling and sampling variability
آزمون t
The t-test
مشتقات: شهود و چندجملهایها
Derivatives: intuition and polynomials
یافتن مینیممها با مشتقات
Derivatives find minima
مشتقات: قواعد ضرب و زنجیری
Derivatives: product and chain rules
نحوه یادگیری مدلها: نزول گرادیان
How models learn: gradient descent
مروری بر نزول گرادیان
Overview of gradient descent
تاثیر مینیممهای محلی چیست؟
What about local minima?
نزول گرادیان در یک بُعد
Gradient descent in 1D
نزول گرادیان در دو بُعد
Gradient descent in 2D
چالش کدنویسی: نرخ یادگیری ثابت در مقابل پویا
CodeChallenge: fixed vs. dynamic learning rate
جوهره مدلسازی یادگیری عمیق
Essence of deep learning modeling
پرسپترون و معماری ANN
The perceptron and ANN architecture
دیدگاه هندسی به شبکههای عصبی مصنوعی (ANN)
A geometric view of ANNs
ریاضیات ANN بخش ۱ (انتشار رو به جلو)
ANN math part 1 (forward prop)
ریاضیات ANN بخش ۲ (خطاها، هزینه، Cost)
ANN math part 2 (errors, loss, cost)
ریاضیات ANN بخش ۳ (انتشار رو به عقب)
ANN math part 3 (backprop)
گذر رو به جلو در PyTorch
Forward pass in Pytorch
انتشار رو به عقب در PyTorch
Backprop in Pytorch
محتوای تکمیلی
Bonus content
مطالب تکمیلی
Bonus material
نمایش نظرات