English· Español· Deutsch· Nederlands· Français· 日本語· ქართული· 繁體中文· 简体中文· Português· Русский· العربية· हिन्दी· Italiano· 한국어· Polski· Svenska· Türkçe· Українська· Tiếng Việt· Bahasa Indonesia

un

სტუმარი
1 / ?
უკან გაკვეთილებზე

სემანტიკური მანძილი როგორც ევკლიდური მანძილი

მაღალგანზომილებიანი ვექტორული სივრცე

ANDREA-120M-ის 8449-ტოკენიანი ლექსიკონის ყველა ტოკენი ერთ წერტილზე მაპირდება R^768-ში. ტოკენის ჩაშენების მატრიცას აქვს ფორმა 8449 x 768: 8449 მწკრივი, თითო ლექსიკონის ტოკენზე; 768 სვეტი, თითო ჩაშენების განზომილებაზე.


ANDREA-ს გეომეტრიის პანელები


სამი თვისება, რომლებიც ამას ვექტორულ სივრცედ აქცევს

1. შეკრება. v_a + v_b მოხვდება R^768-ში. ორი ემბედინგის ჯამი ვალიდური ვექტორია.

2. სკალარული გამრავლება. alpha * v მოხვდება R^768-ში ნებისმიერი რეალური alpha-სთვის. გაჭიმვა ან შეკუმშვა იმავე მიმართულებით.

3. ხაზოვნება. alpha v_a + beta v_b მოხვდება R^768-ში. ხაზოვანი კომბინაციები რჩება სივრცის შიგნით.


ეს თვისებები გვაძლევს გეომეტრიულ ინსტრუმენტებს: მანძილი, კუთხე, პროექცია, ბაზისი, ორთოგონალობა.


მანძილი როგორც სემანტიკური მსგავსება

ორი ემბედინგის კოსინუსული მსგავსება ზომავს კუთხეს მათ შორის: cos(theta) = (v_a . v_b) / (||v_a|| * ||v_b||). დიაპაზონი: -1 (საპირისპირო) -დან +1 (პარალელური) -მდე.


ტრენინგის შემდეგ ემპირიული ნიმუში: მსგავსი კონტექსტის მქონე ტოკენები წარმოქმნიან ემბედინგებს მაღალი კოსინუსული მსგავსებით. ANDREA-120M ათავსებს parakeet და monkey ახლოს (ორივე ბიოლოგიური, ორივე სახეობა, ორივე არსებული ან გადაშენებული კატეგორია). იგი ათავსებს Fourier და transform ახლოს (სიგნალის დამუშავების კონტექსტი). იგი ათავსებს parakeet და Fourier შორს (კროს-დომენის ორთოგონალობა).


რატომ R^768 და არა R^384

ANDREA-12M იყენებდა d_model = 384. ANDREA-120M გააორმაგა 768-მდე. გაორმაგება მნიშვნელოვანია: 384-განზომილებიან სივრცეს აქვს ნაკლები „კუთხეები“ ხელმისაწვდომი, და კროს-დომენის დეზამბიგუაცია ზარალდება. ტევადობის გაორმაგება აძლევს მოდელს სივრცეს, რათა გადაჭრას bank (მდინარე) და bank (ფინანსური) სხვადასხვა აუზებად ემბედინგის სივრცეში, ერთის მეორეში ჩაძირვის გარეშე.


ჩაშენებების განახლება როგორც ვექტორული ტრანსლაცია

თითოეული გრადიენტული ნაბიჯი v_token-ს ამატებს delta_v-ს. გეომეტრიულად: მცირე ტრანსლაციები R^768-ში თითოეული ტოკენის პოზიციას უბიძგებს იმ მეზობლობებისკენ, რომლებიც ამცირებენ დანაკარგს. 200K ნაბიჯის განმავლობაში ყველა ტოკენი მიგრირებს თავისი შემთხვევითი ინიციალიზაციიდან სწავლებულ მდებარეობამდე.

მანძილის გამოთვლა

სამი სწავლებული ჩაშენება (გამარტივებული R^3-მდე არითმეტიკისთვის):


- v(parakeet) = (1.0, 0.5, 0.0)

- v(monkey) = (1.2, 0.3, 0.1)

- v(Fourier) = (0.0, 0.0, 1.5)

