समाचारं

तकनीकीसामग्रीणां सहस्राणि शब्दानि! एलएलएम-इञ्जिनीयराणां कृते अनिवार्यपठनीयः परिमाणनिर्धारणमार्गदर्शकः, दृश्यचित्रणं बृहत्माडलं कथं संपीडयितुं शक्यते इति प्रकाशयति

2024-07-31

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina


नवीन बुद्धि प्रतिवेदन

सम्पादक : सम्पादकीय विभाग

[नव प्रज्ञायाः परिचयः] । एलएलएम इत्यस्य क्रमेण विस्तारितस्य पैरामीटर्-परिमाणस्य सम्मुखे एच्१०० विना विकासकाः शोधकर्तारः च तस्य क्षतिपूर्तिं कर्तुं बहवः उपायाः कल्पितवन्तः, "मात्राकरण"-प्रौद्योगिकी च तेषु अन्यतमः अस्ति अस्मिन् दृश्यमार्गदर्शिकायां "मात्रानिर्धारणस्य" मूलभूतसंकल्पनानां शाखापद्धतीनां च व्यापकरूपेण सारांशं दातुं विविधचित्रणानां उपयोगः भवति ।

बृहत् भाषाप्रतिमानाः (LLMs) प्रायः उपभोक्तृ-श्रेणीयाः हार्डवेयर्-मध्ये चालयितुं अतिविशालाः भवन्ति । एतेषु मॉडल्-मध्ये अरब-अरब-अधिक-मापदण्डाः भवितुम् अर्हन्ति तथा च प्रायः अनुमान-प्रक्रियायाः त्वरिततायै बृहत्-स्मृति-युक्तानां GPU-इत्यस्य आवश्यकता भवति ।

अतः अधिकाधिकं शोधं कथं प्रतिरूपं संकोचयितव्यम् इति विषये केन्द्रीक्रियितुं आरब्धम्, यथा प्रशिक्षणविधिषु सुधारः अथवा एडाप्टर्-उपयोगः । अस्मिन् क्षेत्रे एकः मुख्यः युक्तिः क्वाण्टीकरणम् इति कथ्यते ।

एमएल-इञ्जिनीयरः मार्टेन् ग्रोटेन्डोर्स्ट् इत्यनेन एकं ब्लॉग्-पोस्ट् लिखितम् यत् विशेषतया भाषा-प्रतिरूपणस्य सन्दर्भे परिमाणीकरण-प्रौद्योगिक्याः परिचयं करोति तथा च दृश्य-विधिभिः एकैकं सम्बन्धित-अवधारणानां अन्वेषणं करोति यत् अस्मान् प्रौद्योगिक्याः सहज-समझं निर्मातुं साहाय्यं करोति


अस्मिन् ब्लॉग् पोस्ट् मध्ये मार्टेन् विविधाः पद्धतयः, उपयोगप्रकरणाः, परिमाणीकरणस्य पृष्ठतः सिद्धान्ताः च अन्वेषयति ।

लेखस्य सामग्रीसारणी सामग्री च अधोलिखिते चित्रे दर्शिता अस्ति यत् अस्मिन् मुख्यतया प्रशिक्षणोत्तर-क्वाण्टीकरणस्य (PTQ) तथा क्वाण्टीकरण-जागरूक-प्रशिक्षणस्य (QAT) द्वयोः पद्धतयोः परिचयः कृतः अस्ति सममित क्वांटाइजेशन भागं प्रति : १.


प्रथमः भागः एलएलएमस्य "समस्या"

"बृहत् भाषाप्रतिमानाः" आदर्शमापदण्डानां संख्यायाः दृष्ट्या बृहत् भवन्ति, प्रायः अरबौ स्केल (मुख्यतया भाराः) यावत् भवन्ति ।

न केवलं एतेषां मापदण्डानां भण्डारणव्ययः अत्यन्तं अधिकः भवति, अपितु अनुमानचरणस्य गणनायाः राशिः अपि महती भवति ।

अनुमानस्य समये सक्रियीकरणमूल्यं निवेशस्य भारस्य च गुणनफलं भवति अतः भारस्य संख्या यथा अधिका भवति तथा सक्रियीकरणमूल्यं बृहत् भवति ।


अतः वयं यथासम्भवं कुशलतया अरबौ मूल्यानां प्रतिनिधित्वं कर्तुम् इच्छामः, अतः मापदण्डानां संग्रहणार्थं आवश्यकं स्थानं न्यूनीकरोति ।

आरम्भे आरभ्य अनुकूलनात् पूर्वं मूल्यानां प्रतिनिधित्वं कथं भवति इति अन्वेषयामः ।

संख्यात्मकमूल्यानां प्रतिनिधित्वं कथं करणीयम्

संख्यात्मकमूल्यानि प्रायः प्लवमानबिन्दुसङ्ख्यारूपेण (अथवा केवलं प्लवमानानि) संगृह्यन्ते: दशमलवबिन्दुयुक्ता सकारात्मका ऋणात्मका वा संख्या ।

एतानि मूल्यानि प्रत्येकस्मिन् बिट् मध्ये द्विचक्रीय-अङ्कैः प्रतिनिधितानि भवन्ति ।

IEEE-754 मानकं वर्णयति यत् प्रत्येकस्मिन् अङ्के अङ्काः कथं विशिष्टं मूल्यं प्रतिनिधियन्ति विशेषतया, त्रीणि मानचित्रणानि सन्ति: चिह्नं, घातांकं, अथवा दशमलवम् (mantissa) ।


एते त्रयः भागाः संयोजयित्वा बिट् मूल्यानां समुच्चयस्य आधारेण प्रतिनिधित्वं मूल्यं गणयितुं शक्यन्ते:


यावन्तः अङ्काः प्रयुक्ताः, तावत् अधिकं सटीकं संख्यात्मकं मूल्यं भवति उदाहरणार्थं, FP32 रूपं FP16 इत्यस्मात् दशमलवबिन्दुस्य अनन्तरं अधिकानि अङ्कानि यावत् सटीकं भवितुम् अर्हति:


स्मृतिसीमा

यावन्तः अङ्काः उपलभ्यन्ते, न केवलं मूल्यं तावत् सटीकं भवति, अपितु प्रतिनिधित्वं कर्तुं शक्यमाणानां मूल्यानां परिधिः अपि विस्तृतः भवति ।


बिट्-सङ्ख्यां प्रतिनिधित्वं च दत्त्वा यत् मूल्यानां परिधिः प्रतिनिधित्वं कर्तुं शक्यते तत् गतिशीलपरिधिः इति उच्यते, समीपस्थयोः मूल्ययोः मध्ये यत् दूरं भवति तत् परिशुद्धता इति कथ्यते


अस्य प्रतिनिधित्वस्य एकं सुव्यवस्थितं विशेषता अस्ति यत् वयं गणयितुं शक्नुमः यत् दत्तं मूल्यं संग्रहीतुं यन्त्रस्य कियत् स्मृतिः आवश्यकी अस्ति ।

यतः स्मृतौ प्रत्येकं बाइट् मध्ये ८ बिट् भवन्ति, अतः वयं प्लवकबिन्दुसङ्ख्यानां अधिकांशरूपेषु मूलभूतं सूत्रं निर्मातुम् अर्हति -


वास्तविक-अनुप्रयोगेषु, अनुमानस्य समये आवश्यकस्य चित्रस्य/स्मृतेः परिमाणं प्रभावितं कुर्वन्ति, यथा सन्दर्भ-आकारः, आदर्श-वास्तुकला च

अधुना कल्पयतु अस्माकं समीपे ७० अरब पैरामीटर् युक्तं मॉडल् अस्ति । अधिकांशं मॉडल् स्वयं ३२-बिट् प्लवङ्गबिन्दुसङ्ख्यानां (प्रायः पूर्णसटीकता इति उच्यते) उपयोगेन प्रतिनिधित्वं भवति, यस्य कृते मॉडल् लोड् कर्तुं २८०GB स्मृतेः आवश्यकता भवति ।


परन्तु यदि सर्वे मापदण्डाः १६-बिट्-प्लवक-बिन्दु-सङ्ख्यारूपेण व्यक्तुं शक्यन्ते तर्हि आवश्यकं स्मृति-आकारं प्रत्यक्षतया एकवारं न्यूनीकर्तुं शक्यते ।

अतः आदर्शमापदण्डानां प्रतिनिधित्वस्य संख्यां न्यूनीकर्तुं (न केवलं अनुमानार्थं अपितु प्रशिक्षणार्थं अपि) अतीव आकर्षकम् अस्ति ।

तथापि एषः उपायः व्ययस्य विना न आगच्छति । यथा यथा प्रतिनिधित्वबिट्-सङ्ख्या न्यूनीभवति तथा तथा मॉडलस्य सटीकता न्यूनीभवति यस्य परिणामेण सटीकता न्यूनीभवति ।

वयं सटीकतां निर्वाहयित्वा मूल्यस्य प्रतिनिधित्वार्थं प्रयुक्तानां अङ्कानां संख्यां न्यूनीकर्तुं इच्छामः...अत्रैव क्वाण्टाइजेशन-प्रविधयः कार्ये आगच्छन्ति ।

भाग 2: परिमाणीकरणस्य परिचयः

वयम् अधुना जानीमः यत् क्वाण्टीकरणस्य उद्देश्यं उच्चतरबिटविस्तारात् (यथा 32-बिट् फ्लोटिंग् बिन्दुसङ्ख्याः) निम्नबिट्विस्तारेभ्यः (यथा 8-बिट् पूर्णाङ्काः) यावत् मॉडल् पैरामीटर्-सटीकताम् न्यूनीकर्तुं भवति


मूलमापदण्डानां प्रतिनिधित्वं कुर्वतां बिट्-सङ्ख्यां न्यूनीकर्तुं प्रायः किञ्चित् परिशुद्धतायाः (दानेदारता) सह हानिः भवति ।

एतत् प्रभावं अधिकं सहजं कर्तुं वयं फोटो-रङ्गानाम् उपमारूपेण उपयोगं कर्तुं शक्नुमः । यथा, किमपि चित्रं चिनोतु (वामभागे), परन्तु केवलं ८ वर्णानाम् उपयोगं कुर्वन्तु (दक्षिणे):


ध्यानं कुर्वन्तु यत् विस्तारिता कुकी मूलस्य अपेक्षया अधिकं "कणिकाकारः" दृश्यते ।

तथैव यथासम्भवं सटीकताम् अवलम्ब्य मूलमापदण्डानां प्रतिनिधित्वार्थं आवश्यकानां बिट् (रङ्गानाम्) संख्यां न्यूनीकर्तुं क्वाण्टीकरणस्य मुख्यं लक्ष्यं भवति

सामान्यदत्तांशप्रकाराः

प्रथमं सामान्यदत्तांशप्रकारं 32-बिट् (पूर्ण-सटीकता अथवा FP32 इति कथ्यते) प्रतिनिधित्वस्य स्थाने तेषां उपयोगस्य प्रभावं च पश्यामः ।

FP16

प्रथमं ३२-बिट् तः १६-बिट् (अर्ध-सटीकता अथवा FP16 इति उच्यते) प्लवमानबिन्दुपर्यन्तं गमनस्य उदाहरणम् अस्ति :


FP16 इत्यस्य सम्भाव्यमूल्यानां परिधिः FP32 इत्यस्य अपेक्षया बहु लघुः अस्ति ।

BF16

मूल FP32 इत्यस्य सदृशं संख्यात्मकं परिधिं प्राप्तुं bfloat 16 इत्यस्य परिचयः "truncated FP32" प्रकाररूपेण कृतः:


BF16 FP16 इत्यस्य समानसङ्ख्यायाः बिट् इत्यस्य उपयोगं करोति, परन्तु घातीयबिट् योजयति, अतः मूल्यानां विस्तृतपरिधिं प्राप्तुं शक्नोति तथा च प्रायः गहनशिक्षणक्षेत्रे उपयुज्यते

INT8

यथा यथा भवन्तः बिट्-सङ्ख्यां अधिकं न्यूनीकरोति तथा तथा प्रतिनिधित्वं प्लवमानबिन्दुसङ्ख्यायाः अपेक्षया पूर्णाङ्कस्य समीपे भवति । यथा, FP32 तः INT8 यावत् गच्छन् यस्मिन् केवलं 8 बिट् सन्ति, केवलं मूल बिट्-सङ्ख्यायाः 1/4 भागः:


प्रत्येकं समये बिट्-सङ्ख्या न्यूनीकृता भवति चेत्, मूल-FP32-प्रतिपादनं न्यूनेषु बिट्-मध्ये "संपीडयितुं" मैपिंगं क्रियते ।