(a) გამოთვალეთ ევკლიდური მანძილი ||v(parakeet) - v(monkey)||. (b) გამოთვალეთ ||v(parakeet) - v(Fourier)||. (c) მიუთითეთ რომელი ორი ტოკენი ქმნის კლასტერს და მიუთითეთ გეომეტრიული მიზეზი, მიუთითეთ რეალური რიცხვები.

პროექცია Query ქვესივრცეზე

რას ანგარიშობს ყურადღება

ტოკენისთვის პოზიციაზე t, ყურადღება ანგარიშობს:


softmax(Q K^T / sqrt(d_k)) V


სადაც Q არის მოთხოვნა (ამ ტოკენის კითხვა), K არის გასაღებები (ყველა წინა ტოკენის იდენტიფიკატორი), V არის მნიშვნელობები (ყველა წინა ტოკენის შინაარსი). გამომავალი აერთიანებს V-ს, შეწონილს იმის მიხედვით, თუ რამდენად უკავშირდება მოთხოვნა თითოეულ გასაღებს.


გეომეტრიული ინტერპრეტაცია

წარმოიდგინეთ K როგორც ვექტორების სია R^d_k-ში. თითოეული მწკრივი არის ერთი წინა ტოკენის გასაღები. Q არის ერთი ვექტორი R^d_k-ში: ამ ტოკენის კითხვა.


Q K^T პროექტირებს ყველა key-ს Q-ზე. წერტილოვანი ნამრავლი q . k_i ზომავს, რამდენად მდებარეობს k_i q-ს მიმართულებით. გრძელი პროექცია = key ძლიერად შესაბამისია query-სთვის. მოკლე პროექცია = key ძლივს შესაბამისია.


softmax ნორმალიზებს პროექციებს წონებად, რომლებიც ჯამდება 1-ზე. V-ის წონიანი ჯამი არის ერთი ვექტორი: წარსული შინაარსის ნაზავი, შეწონილი მიმდინარე query-სთან შესაბამისობით.


Multi-Head Attention როგორც Multi-Subspace Projection

ANDREA-120M იყენებს 12 attention head-ს. d_model = 768; d_k = 768 / 12 = 64. თითოეული head პროექტირდება R^768-ის სხვადასხვა 64-განზომილებიან ქვესივრცეში. თორმეტი head იძლევა თორმეტ დამოუკიდებელ ხედვას იმავე თანმიმდევრობაზე: ერთი head შეიძლება აკონტროლებდეს გრამატიკულ როლს, მეორე სემანტიკურ მსგავსებას, მესამე გრძელმანძილიან მითითებებს.


გეომეტრიულად: თითოეული head განსაზღვრავს 64-განზომილებიან ორიენტირებულ ქვესივრცეს („ფანჯარას“), რომლის მეშვეობითაც ის უყურებს წარსულს.


მიზეზობრივი ნიღაბი

მხოლოდ დეკოდერის მოდელები ამატებენ მიზეზობრივ ნიღაბს: Q K^T მატრიცის ყველა ელემენტი დიაგონალის ზემოთ დაყენებულია -უსასრულობაზე softmax-მდე. გეომეტრიულად: ნებისმიერი მომავალი ტოკენის პროექცია იღებს ნულოვან წონას. ტოკენ t-ს შეუძლია დაინახოს მხოლოდ ტოკენები 0-დან t-მდე.


რატომ არის ეს მნიშვნელოვანი: ტრენინგი და ინფერენსი სიმეტრიული ხდება. იგივე წინ გადასვლა, იგივე ნიღბიანი პროექციები, არანაირი სპეციალური გენერაციის ლოგიკა.


sqrt(d_k) მასშტაბირება

მასშტაბირების გარეშე, წერტილოვანი ნამრავლები იზრდება d_k-სთან ერთად. დიდი წერტილოვანი ნამრავლები softmax-ს ერთჯერად რეგიონებში უბიძგებს (ერთი წონა დაახლოებით 1-ის ტოლი, დანარჩენი დაახლოებით 0-ის). sqrt(d_k)-ზე გაყოფა პროექციებს ერთეულოვანი ვარიაციის მასშტაბზე ინარჩუნებს, რაც softmax-ის სიმკვეთრეს d_k-ს ფართო დიაპაზონში ინარჩუნებს.