परन्तु वास्तविकसञ्चालने अस्माकं सम्पूर्णं FP32 परिधिं [-3.4e38, 3.4e38] INT8 मध्ये मैप् कर्तुं आवश्यकता नास्ति । अस्माकं केवलं वास्तविकमाडलमापदण्डानां दत्तांशपरिधिं INT8 मध्ये मैप् कर्तुं मार्गः अन्वेष्टव्यः ।

सामान्यसंपीडन/मानचित्रणविधिषु सममित-क्वाण्टीकरणम्, असममित-क्वाण्टीकरणं च अन्तर्भवति, ययोः द्वयोः अपि रेखीय-मानचित्रणम् अस्ति ।

अग्रे यत् चर्चां कुर्मः तत् FP32 तः INT8 पर्यन्तं क्वाण्टीकरणविधिः ।

सममित क्वांटाइजेशन

सममित-क्वाण्टीकरणे मूल-प्लवक-बिन्दु-मूल्यस्य परिधिः क्वाण्टीकरण-अन्तरिक्षे शून्य-केन्द्रित-सममित-परिधिं प्रति मैप् भवति, यत्र शून्यं क्वाण्टीकरणात् पूर्वं पश्चात् च श्रेणीयाः मध्यबिन्दुः भवति

अस्य अर्थः अस्ति यत् प्लवमानबिन्दुस्थाने मूलशून्यं क्वाण्टीकृतस्थाने मैप् कृत्वा सम्यक् शून्यं भवति ।


सममित-क्वाण्टीकरणस्य एकं विशिष्टं उदाहरणं निरपेक्ष-अधिकतम (absmax) क्वाण्टीकरणम् अस्ति ।

मूल्यानां सूचीं दत्त्वा वयं रेखीयमानचित्रणं कर्तुं सर्वोच्चं निरपेक्षं मूल्यं (α) परिधिरूपेण गृह्णामः ।


[-127, 127] प्रतिबन्धितपरिधिं प्रतिनिधियति, अप्रतिबन्धितपरिधिः च [-128, 127] भवति, क्वाण्टीकरणविधिआश्रित्य

यतो हि एषः शून्यकेन्द्रितः रेखीयः मानचित्रः अस्ति, अतः सूत्रं सरलम् अस्ति ।

प्रथमं निम्नलिखितसूत्रस्य उपयोगेन स्केलकारकस्य (s) गणनां कुर्वन्तु ।

- b इति बाइट्-सङ्ख्या वयं क्वाण्टाइज् कर्तुम् इच्छामः (8) ।

- α उच्चतमं निरपेक्षं मूल्यम् अस्ति

ततः वयं निवेशस्य x इत्यस्य परिमाणं कर्तुं s इत्यस्य उपयोगं कुर्मः:


यथा उपरि चित्रे दर्शितं, अधिकतमं निरपेक्षं मूल्यं α 10.8 भवति यदा FP32 तः INT8 पर्यन्तं मैपिंगं क्रियते तदा निम्नलिखितसूत्रं प्राप्यते ।


यदि भवान् मूल FP32 मूल्यानि पुनःस्थापयितुम् इच्छति तर्हि विपरीत-क्वाण्टीकरणार्थं पूर्वं गणितस्य स्केल-कारकस्य (s) अपि उपयोगं कर्तुं शक्नोति ।


प्रथमं quantize, ततः dequantize मूलमूल्यं पुनः स्थापयितुं सम्पूर्णा प्रक्रिया निम्नलिखितरूपेण अस्ति ।


भवन्तः द्रष्टुं शक्नुवन्ति यत् केचन मूल्यानि, यथा 3.08 तथा 3.02, INT8 इत्यस्मै क्वाण्टीकृत्य द्वयोः अपि 36 भवन्ति । अतः यदा पुनः FP32 प्रति dequantized भवति तदा ते किञ्चित् परिशुद्धतां नष्टं कुर्वन्ति, तेषां भेदः न भवति ।

मूलमूल्येन विपरीतगुणितमूल्येन च अयं भेदः क्वाण्टीकरणदोषः इति कथ्यते । सामान्यतया, क्वाण्टाइजेशनपरिणामे यावन्तः बिट्-आदयः न्यूनाः सन्ति, तावत् अधिका दोषः भवति ।


असममित क्वांटाइजेशन

सममित-क्वाण्टीकरणस्य विपरीतम् असममित-क्वाण्टीकरणं शून्य-केन्द्रित-समरूपता नास्ति । तस्य स्थाने, प्लवमानबिन्दुपरिधिस्य न्यूनतमं (β) अधिकतमं (α) मूल्यं क्रमशः क्वाण्टीकृतपरिधिस्य न्यूनतमं अधिकतमं च मूल्यं प्रति नक्शाङ्कयति

अत्र वयं यत् पद्धतिं अन्वेषयामः तत् शून्य-बिन्दु-क्वाण्टीकरणम् इति कथ्यते ।


0 इत्यस्य स्थितिः कथं गता इति अवलोकयन्तु । अत एव एतत् असममितं क्वाण्टीकरणम् इति कथ्यते । [-7.59, 10.8] इति परिधिमध्ये अधिकतमं न्यूनतमं च मूल्यं 0 तः भिन्नदूरे भवति ।

शून्यबिन्दुस्थानस्य आफ्सेट् इत्यस्य कारणात् रेखीयमानचित्रणं कर्तुं INT8 श्रेण्यां शून्यबिन्दुस्य गणना कर्तव्या भवति । पूर्ववत् अस्माभिः स्केल-कारकस्य (s) अपि गणना कर्तव्या, परन्तु INT8-परिधिमध्ये भेदस्य उपयोगेन [-128, 127] ।


इदं किञ्चित् जटिलं यतः भारानाम् चालनार्थं INT8 परिधिमध्ये शून्यबिन्दुस्य (z) गणना आवश्यकी भवति ।

पूर्ववत् सूत्रं पूरयामः :


INT8 तः पुनः FP32 पर्यन्तं क्वाण्टाइज्ड् मूल्यं विगुणयितुं अस्माकं पूर्वं गणितस्य स्केल कारकस्य (s) शून्यबिन्दुस्य (z) च उपयोगः करणीयः ।

अन्यथा विकण्टीकरणं सरलं भवति : १.