გეომეტრიულად: sqrt(d_k) ნორმალიზებს პროექციების სიგრძეებს ისე, რომ softmax-მა დაინახოს შედარებადი მასშტაბები ქვესივრცის განზომილების მიუხედავად.

პროექციის წაკითხვა

სამი გასაღები და ერთი მოთხოვნა R^4-ში (გამარტივებული არითმეტიკისთვის):


- q = (1, 0, 1, 0)

- k_1 = (1, 0, 0, 0) [წარსული ტოკენი 1]

- k_2 = (0, 0, 1, 0) [წარსული ტოკენი 2]

- k_3 = (0, 1, 0, 1) [past token 3]


d_k = 4, ამიტომ sqrt(d_k) = 2.

(ა) გამოთვალეთ q . k_i i = 1, 2, 3-ისთვის (სკალარული ნამრავლები). (ბ) გაყავით თითოეული sqrt(d_k) = 2-ზე, რათა მიიღოთ მასშტაბირებული ქულები. (გ) softmax-ის პირდაპირი გამოთვლის გარეშე, მიუთითეთ რომელი გასაღები მიიღებს ყველაზე დიდ ყურადღების წონას და მიუთითეთ გეომეტრიული მიზეზი.

Gradient Descent as Path on Terrain

ზედაპირი 120M+1 განზომილებაში

ANDREA-120M-ის ყველა წონის კონფიგურაცია არის ერთი წერტილი R^120,000,000-ში. დანაკარგი L(w) ასახავს თითოეულ წერტილს რეალურ რიცხვზე: სწავლების დანაკარგი ამ კონფიგურაციაში. დანაკარგის მნიშვნელობები ერთად ქმნიან (120M+1)-განზომილებიან ზედაპირს პარამეტრების სივრცის ზემოთ.


გეომეტრიულად შეუძლებელია პირდაპირ ვიზუალიზაცია. კონცეპტუალურად: რელიეფი. მთები (მაღალი დანაკარგი), ხეობები (დაბალი დანაკარგი), უნაგირის წერტილები, პლატოები, ქედები, აუზები.


გრადიენტი როგორც ლოკალური დახრილობა

grad L(w) არის ვექტორი R^120M-ში, რომელიც მიუთითებს L-ის ყველაზე მკვეთრი ზრდის მიმართულებას. მისი უარყოფა: -grad L(w) მიუთითებს ყველაზე მკვეთრად ქვევით.


ერთი AdamW ნაბიჯი w-ს უარყოფითი გრადიენტის მიმართულებით უბიძგებს (m და v-დან ადაპტური მასშტაბირებით). გეომეტრიულად: პატარა ნაბიჯი ზედაპირის გასწვრივ, ქვევით, ნაბიჯის ზომა lr-ით კონტროლდება.


v1-ის ცუდი აუზი

v1-მა თავისი პირველი ნაბიჯი LR = პიკზე (0.0003) გააკეთა ახლად ინიციალიზებულ წონებზე. გეომეტრიული სურათი: w_0 იმყოფება ძლიერ მრუდე რეგიონში (შემთხვევითი ინიციალიზაცია მაღალ მრუდეს იძლევა ბევრ მიმართულებაში), და პიკ-LR ნაბიჯი არასწორ აუზში ხვდება. შემდგომი ნაბიჯები ვერ გამოდიან. მოდელი „რეგიონ რეგიონ რეგიონ“-ის გამომუშავებას იჭედება, რადგან ეს აუზი ყველაზე დაბალი დანაკარგია, რომელსაც მოდელი შეუძლია იპოვოს იქიდან, სადაც დაეშვა.


v2-ის გათბობის გზა

v2 აკეთებს 2000 პატარა ნაბიჯს LR-ის 0-დან პიკამდე თანდათანობით მატებით. გეომეტრიული სურათი: w_0 ჯერ ნაზად მიგრირებს გლუვ მიმართულებებში (სადაც მრუდე დაბალია). 2000-ე ნაბიჯისთვის w უკვე გადავიდა უფრო მართვად რეგიონში; პიკ LR-ს შეუძლია შემდეგ უკეთესი აუზისკენ წაიყვანოს ის გადაჭარბებული ნახტომის გარეშე.