यदा वयं सममितं असममितं च क्वाण्टाइजेशनं पार्श्वे पार्श्वे स्थापयामः तदा वयं शीघ्रमेव द्वयोः पद्धतयोः अन्तरं द्रष्टुं शक्नुमः :


उपरि चित्रे सममित-क्वाण्टीकरणस्य शून्य-केन्द्र-लक्षणं असममित-क्वाण्टीकरणस्य च ऑफसेट् च द्रष्टुं शक्नुमः ।

रेन्ज मैपिंग तथा क्लिपिंग् (Clipping) .

पूर्वोदाहरणे वयं दत्तसदिशे मूल्यानां श्रेणीं न्यून-बिट्-प्रतिपादने कथं मैप् करणीयम् इति अन्वेषितवन्तः । यद्यपि एतेन सदिशमूल्यानां सम्पूर्णपरिधिं नक्शाङ्कितुं शक्यते तथापि अस्य एकः प्रमुखः दोषः अस्ति, यथा बहिर्मुखाः ।

कल्पयतु यत् भवतः समीपे निम्नलिखितमूल्यानि युक्तः सदिशः अस्ति ।


अन्येभ्यः सर्वेभ्यः अपेक्षया बहु बृहत्तरं मूल्यं बहिर्गतिः इति गणयितुं शक्यते । यदि वयं सदिशानां सम्पूर्णपरिधिं मैप् कुर्मः तर्हि सर्वे लघुमूल्यानि समाननिम्नक्रमप्रतिपादने मैप् करिष्यन्ति तथा च तेषां विशिष्टतां नष्टं भविष्यति:


एषः पूर्वं प्रयुक्तः absmax विधिः ।क्लिप् विना असममित क्वाण्टाइजेशन इत्यनेन अपि तथैव भवति

तस्य स्थाने वयं कतिपयानि मूल्यानि क्लिप् कर्तुं चिन्वितुं शक्नुमः । क्लिपिंग् इत्यनेन मूलमूल्यानां भिन्नं गतिशीलपरिधिं सेट् कर्तुं निर्दिश्यते येन सर्वे बहिर्गाः समानमूल्ये सेट् भवन्ति ।

अधोलिखिते उदाहरणे वयं गतिशीलपरिधिं [-5, 5] इति मैन्युअल् रूपेण सेट् कुर्मः, अस्मात् परिधितः बहिः सर्वाणि मूल्यानि -127 अथवा 127 इति मैप् भविष्यन्ति, तेषां वास्तविकमूल्यं न कृत्वा:


अस्य पद्धतेः मुख्यः लाभः अस्ति यत् अ-बहिष्कृतानां कृते क्वाण्टीकरणदोषः महत्त्वपूर्णतया न्यूनीकरोति । तथापि बहिर्गतानां कृते क्वाण्टीकरणदोषः वर्धते ।

मापन

उपरिष्टाद् उदाहरणे वयं गतिशीलपरिधिं यादृच्छिकरूपेण [-5, 5] इति सेट् कुर्मः, परन्तु क्वाण्टीकरणदोषं न्यूनीकरोति चेत् यथासम्भवं अधिकानि मूल्यानि समाविष्टं समुचितं परिधिं अन्वेष्टुं "मापन" प्रक्रियायाः माध्यमेन निर्णयः करणीयः

मापनपदानां विशिष्टनिष्पादनं भिन्नप्रकारस्य मापदण्डस्य कृते भिन्नं भवति ।

भाराः (पक्षपाताः च) २.

वयं बृहत् भाषाप्रतिरूपस्य (LLM) भाराः & पूर्वाग्रहाः स्थिरमूल्यानि इति चिन्तयितुं शक्नुमः यतः ते मॉडलं चालयितुं पूर्वं ज्ञायन्ते । यथा, Llama 3 इत्यस्य ~20GB सञ्चिकायां अधिकतया तस्य भारः पूर्वाग्रहाः च सन्ति ।

यतो हि पूर्वाग्रहचरानाम् (कोटिः) संख्या भारानाम् (अरबानाम्) अपेक्षया महत्त्वपूर्णतया न्यूना भवति, पूर्वाग्रहाः प्रायः अधिकसटीकताम् (INT16 इव) निर्वाहयन्ति, यदा तु क्वाण्टीकरणस्य मुख्यं कार्यं भारानाम् उपरि केन्द्रितं भवति

ज्ञातस्थिरभारस्य कृते श्रेणीचयनार्थं मापनप्रविधयः अन्तर्भवन्ति :

- इनपुट् रेन्जस्य परसेण्टाइल्स् मैन्युअल् रूपेण चयनं कुर्वन्तु

- मूलभारस्य क्वाण्टीकृतभारस्य च मध्ये औसतवर्गदोषं (MSE) अनुकूलितं कुर्वन्तु

- मूलमूल्यं क्वाण्टीकृतमूल्यं च (KL divergence) मध्ये एन्ट्रोपीं न्यूनीकरोतु


उदाहरणार्थं शतभागस्य चयनेन पूर्वं दृष्टस्य सदृशं क्लिपिंग् व्यवहारः भवति ।

सक्रियण मूल्यम्

सम्पूर्णे विशालभाषाप्रतिरूपे ये निवेशाः निरन्तरं अद्यतनाः भवन्ति ते प्रायः सक्रियताः इति उच्यन्ते ।


ते सक्रियीकरणमूल्यानि इति उच्यन्ते यतः ते प्रायः केनचित् सक्रियीकरणकार्येण गच्छन्ति, यथा सिग्मोइड् अथवा रेलु

भारस्य विपरीतम्, अनुमानस्य समये निवेशदत्तांशैः सह सक्रियताः परिवर्तन्ते अतः समीचीनरूपेण परिमाणं कर्तुं कठिनं भवति ।

यतो हि एते मूल्यानि प्रत्येकस्य गुप्तस्तरस्य अनन्तरं अद्यतनं भवन्ति, तेषां विशिष्टमूल्यानि अनुमानचरणस्य समये न ज्ञायन्ते यावत् निवेशदत्तांशः मॉडलद्वारा न गच्छति


सामान्यतया, भारस्य मापनार्थं सक्रियीकरणस्य च द्वौ पद्धतौ स्तः, ये प्रतिरूपस्य विभिन्नेषु चरणेषु प्रयुक्ताः सन्ति:

- प्रशिक्षणोत्तर मात्राकरण (PTQ) 1.1.