Warmup არის გეომეტრიაზე ორიენტირებული ინიციალიზაციის პროტოკოლი: მოდელს საშუალებას აძლევს უსაფრთხო ლოკალური მეზობლობის პოვნა, სანამ მას მკაცრად დააძაბავს.


ფართო vs ვიწრო აუზები

112K ნაბიჯზე ANDREA-120M იმყოფება აუზში. კითხვა: რამდენად ფართოა ის?


ფართო აუზი = მრავალი მეზობელი წონის კონფიგურაცია ასევე აღწევს დაბალ ტრენინგის დანაკარგს. განზოგადება ჩვეულებრივ კარგია (აუზის სიგანე წინასწარმეტყველებს ტესტის შესრულებას; იხილეთ PAC-Bayes გაკვეთილი, თავი 3).


Narrow basin = მხოლოდ წონების თხელი ნაკრები აღწევს დაბალ დანაკარგს. განზოგადება ჩვეულებრივ ზარალდება.


v3 polish at step 112,619 nudged the model along the surface (without resetting) to a wider basin via curriculum perturbation: change the loss function (different bandit, different training mix), let SGD find a nearby flat region under the new policy.


The Zombie Cliff

The anomalous loss 0.13 at step 112,080 was a CLIFF: a sharp, narrow region where one specific input pattern (memorized repo-docs substring) hits near-zero loss. The model fell off the broader basin into a narrow gully. Polish-pivot's hard-exclusion of repo-docs filled in that gully so SGD could no longer find it.

Reading the Terrain

Three weight configurations after a polish pivot. (a) Configuration A: training loss 2.0, & 95% of small perturbations within distance 0.1 still produce loss < 2.2. (b) Configuration B: training loss 2.0, & 5% of small perturbations within distance 0.1 still produce loss < 2.2. (c) Configuration C: training loss 0.13 on one specific input but loss 8.0 on average across other inputs. Classify each as WIDE BASIN, NARROW BASIN, or CLIFF, & give a one-sentence geometric reason.

სასწავლო მიქსი როგორც სიარული დისკრეტულ სიმპლექსზე

რა არის სიმპლექსი

n-განზომილებიანი სიმპლექსი (კერძოდ, სტანდარტული (n-1)-სიმპლექსი) არის n-კომპონენტიანი ტუპლების (w_1, w_2, ..., w_n) სიმრავლე, სადაც თითოეული w_i >= 0 და sum(w_i) = 1.


n = 2-სთვის: წრფივი სეგმენტი წერტილებს (1, 0) და (0, 1) შორის. n = 3-სთვის: სამკუთხედი წვეროებით (1, 0, 0), (0, 1, 0), (0, 0, 1). n = 16-სთვის (ANDREA-ს სრული წყაროების სია): 15-განზომილებიანი სიმპლექსი, რომელიც მდებარეობს R^16-ში.


ბანდიტის წონები როგორც სიმპლექსის კოორდინატები

ANDREA-ს ბანდიტი ყოველ ფაზაში აწარმოებს წონების ვექტორს w მონაცემთა წყაროებზე. თითოეული კომპონენტი w_i წარმოადგენს წყარო i-ის შერჩევის ალბათობას. ალბათობები არაუარყოფითია და ჯამდება 1-ზე: ყველა წონების ვექტორი მდებარეობს სიმპლექსზე.


წვეროები = წმინდა სტრატეგიები (მხოლოდ ერთი წყაროს შერჩევა). ინტერიერი = შერეული სტრატეგიები (რამდენიმე წყაროს შერჩევა, თითოეული დადებითი ალბათობით). კიდეები = მხოლოდ ორი წყაროს შერევა.


წყაროების იატაკები როგორც შეზღუდული რეგიონი

ANDREA აწესებს მინიმალურ წონებს: hermes3-general-ისთვის იატაკი 0.7 (პოლიშის შემდეგ). ეს ქმნის სიმპლექსის ქვე-რეგიონს: მხოლოდ ის წონის ვექტორებია მისაწვდომი, სადაც w_hermes3-general >= 0.7.


გეომეტრიულად: იატაკი ჭრის სიმპლექსს ჰიპერპლანით. მისაწვდომი რეგიონი არის სიმპლექსის ის ნაწილი, რომელიც მდებარეობს ყველა იატაკის ჰიპერპლანის სწორ მხარეს.


კაპები როგორც მეორე შეზღუდვა

ANDREA აწესებს მაქსიმალურ წონებსაც: dictionary-ისთვის კაპი 0.25 (პოლიშის შემდეგ). თითოეული კაპი არის კიდევ ერთი ჰიპერპლანი, და მისაწვდომი რეგიონი უნდა იყოს ყველა კაპის ჰიპერპლანის სწორ მხარესაც.


წყაროს სრულიად გამორიცხვა (კაპი = 0.0) არის ყველაზე ძლიერი კაპი: კოორდინატი ფიქსირდება ნულზე, რაც ამცირებს ეფექტურ სიმპლექსს ერთი განზომილებით.


ფაზური გადასვლები როგორც სიმპლექსის გავლები
[BLOCK_TYPE SECTION/STEP]

ყოველი ფაზური გადასვლა (ყოველი 7-42 ნაბიჯი) წარმოქმნის ახალ წონათა ვექტორს. თითოეული ახალი ვექტორი არის წერტილი სიმპლექსზე. 200K ნაბიჯზე მეტი ბანდიტი აღწერს გრძელ გზას სიმპლექსის მისაწვდომ რეგიონში. [BLOCK_TYPE SECTION/STEP]


შემთხვევითი ფაზები = ტელეპორტაცია მისაწვდომ რეგიონში ერთგვაროვან-შემთხვევით წერტილზე. [BLOCK_TYPE SECTION/STEP]

ბანდიტით კონტროლირებადი ფაზები = ნაბიჯი UCB-საუკეთესო წვეროსკენ, რომელიც შეესაბამება იატაკებსა და ჭერებს. [BLOCK_TYPE SECTION/STEP]

Polish pivot = მისაწვდომი რეგიონის ხელახლა დახატვა (ახალი იატაკები, ახალი ჭერები, ზოგიერთი წყაროს გამორიცხვა), და გავლა გრძელდება ახალი საწყისი წერტილიდან. [BLOCK_TYPE SECTION/STEP]


რატომ არის წვეროები საშიში

სუფთა წყაროს ფაზები (ერთი w_i = 1, დანარჩენი = 0) სიმპლექსის წვეროებზეა განლაგებული. მრავალფეროვნება ნულის ტოლია. მოდელი ერთი განაწილების მიხედვით ივარჯიშება. v1-ის კოლაფსი ნაწილობრივ იმით იყო განპირობებული, რომ ბანდიტი ბანაკდებოდა repo-docs წვეროსთან; სემპლები მხოლოდ ამ წყაროს განაწილებას აწარმოებდა.


იატაკები წვეროებზე ბანაკების თავიდან ასაცილებლად გამოიყენება: იატაკი 0.7-ზე ნიშნავს „არასოდეს დაუშვა რომელიმე წყაროს წონა 0.7-ზე დაბლა“ (ან რა მნიშვნელობაც არ უნდა იყოს პრიორიტეტული წყაროებისთვის).

მისაღწევი რეგიონის გავლა

სამი წყარო: hermes3-general (H), gutenberg (G), dictionary (D). შეზღუდვები: H-ის იატაკი = 0.5, D-ის ჭერი = 0.25. (იმპლიციტურად: ყველა წონა ≥ 0, ჯამი = 1, სხვა შეზღუდვები არ არსებობს.)

(ა) შეუძლია თუ არა ბანდიტს აირჩიოს (H=1.0, G=0, D=0)? რატომ ან რატომ არა? (ბ) შეუძლია თუ არა აირჩიოს (H=0.5, G=0.5, D=0)? (გ) შეუძლია თუ არა აირჩიოს (H=0.5, G=0.25, D=0.25)? (დ) აღწერე გეომეტრიულად, როგორ გამოიყურება მისაღწევი რეგიონი ამ 3-წყაროს სიმპლექსში.

განზომილებების შეზღუდვა პირველი 20K ნაბიჯისთვის

რა გააკეთა v2-ის სასწავლო პროგრამის გახურებამ

v2-მა curriculum_warmup_sources დააყენა შვიდ წყაროზე: hermes3-general, hermes3-creative, hermes3-roleplay, chat, smoltalk, oasst, gutenberg. პირველი 20K ნაბიჯის განმავლობაში, მხოლოდ ეს შვიდი წყარო იყო აქტიური. 20K ნაბიჯის შემდეგ, სრული 16-წყაროს ნაკადი გააქტიურდა.