- यथा नाम सूचयति, प्रशिक्षणानन्तरं परिमाणीकरणं भवति

- परिमाणीकरण जागरूक प्रशिक्षण (QAT) 1.1.

- प्रशिक्षणस्य/सूक्ष्म-समायोजनस्य समये मात्राकरणम्

भाग 3: प्रशिक्षणोत्तर मात्रा निर्धारण (PTQ) 1.1.

प्रशिक्षणोत्तरं क्वाण्टाइजेशनं (PTQ) सर्वाधिकं लोकप्रियं क्वाण्टाइजेशन-प्रविधिषु अन्यतमम् अस्ति । एतत् आदर्शप्रशिक्षणस्य समाप्तेः अनन्तरं मॉडलस्य मापदण्डान् (भाराः सक्रियीकरणमूल्यानि च समाविष्टानि) परिमाणं करोति ।

भारस्य परिमाणीकरणे सममित-मात्राकरणस्य अथवा असममित-मात्रायाः उपयोगः कर्तुं शक्यते ।

परन्तु सक्रियीकरणमूल्यानां परिमाणनिर्धारणाय तेषां अन्तर्निहितवितरणं प्राप्तुं अनुमानचरणस्य आवश्यकता भवति, यतः वयं तेषां परिधिं पूर्वमेव न जानीमः

सक्रियीकरणमूल्यानां क्वाण्टीकरणस्य द्वौ रूपौ स्तः- १.

- गतिशील क्वांटाइजेशन

- स्थिर मात्राकरणम्

गतिशील क्वांटाइजेशन

गुप्तस्तरस्य माध्यमेन दत्तांशस्य गमनानन्तरं तस्य सक्रियीकरणमूल्यानि एकत्रितानि भवन्ति तथा च प्रत्येकस्य स्तरस्य अधिकतममूल्यं (α) न्यूनतमं मूल्यं (β) च तुलना क्रियते:


ततः एतेषां सक्रियीकरणानां वितरणस्य उपयोगः परिमाणितनिर्गमस्य कृते आवश्यकानां शून्यबिन्दु (z) तथा स्केल कारक (s) मूल्यानां गणनाय भवति:


एषा प्रक्रिया प्रत्येकं वारं पुनरावृत्तिः भवति यदा दत्तांशः नूतनजालस्तरस्य माध्यमेन गच्छति । अतः प्रत्येकस्य स्तरस्य स्वकीयाः स्वतन्त्राः z तथा s मूल्यानि सन्ति, अतः भिन्ना क्वाण्टाइजेशन योजनायाः उपयोगः भवति ।

स्थिर मात्राकरणम्

गतिशील-क्वाण्टीकरणस्य विपरीतम्, स्थिर-क्वाण्टीकरणम् अनुमानस्य समये शून्यबिन्दुस्य (z) तथा स्केल-कारकस्य (s) गणनां न करोति, अपितु अनुमानात् पूर्वं एतेषां मूल्यानां गणनां करोति

एतानि मूल्यानि अन्वेष्टुं वयं मापनदत्तांशसमूहस्य उपयोगं कुर्मः तथा च सक्रियीकरणमूल्यानां एतानि अन्तर्निहितवितरणं संग्रहयितुं मॉडल् मध्ये फीड् कुर्मः ।


एकदा एतानि वितरणानि एकत्रितानि भवन्ति तदा अनुमानस्य समये परिमाणनिर्धारणाय आवश्यकानि s तथा z मूल्यानि गणयितुं शक्यन्ते ।

वास्तविकअनुमानसमये s तथा z मूल्यानां पुनर्गणना न भवति अपितु तेषां परिमाणीकरणार्थं सर्वेषु सक्रियतासु वैश्विकरूपेण उपयोगः भवति ।

समग्रतया, गतिशीलं क्वाण्टाइजेशनं, यत् प्रत्येकस्य गुप्तस्तरस्य कृते s तथा z मूल्यानां गणनां करोति, तत् अधिकं सटीकं भवितुं प्रवृत्तं भवति । परन्तु एतेन गणनासमयः वर्धयितुं शक्यते यतः एतेषां मूल्यानां गणना प्रत्येकं अनुमानसमये करणीयम् ।

तस्य विपरीतम्, स्थिर-क्वाण्टाइजेशनं यद्यपि गतिशील-क्वाण्टीकरणवत् सटीकं नास्ति तथापि द्रुततरं भवति यतोहि एतत् पूर्वमेव क्वाण्टीकरणार्थं प्रयुक्तानि s तथा z मूल्यानि पूर्वमेव जानाति

४-बिट् परिमाणात्मकं क्षेत्रम्

8-बिट् इत्यस्मात् अधः क्वाण्टाइजेशनं सर्वदा एकं आव्हानं भवति यतोहि प्रत्येकं बिट् नष्टेन सह क्वाण्टाइजेशनदोषः वर्धते । सौभाग्येन बिट्-सङ्ख्यां ६, ४, अथवा २-बिट्-पर्यन्तं न्यूनीकर्तुं अनेकाः चतुराः उपायाः सन्ति (यद्यपि सामान्यतया ४-बिट्-अधः बिट्-सङ्ख्यां न्यूनीकर्तुं न अनुशंसितम्)

वयं HuggingFace इत्यत्र सामान्यपद्धतिद्वयं अन्वेषयामः:

- GPTQ (पूर्णं मॉडलं GPU इत्यत्र चाल्यते)

- GGUF (संभवतः CPU - मध्ये स्तरानाम् अवरोहणं करोति)

जीपीटीक्यू

व्यावहारिकप्रयोगेषु GPTQ इति प्रसिद्धेषु ४-बिट् क्वाण्टाइजेशन-विधिषु अन्यतमम् इति वक्तुं शक्यते ।

एतत् असममित-क्वाण्टीकरणस्य उपयोगं करोति तथा च स्तर-स्तरं संसाधयति, अग्रिम-स्तरं प्रति गमनात् पूर्वं प्रत्येकं स्तरं स्वतन्त्रतया संसाधयति:


अस्मिन् स्तर-स्तर-क्वाण्टीकरण-प्रक्रियायां प्रथमं स्तरानाम् भारं विलोम-हेसियन-मैट्रिक्स-रूपेण परिवर्तयति । विलोम हेसियन-मात्रिका मॉडल-हानि-कार्यस्य द्वितीयं व्युत्पन्नं भवति तथा च प्रत्येकं भार-परिवर्तनस्य प्रति मॉडल-निर्गमस्य संवेदनशीलतां प्रतिनिधियति ।