გეომეტრიული ინტერპრეტაცია

სრული 16-წყაროს სიმპლექსი მდებარეობს R^16-ში. 7 წყარომდე შეზღუდვა 16 კოორდინატიდან 9-ს ნულამდე ამცირებს. ბანდიტის სვლა ხდება 6-განზომილებიან ქვე-სიმპლექსში (ერთით ნაკლები წყაროების რაოდენობაზე, ჯამ-ერთობის შეზღუდვის გამო).


გეომეტრიულად: სრული სიმპლექსის ქვემრავალფეროვნება. დაბალი განზომილებიანი, უფრო გლუვი, უფრო ადვილად ნავიგაციადი.


რატომ ეხმარება ეს ადრეულ ტრენინგს

ტრენინგის ადრეულ ეტაპზე მოდელი ჯერ არ სწავლობს თანმიმდევრულ ენას. მრავალფეროვანი წყაროები აბნევს მას: თითოეულ წყაროს აქვს თავისი სტილი, თავისი ლექსიკური განაწილება, თავისი ნიმუში. 16 წყაროს შემთხვევითი ინიციალიზაციით შერევა ქმნის ძალიან ფართო სამიზნე განაწილებას, რომელსაც მოდელი ვერ მოერგება.


7 საუბრობით/პროზაულ წყარომდე შეზღუდვა უფრო ერთგვაროვან სამიზნეს იძლევა. მოდელი ჯერ სტაბილურ წარმოდგენას სწავლობს, შემდეგ კი ფართოვდება.


ტრენინგის გზა გრაფიკულად

1. ნაბიჯები 0-დან 20K-მდე (warmup). სიარული ხდება 6-D ქვე-სიმპლექსზე. მოდელში სტაბილური ენობრივი შაბლონები ჩნდება.

2. ნაბიჯები 20K-დან 112K-მდე (full firehose). სიარული ფართოვდება 15-D სრულ სიმპლექსზე. დომენის სიგანე ჩნდება.

3. ნაბიჯი 112K-დან და შემდეგ (polish). სიარული კვლავ შეზღუდულია: repo-docs და repo-docstrings გამორიცხულია, საუბრის იატაკები ამაღლებულია. პატარა პოლიგონი სრულ სიმპლექსში; საუბრის ხარისხი კონსოლიდირდება.


რატომ აყენებს Polish curriculum_warmup_steps = 0

Polish იწყება 112K ნაბიჯზე. მოდელი უკვე საუბრობს თანმიმდევრულ ენაზე. ქვე-სიმპლექსზე შეზღუდვა ახლა დაკარგავს სიგანეს, ყოველგვარი სარგებლის გარეშე (warmup-ის სარგებელი ახალი ინიციალიზაციის მოდელებისთვისაა). curriculum_warmup_steps = 0-ის დაყენება ნიშნავს: დარჩი სრულ სიმპლექსზე, მაგრამ ახალი caps და floors-ით.


სამი გეომეტრია, ერთი სასწავლო გაშვება

v2 warmup: დაბალგანზომილებიანი ქვე-სიმპლექსი.

v2 firehose: სრული 15-D სიმპლექსი.

v3 polish: სრული სიმპლექსი უფრო მცირე მრავალკუთხედით (მეტი შეზღუდვა).


იგივე 200K-საფეხურიანი გაშვება, სამი განსხვავებული გეომეტრიული რეჟიმი. თითოეული მორგებული იყო მოდელის სიმწიფის სხვადასხვა ფაზისთვის.

ქვემანიფოლდის წაკითხვა

(a) v2 warmup იყენებს 7 წყაროს 16-წყაროს სრული ნაკრებიდან. რა არის warmup ქვე-სიმპლექსის განზომილება? გამოთვალეთ და მიუთითეთ. (b) ANDREA-120M v3 polish მკაცრად გამორიცხავს repo-docs და repo-docstrings (cap 0.0), მაგრამ სხვა შემთხვევაში უშვებს დარჩენილ 14 წყაროს. რა არის polish ქვე-სიმპლექსის განზომილება? (c) გეომეტრიულად, რას ნიშნავს curriculum_warmup_steps = 0 polish კონფიგურაციაში?