सरलतया वक्तुं शक्यते यत्, एतत् मूलतः प्रत्येकस्मिन् स्तरे भारानाम् महत्त्वं (विपर्ययमहत्त्वं) दर्शयति ।

हेसियन-मात्रिकायां लघुमूल्यभाराः अधिकं महत्त्वपूर्णाः सन्ति यतोहि एतेषु भारेषु लघुपरिवर्तनेन आदर्शप्रदर्शने महत्त्वपूर्णपरिवर्तनं भवितुम् अर्हति


विलोमहेसियनमात्रिकायां न्यूनमूल्यानि अधिक "महत्त्वपूर्ण" भारस्य प्रतिनिधित्वं कुर्वन्ति

तदनन्तरं वयं भारमात्रिकायाः ​​प्रथमपङ्क्तिं परिमाणं विगुणितञ्च कुर्मः :


एषा प्रक्रिया अस्मान् क्वाण्टीकरणदोषस्य (q) गणनां कर्तुं शक्नोति, यस्य वयं पूर्वं गणितस्य विलोमहेसियनमूल्यस्य (h_1) उपयोगेन भारं कर्तुं शक्नुमः ।

मूलतः वयं भारानाम् महत्त्वस्य आधारेण भारित-क्वाण्टीकृत-दोषं निर्मामः :


तदनन्तरं वयं एतत् भारित-क्वाण्टीकरण-दोषं पङ्क्तौ अन्येषु भारेषु पुनः वितरामः । एतेन जालस्य समग्रकार्यक्षमता, उत्पादनं च निर्वाहयितुं साहाय्यं भवति ।

यथा, यदि द्वितीयभारस्य (अर्थात् x_2=0.3) कृते एतत् कुर्मः तर्हि द्वितीयभारस्य (h_2) विलोमहेस्सियन् इत्यनेन क्वाण्टीकरणदोषं (q) गुणयित्वा तस्मिन् योजयामः :


तदनन्तरं दत्तपङ्क्तौ तृतीयभारस्य कृते समानं कार्यं निरन्तरं कुर्वन्तु :


भारित-क्वाण्टीकरण-दोषस्य q पुनर्वितरणस्य एषा प्रक्रिया तावत्पर्यन्तं पुनरावृत्तिः भवति यावत् सर्वेषां मूल्यानां मात्राकरणं न भवति ।

एषा पद्धतिः कार्यं करोति यतोहि भाराः प्रायः परस्परं सम्बद्धाः भवन्ति । अतः यदा कस्यचित् भारस्य क्वाण्टाइजेशनदोषः भवति तदा तदनुसारं सम्बन्धितं भारं विलोमहेसियनद्वारा अद्यतनं भविष्यति ।

GGUF

यद्यपि GPTQ GPU इत्यत्र सम्पूर्णं बृहत्भाषाप्रतिरूपं (LLM) चालयितुं उत्तमः क्वाण्टाइजेशनविधिः अस्ति तथापि यदि तत्सम्बद्धाः हार्डवेयरस्थितयः नास्ति तर्हि LLM इत्यस्य कोऽपि स्तरः GGUF इत्यस्य माध्यमेन CPU इत्यत्र अपि अवरोहणं कर्तुं शक्यते

इदं विडियो मेमोरी (VRAM) इत्यस्य अभावं पूरयितुं CPU तथा GPU इत्यत्र एकस्मिन् समये मॉडल् चालयितुं तुल्यम् अस्ति ।

क्वाण्टीकरणविधिः GGUF बहुधा अद्यतनं भवति तथा च क्वाण्टीकरणबिट्-विशिष्टसङ्ख्यायाः उपरि निर्भरं भवति, परन्तु मूलभूतः सिद्धान्तः निम्नलिखितरूपेण अस्ति ।

प्रथमं, दत्तस्य स्तरस्य भारः "सुपर-ब्लॉक्" इति विभक्तः भवति, येषु प्रत्येकस्मिन् "उप-ब्लॉक्" इति समुच्चयः भवति । एतेभ्यः "उप-खण्डेभ्यः" वयं स्केल-कारकं (s) अल्फा-मूल्यं च गणयामः :


दत्तं "उप-खण्डं" परिमाणं कर्तुं, भवान् पूर्वं उल्लिखितं absmax मात्राकरणं उपयोक्तुं शक्नोति, दत्तं भारं स्केलिंग् कारकेन (s_sub) गुणयित्वा:


स्केल कारक s_sub इत्यस्य गणना "उप-खण्डे" सूचनायाः उपयोगेन भवति, परन्तु "super-block" इत्यस्मिन् सूचनायाः s_super इत्यस्य उपयोगेन क्वाण्टीकृतं भवति:


सारांशेन, एतत् खण्ड-खण्ड-मात्राकरणं "उप-खण्डस्य" (s_sub) स्केल-कारकस्य मात्रानिर्धारणाय "सुपर-खण्डस्य" (s_super) स्केल-कारकस्य उपयोगं करोति

प्रत्येकस्य स्केल-कारकस्य क्वाण्टाइजेशन-स्तरः भिन्नः भवितुम् अर्हति, तथा च "सुपर-ब्लॉक"-स्केल-कारकाणां सामान्यतया "उप-ब्लॉक"-स्केल-कारकाणां अपेक्षया अधिका सटीकता भवति

एतत् दर्शयितुं अनेकाः क्वाण्टाइजेशनस्तराः (२-बिट्, ४-बिट्, ६-बिट् च) अन्वेषयामः ।


क्वाण्टीकरणप्रकारस्य आधारेण शून्यबिन्दुस्य समायोजनार्थं अतिरिक्तं न्यूनतमं मूल्यं (m) अपि आवश्यकं भवति, एतेषां क्वाण्टाइजेशनं भवति तथा च स्केलकारकं (s) अपि भवति ।

भाग 4: परिमाणात्मक जागरूकता प्रशिक्षण (QAT) 1.1.

तृतीयभागे प्रशिक्षणानन्तरं प्रतिरूपस्य परिमाणं कथं करणीयम् इति वर्णितम् अस्ति । अस्य पद्धतेः दोषः अस्ति यत् अस्मिन् वास्तविकप्रशिक्षणप्रक्रियायाः गणना न भवति ।

अत्रैव परिमाणात्मकजागरूकताप्रशिक्षणं (QAT) उपयोगाय भवति । प्रशिक्षणोत्तर-मात्राकरणस्य (PTQ) विपरीतम्, QAT इत्यस्य लक्ष्यं प्रशिक्षणस्य समये मात्राकरणप्रक्रियायाः ज्ञातुं भवति ।


QAT PTQ इत्यस्मात् अधिकं सटीकं भवति यतोहि प्रशिक्षणप्रक्रियायाः समये क्वाण्टाइजेशनं पूर्वमेव गृह्यते । अत्र कथं कार्यं करोति :

प्रशिक्षणप्रक्रियायाः कालखण्डे तथाकथितं "नकली" क्वाण्टाइजेशनं प्रवर्तते । यथा, प्रथमं भारानाम् परिमाणं INT4 मध्ये, ततः पुनः FP32 मध्ये विगुणीकरणं कुर्वन्तु:


एषा प्रक्रिया प्रशिक्षणचरणस्य समये हानिगणनायां भारस्य अद्यतनीकरणे च क्वाण्टाइजेशनदोषं गृह्णीयात् इति मॉडलं शक्नोति ।

यथा अधोलिखिते चित्रे दर्शितं, QAT क्वाण्टीकरणदोषाणां न्यूनीकरणाय "व्यापक" न्यूनतमस्य सन्दर्भे हानिमूल्यं अन्वेष्टुं प्रयतते, यतः "संकीर्ण" न्यूनतमाः प्रायः बृहत्तराणि क्वाण्टीकरणदोषान् जनयन्ति


पृष्ठप्रसारस्य समये क्वाण्टाइजेशनं न विचार्यते इति कल्पयित्वा, ढाल-अवरोह-प्रक्रिया लघुतम-हानि-मूल्येन सह भारस्य चयनं करिष्यति । तथापि यदि "संकीर्ण" न्यूनतमे अस्ति तर्हि तत् बृहत्तराणि क्वाण्टीकरणदोषाणि प्रवर्तयिष्यति ।

तस्य विपरीतम्, यदि वयं क्वाण्टाइजेशनं विचारयामः तर्हि "व्यापक" न्यूनतमेषु भिन्नं अपडेट् वेट् चयनं भविष्यति, यत्र क्वाण्टाइजेशनदोषः बहु लघुः भवति ।


अतः यद्यपि PTQ पद्धतेः उच्चसटीकतायां (उदा. FP32) न्यूनहानिमूल्यं भवति तथापि QAT इत्यस्य न्यूनसटीकतायां (उदा. INT4) अपि न्यूनहानिमूल्यं भवति, यत् वयं अनुसरणं कुर्मः

१-बिट युगः बिटनेट्

वयं पूर्वं दृष्टवन्तः यत् क्वाण्टाइजेशन-सटीकतां 4-बिट्-पर्यन्तं न्यूनीकर्तुं पूर्वमेव अत्यन्तं लघु अस्ति, परन्तु यदि वयं तत् अधिकं न्यूनीकरोमः तर्हि किम्?

अत्रैव BitNet आगच्छति, एतत् एकस्य मॉडलस्य भारं एकस्य बिट् इत्यस्य रूपेण प्रतिनिधियति, -1 वा 1 वा, तथा च एतत् quantization प्रक्रियां प्रत्यक्षतया Transformer आर्किटेक्चरमध्ये इन्जेक्शन् कृत्वा करोति

Transformer आर्किटेक्चर अधिकांशस्य LLMs इत्यस्य आधारः अस्ति तथा च रेखीयस्तराः सम्मिलिताः गणनाः सन्ति:


एते रेखीयस्तराः सामान्यतया उच्चतरसटीकतायां प्रतिनिधित्वं प्राप्नुवन्ति, यथा FP16, तथा च यत्र अधिकांशः भारः स्थितः भवति ।

BitNet एतेषां रेखीयस्तरानाम् स्थाने BitLinear स्तराः स्थापयति:


BitLinear स्तराः सामान्यरेखीयस्तरानाम् इव कार्यं कुर्वन्ति, उत्पादनस्य गणनां कर्तुं सक्रियीकरणमूल्यैः भारानाम् गुणनं कुर्वन्ति ।

परन्तु अन्तरं अस्ति यत् BitLinear स्तरः केवलं 1 बिट् इत्यस्य उपयोगं करोति मॉडलस्य भारं प्रतिनिधितुं, तथा च सक्रियीकरणमूल्यं प्रतिनिधितुं INT8 इत्यस्य उपयोगं करोति:


BitLinear परताः, क्वाण्टीकरण-जागरूकप्रशिक्षणम् (QAT) इव, भारस्य सक्रियीकरणस्य च क्वाण्टीकरणप्रभावस्य विश्लेषणार्थं प्रशिक्षणस्य समये एकप्रकारस्य "नकली" क्वाण्टाइजेशनं कुर्वन्ति:


BitLinear इति पदे पदे अवगच्छामः ।

भार परिमाणीकरण

प्रशिक्षणस्य समये भाराः INT8 इति रूपेण संगृह्यन्ते ततः signum function इति मूलभूतरणनीत्याः उपयोगेन 1 बिट् यावत् क्वाण्टीकृताः भवन्ति ।

मूलतः, 0 इत्यत्र केन्द्रीकृत्य भारवितरणं चालयति, ततः 0 तः न्यूनानि सर्वाणि मूल्यानि -1 तः 0 तः अधिकानि सर्वाणि मूल्यानि च 1 पर्यन्तं नियुक्तं करोति:


तदतिरिक्तं, एतत् एकं मूल्यं β (mean absolute value) इत्यस्य निरीक्षणं करोति, यस्य उपयोगं वयं पश्चात् विलोम-क्वाण्टीकरण-प्रक्रियायां करिष्यामः ।

सक्रियण मात्राकरणम्

सक्रियणानां परिमाणं निर्धारयितुं, BitLinear निरपेक्ष अधिकतममूल्यविधिं (absmax) FP16 तः INT8 मध्ये सक्रियकरणं परिवर्तयितुं सक्षमं करोति यतः तेषां कृते अधिकसटीकतया मैट्रिक्सगुणनस्य (×) आवश्यकता भवति


तदतिरिक्तं, एतत् एकं मूल्यं α (अधिकतमं निरपेक्षं मूल्यं) रक्षति, यस्य उपयोगं वयं पश्चात् विगुणीकरणप्रक्रियायां करिष्यामः ।

विलोम क्वाण्टीकरणम्

वयं α (सक्रियीकरणानां अधिकतमं निरपेक्षं मूल्यं) तथा β (भारानाम् औसतनिरपेक्षं मूल्यं) इत्येतयोः निरीक्षणं कुर्मः, येन सक्रियीकरणानां पुनः FP16 यावत् विगुणीकरणे सहायता भविष्यति

निर्गमसक्रियीकरणं {α, γ} इत्यस्य उपयोगेन पुनः स्केल क्रियते यत् तेषां मूलसटीकतायां विगुणीकरणं भवति:


इयं प्रक्रिया तुल्यकालिकरूपेण सरलं भवति तथा च प्रतिरूपं केवलं द्वयोः मूल्ययोः -1 अथवा 1 इत्यनेन प्रतिनिधित्वं कर्तुं शक्नोति ।

एतेन पद्धत्या लेखकाः अवलोकितवन्तः यत् यथा यथा मॉडलस्य आकारः वर्धते तथा तथा १-बिट् प्रशिक्षणस्य FP16 प्रशिक्षणस्य च मध्ये कार्यक्षमतायाः अन्तरं लघु लघु भवति

परन्तु एतत् केवलं बृहत्तरमाडलयोः (>30B पैरामीटर्स्) कृते एव प्रवर्तते, लघुमाडलयोः मध्ये अन्तरं अद्यापि बृहत् अस्ति ।

सर्वे एलएलएम १.५८ बिट् भवन्ति

पूर्वं उल्लिखितानां स्केलबिलिटी-समस्यानां उन्नयनार्थं BitNet 1.58b इति प्रवर्तनं कृतम् ।

अस्मिन् नूतने दृष्टिकोणे आदर्शस्य प्रत्येकं भारं न केवलं -१ वा १ वा भवितुम् अर्हति, अपितु ० अपि ग्रहीतुं शक्नोति, येन प्रत्येकं चरं त्रिगुणं भवति ।

रोचकं तत् अस्ति यत् केवलं 0 योजयित्वा सरलं कार्यं भवति यत् BitNet इत्यस्य महतीं सुधारं करोति तथा च गणनाप्रक्रियायाः त्वरिततां करोति ।

० शक्तिः

0 योजयित्वा किमर्थं महत्त्वपूर्णः सुधारः भवति ?

एतस्य सम्बन्धः आकृतिगुणनेन सह अस्ति!

प्रथमं आकृतिगुणनस्य मूलभूतकार्यं अन्वेषयामः ।

आउटपुट् इत्यस्य गणनायां वयं weight matrix इत्यस्य input vector इत्यनेन सह गुणयामः । अत्र भारमात्रिकायाः ​​प्रथमस्तरस्य प्रथमपङ्क्तिगुणनस्य दृश्यीकरणं भवति ।


अस्मिन् गुणने द्वौ क्रियाः सन्ति, एकं भारं निवेशेन सह गुणयित्वा ततः सर्वाणि योजयित्वा ।

तस्य विपरीतम्, BitNet 1.58b गुणनस्य क्रियां परिहरितुं सफलः भवति, यतः त्रिमूल्यानां भाराः मूलतः निम्नलिखितम् वदन्ति ।

- 1: अहम् एतत् मूल्यं योजयितुम् इच्छामि

- 0: अहम् एतत् मूल्यं न इच्छामि

- -1: अहम् एतत् मूल्यं हृतुम् इच्छामि

अतः यदि भवतः भाराः 1.58 बिट् यावत् क्वाण्टीकृताः सन्ति तर्हि भवन्तः केवलं योजनं कर्तुं प्रवृत्ताः सन्ति:


एतेन न केवलं गणनाः महत्त्वपूर्णतया त्वरिताः भवन्ति, अपितु विशेषता-छननम् अपि भवति ।

दत्तं भारं 0 इति सेट् करणं 1-बिट् इव इनपुट् मूल्यं योजयितुं घटयितुं वा न अपितु इनपुट् इत्यस्य अवहेलनायाः बराबरम् अस्ति ।

परिमाणं कुरुत

भारस्य मात्राकरणं कर्तुं BitNet 1.58b इत्यनेन mean absolute value quantization (absmean) इत्यस्य उपयोगः भवति, यत् अस्माभिः पूर्वं दृष्टस्य अधिकतमस्य absolute value quantization (absmax) इत्यस्य एकः प्रकारः अस्ति

केवलं भारवितरणं संपीडयति तथा मूल्यानां परिमाणं निर्धारयितुं निरपेक्षमाध्यस्य (α) उपयोगं करोति । ततः तान् -१, ० वा १ यावत् गोलं कुर्वन्तु:


BitNet इत्यस्य तुलने, सक्रियीकरणस्य मात्राकरणं एकं पक्षं विहाय समानम् अस्ति: [0, 2ᵇ−1] परिधिपर्यन्तं सक्रियीकरणानां स्केलीकरणस्य स्थाने, वयं [-2ᵇ−1, 2ᵇ−1] यावत् स्केल कर्तुं अधिकतमं निरपेक्षमूल्यविधिं उपयुञ्ज्महे

सारांशतः १.५८-बिट् क्वाण्टाइजेशनं मुख्यतया द्वौ तकनीकौ सम्मिलितौ स्तः ।

- त्रिमूल्यं प्रतिनिधित्वं निर्मातुं 0 योजयन्तु [-1, 0, 1] ।

- भारस्य निरपेक्षं माध्यं परिमाणीकरणम्

बिटनेट् पत्रस्य एषः निष्कर्षः अस्ति यत् "13B BitNet b1.58 विलम्बतायाः, स्मृतिप्रयोगस्य, ऊर्जायाः उपभोगस्य च दृष्ट्या 3B FP16 LLM इत्यस्मात् अधिकं कार्यक्षमम् अस्ति ।"


पेपर पता: https://arxiv.org/abs/2402.17764

केवलं १.५८ गणनादक्षबिट्-सहितं वयं लघुप्रतिरूपं प्राप्नुमः ।

सन्दर्भाः : १.

https://newsletter.maartengrootendorst.com/p/एक-दृश्य-मार्गदर्शिका-को-क्वांटाइजेशन