کار معنادار و نمادگرایی در مقابل هوش مصنوعی متکی بر روش آماری
تبیین مفهوم بردار و تنسور
بخش دوم که بهشدت پیشرفت کرده و میکند، این است که هوش، پایهمحور است، به این معنا که درک معنا و فهم معنا ندارد، اما عملیات معنادار به سرعت و بسیار انجام میدهد. ملازمهای نیست بین عملیات معناداری که هوش مصنوعی انجام میدهد با اینکه درک و فهم معنا هم داشته باشد. فهم نفسانی ندارد، ولی رفتار مبتنی بر معنادار بودن را انجام میدهد.
برای اینکه بخش دوم واضحتر شود، مبادیای را خدمت شما عرض کردهام. شما هم پیِ آن را بگیرید و کامل کنید. در جلسه قبل مفهوم بردار، فاصله بین دو بردار، و فضاهای برداری را در قالب مثال عرض کردم. عرض کردم مثلاً شما یک سنگی را دست راست میبرید یا چپ میبرید. دست راست و چپ یک پارامتر بود. میگفت سنگی را دست راست یا چپ ببرید. محور x بود. همه دانشآموزان با این محور آشنا هستند. خود این محور x یک بردار است. محور y هم یک بردار است. این دو محور، ضرب هندسی میشوند و یک صفحه درست میکنند. دو خط است. محور x بردار عددی است. البته اینکه حتماً باید درایههای بردارهای عددی محدود باشد، باید ببینیم. اگر محدود باشد ما محور x را طور دیگری تعریف میکنیم. اما اگر بگوییم نه، میتوانیم یک برداری داشته باشیم که فراتر از اعداد گویا و بردار پیوسته اعداد حقیقی است؛ خب این محور x میتواند یک بردار باشد. محور y هم همینطور میشود؛ بهعنوان یک خط. بعد اگر روی هم عمود شدند یک فضای برداری دو بُعدی پدید میآید.
جلسه قبل عرض کردم که وقتی دو پارامتر را ردیف کنید، مثلاً میگویید دو متر دست راست برو، سه متر هم پایین برو، چون دو پارامتر را اعمال میکنید، فضای شما دو بُعدی میشود و یک بردار برای شما درست میشود. خود محور x یک بردار میشود؛ با توضیحاتی که مبادی آن را قبول کنیم یا نه، فقط میخواهم ذهن جلو برود.
در ادامه، محور z هم آمد. عرض کردم میتوانیم بگوییم این سنگ را دومتر دست راست ببر، درحالیکه سه متر پایین میبری و درحالیکه پنج متر هم جلو میبری. الآن سه پارامتر شد. وقتی سه تا شد، حتماً شما با فضای سه بُعدی مواجه میشوید. قبلش فضای دو بُعدی بود ولی در اینجا با فضای سه بُعدی مواجه میشوید. مثالهای دیگری هم زدیم و جلو رفتیم. گفتیم مثلاً چند سنگ است؛ یکی را دو ساعت با سرعت کذا ببر. دیگری را یک ساعت با سرعت کذا ببر. الآن در پارامترهای اول و دومش، متر متغیر شد. اگر بگوییم سه متر ببر، نمیتوانیم بگوییم یکی را با این سرعت دو ساعت ببر. این دیگر دست ما نیست که بگوییم سه متر. خب معنایش این است که الآن پارامتر اول تبدیل به a شد. یعنی متغیر شد. به محض اینکه در یک بردار یا یک ماتریس عددتان در مراحلی تاب این را داشت که متغیر شود، آن مفهوم پربار تنسور مطرح میشود. تمایز اصلی تنسور با قبلیهای خودش به همین است. درست است که شما یک بردار را میگویید تنسور یک بعدی است و یک عدد اسکالر منفرد را هم میگویید تنسور صفر است، یک ماتریس را هم میگویید تنسور دو بُعدی است؛ اینها درست است، اما تفاوت این است که ریخت تنسور طوری است که در دلش متغیر هست؛ بالاتر از متغیر، تابع است و همه اینها را میپذیرد. این مطلب خیلی مهمی است که در آن گفتوگو با مدل هوش مصنوعی هم آن آقا پرسیده بودند و مثالهایی را هم زده بود.
علی ای حال این مفهوم بسیار مهمی است. یعنی اساساً همه بحثهای امروزی، روی بردار، ماتریس، بهخصوص تنسور با این نگاه که سر و کار ما در تنسور با صرف عدد نیست. ساختارها، عددی است، اما ظرفهای عددی و چیزهایی که عنصر ریاضی هستند ولی الآن یک داده خاصی ندارند. بنابراین اگر یک سنگ را با سرعتی بردید، پارامترهای اول و دوم محو نشده، ولی از حالت یک عدد بودن درآمده است. شما میگویید سه سنگ داریم، از نقطه صفر شروع کن و یکی را با سرعت پنجاه کیلومتر ببر؛ کجا ببر؟ سه پارامتر اول محفوظ است. دست راست، به طرف بالا و به طرف جلو ببر. دیگری را چطور ببر؟ دست چپ، به طرف پایین و به عقب ببر. در این فضا شما دارید سنگها را میبَرید. یعنی پارامترهای محور x و y و z اصلش جایی نرفته، بهعنوان یک بُعد نمود دارد، ولی از یک عدد ثابت به یک عدد متغیر تبدیل شده است.
آنچه که در جلسه قبل عرض کردم و مهم بود، این بود: وقتی شما این سنگها را میبردید، بعد از اینکه یک بردار حاصل شد، میگفتید فاصله این دو سنگ چقدر است؟ کلمه فاصله سنگها در چه چیزی رسم میشد؟ فاصله در فضایی بود که پارامتر x و y و z و همچنین سرعت و حرکت ترسیم کرده بود؛ در این فضا بود و فاصله هم فیزیکی میشد. اما همانجا برای اینکه روشنتر شود، عرض کردم در اثر حرکت، قیمت یکی از این سنگها کم میشود. مثلاً در حرکت زیاد، قیمتش کمتر میشود. دیگری برعکس است؛ با حرکت، قیمتش زیاد میشود. الآن که این سنگها را در فاصله بردید، گاهی چنین است که این دو را طوری بردهاید که نزدیک هم هستند، ولی چون جنس سنگها تفاوت دارد، قیمت یکی در اثر بردن کم میشد و دیگری قیمتش زیاد میشد. از حیث مکان، این دو سنگ، نزدیک هم هستند، اما از حیث قیمت، فاصله برداری که یک بُعدش قیمت سنگ است، متفاوت میشود.
تأکیدی که من داشتم این بود که حالا درک کنیم که قیمت سنگ، یک بُعد است در محاسبه کردن آن چیزی که آخر کار میخواهیم بهعنوان تعیین وزن برای سنگ الف ذکر کنیم. این خیلی مهم است. الآن دیگر بُعد، طول و عرض و عمق نیست. قیمت، بُعد است. فاصله دو قیمت در یک فضای برداری، اصلاً ربطی به فاصله دو سنگ در فضای فیزیکی ندارد. چه بسا دو سنگ را تکان دادیم و از نظر فیزیکی بسیار از هم دور شدند، اما قیمتشان به هم نزدیک است و در بُعد قیمت، نزدیک هستند. چرا؟ چون ریختشان اینطور است. این مطالب جلسه قبلی بود.
شاگرد۴: اینها محدودیت ندارد؟ مثلاً رنگ و حرارت و ….
استاد: نه، عرض کردم مدلهای زبانی بزرگ برای همین است. هفتصد و شصت و یک میلیارد پارامتر دارد. اینهایی که من گفتم چهار-پنج مورد در بُعددار کردن بود. وقتی شما از آن سؤال میکنید، نرمافزار چینی که روی دست آمریکاییها زد و سختافزار کم را برای راندمان بالا استفاده کرد، ریاضیدانهایی بودند که با ابتکار ریاضی کاری کرده بودند که وقتی از دیپ سیک سؤال میپرسید، به جای اینکه ۷۶۰ میلیارد پارامتر را فعال کند تا بتواند جواب شما را بدهد، در ابتدا حدود ۷۵ میلیارد را فعال میکند و جواب شما را میدهد. اگر بعداً نیاز شد، در مراحل بعدی، بقیه پارامترها را فعال میکند. این خیلی مهم بود و صدا کرد.
بنابراین یک برداری که سرسامآور بُعد و درایه داشته باشد، هیچ مشکلی ندارد. همچنین تنسورها. عرض کردم آلبوم فیلمها، پنج-شش بُعدی بود. وقتی تنسور شما شش بُعدی شد، یک آلبوم خوب فیلم رنگی کامل دارید و اصلاً نیازی به تنسور هفت بُعدی ندارید. اما وقتی الآن شما میخواهید پردازش زبان کنید، با یک تنسور شش بُعدی کارتان درنمیرود و خیلی باید آن را گسترده کنید.
تا اینجا، بردار و فضای برداری به معنای بسیار سادهای برای شروع کار روشن شد. حالا در فضای بَعدی باید ببینیم کاری که اینها در مرحله دوم انجام میدهند، در عملیات آنها چه چیزی صورت میگیرد؟ تا وقتی بعداً بخواهیم قصد پایهمحور و … را بررسی کنیم، در این هوشهایی که امروز هستند، تفاوتهایی دارند یا ندارند.
جلسه قبل در صدد بودیم تا مقدمات «Embedding» را عرض کنیم. شما در یک پیکره متنی میآیید…؛ الآن زمان ما پیکره متنی خیلی مهم شده است و زمان ما تماماً روی این میگردد. ولی گمان من این است که الآن بخاطر اطلاعات زیاد و جذابیتی که دارد، خیلی سر و صدا دارد، اما طولی نمی کشد آنچه که نیاز بشر است و بشر میفهمد کارآیی دارد، از این مدلهای زبانی عظیم، فاصله میگیرند. چون کاری که این مدلها میکنند، حدس کلمه است یا در «LCM»، حدس جمله است. ولی مهم این است که روش آنها، آماری است. یعنی کل اطلاعات هر چه در اینترنت در زبانهای مختلف بوده را به او دادهاند و وقتی از این هوش مصنوعیها سؤال میکنید، چون او مبدلها و مترجمهای قویای دارد و کل اطلاعات را دارد، لذا میبینید در یک مکالمه زبان چینی که مثلاً استاد یک مثال قشنگی به ذهنش آمد و برای شاگرد خودش به زبان چینی گفته، الآن فوری همان مثال را از زبان چینی به فارسی برای شما میگوید. یعنی کل اطلاعات به همه زبانها نزد او موجود است و بهراحتی هم ترجمه میکند. در زیر ثانیه مطالب را از این زبان به آن زبان ترجمه میکند؛ خیلی میشود. یعنی شما ببینید چقدر مطالب در فارسی هست که در انگلیسی نیست و آن، همینها را سریع به انگلیسی ترجمه میکند. یا در انگلیسی هست و در فارسی نیست. در چینی هست و در دیگری نیست. سریع، اینها را تبدیل میکند. این یک corpus شده است؛ پیکره زبانی بسیار مهم است و اینکه چطور یک پیکره زبانی را آنالیز و تحلیل کنیم. اما روش اصلی این کاری که الآن صورت میگیرد -که با مقصود ما که در جلسات پارسال گفتیم خیلی فاصله دارد- روش زبانی و آماری است. یعنی با آمار، تعیین میکند که من چطور جواب شما را بدهم. توضیح آن فی الجمله در دو-سه جلسه صحبت شد.
پارسال اتاق چینی را عرض کردیم. در اتاق چینی چه میگذشت؟ در اتاق چینی، کسی بود که زبان چینی بلد نبود. اما بازی با حروف الفبای چینی را بلد بود. بازی با نمادها را بلد بود. شما رفتار کسی که زبان چینی را بلد نبود اما قواعد جا به جا کردن نمادها و زبان چینی را بلد بود، عمل او را میگفتید که فهم معنا ندارد، اما چون طبق قواعد زبان چینی داشت عمل میکرد، میگفتید رفتار او معنادار است. مثال معادلی که عرض کردم چه بود؟ جدول ضرب بود. طفلی بود که به او میگفتید ناخت را روی این جدول بکش. اصلاً عدد نمیدانست و ضرب نمیشناخت. فقط یک شکل میدید که با ناخن روی آنها میکشید. رفتار طفل، معنادار بود یا نبود؟ رفتار طفل، معنادار بود، ولو خودش درک معنا نمیکرد.
نکتهای که مهم است این است که روش جدید آماری که هوش مصنوعی با آن به شما جواب میدهد، اصلاً رفتار معنادار نیست. چرا؟ البته بعداً به معنا نزدیک میشود؛ «Embedding»، دارد همین کار را میکند. اصل روش آماری، معنادار نیست. چرا؟ چون او نمیگوید شما با نماد چه کنید…. اصلاً تفاوت نمادگرائی با اتصالگرائی و شبکههای عصبی در همین است. در نمادگرائی، شما نمادها را دستکاری میکنید. اما در هوش مصنوعی اتصال-مبنا و شبکههای عصبی، با آمار سر و کار دارید. مثلاً او میبیند کلمه «پیکان» در کل استعمالاتش چند جا به کار رفته است، و با چه کلمات دیگری همراه شده است. او فقط به آمار میگوید مثلاً کلمه «پیکان» با کلمه «چرخ» در متنها با هم به کار رفتهاند. آمارگیری کرده است. مثلاً میگوید در تمام متون بشر، چند میلیون بار کلمه «پیکان» به کار رفته، در همان پیکره، مقدار کمتر یا بیشتری کلمه «چرخ» هم به کار رفته است. اینکه با آمار یک ارتباطی از حیث عدد در کاربرد «پیکان» و «چرخ» میبیند، اینجا نمیتوانید بگویید او دارد رفتار معنادار انجام میدهد. فقط دارد آمار میگیرد.
شاگرد۵: الآن هوش مصنوعی، ایمیل شما را دارد، اطلاعات روانشناسی هم دارد….
استاد: آنها برای مراحل بعدی است. من صرفاً روش آماری را دارم میگویم. مقدمهچینی میکنم برای «Embedding». فرمایش شما خیلی بَعد از آن است. فعلاً با روش آماری به وسیله شبکههای عصبی مصنوعی، هر کلمهای را به یک بردار تبدیل کردهاید. هنوز هم «Embedding» مانده است. فعلاً شما هر کلمهای را به یک بردار تبدیل کردهاید؛ در جلسه قبل مثالی را عرض کردم و گفتم شما متن جواهر را بهعنوان یک پیکره متنی انتخاب میکنید. بعد میگویید واژه «طواف». شما واژه «طواف» را در پیکره جواهر به یک بردار تبدیل میکنید، با پارامترهای برداری که عرض کردم. مثلاً اول پنج تا میگویید. بعد سه تا میگویید. دیگری صفر تا، تا یک جا که میرسید و میگویید دو هزارتا. بعد میگویید ردیفهای این بردار، ردیفهای کتابهای فقهی است. "طواف" بهعنوان یک عنصر در پیکره جواهر، اول در کتاب طهارت فقط یک بار آمده است. در کتاب صلات سه بار آمده است. تا اینکه به کتاب حج میرسید و میبینید پنج هزاربار آمده است. با این آماردادن کاربرد "طواف" در جواهر، هیچ تبادل معنایی نیست. ولذا بعداً شما میبینید با «فی» و «من» هم سر و کاردارید. چون در جواهر «من» هم هست و فقط «طواف» نیست. بعداً با ترفندهایی باید کلمات پرکاربرد [مثل "فی" و"من"] را حذف کنید و کلمات بهغایت کم کاربرد را هم با ضوابطی حذف کنید.
شاگرد۵: با این آمار به چه چیز میرسد؟
استاد: با این آمار، هر کلمه، یک بردار میشود. ببینید الآن "طواف" یک بردار شد. یعنی وقتی شما طواف میگویید، یک لیستی از اعداد در کنارش هست. بعداً نُرم میگیرید، یعنی با فرمولهای مختلفی، از هر برداری نُرمگیری میکنید. در جلسه قبل عرض کردم. بعد از اینکه نُرمگیری کردید، آن وقت میگویید این «طواف»، نسبت به پیکره جواهر یک صدم درصد است. این، عددی میشود؛ بردار او را با یک نُرم به یک عدد تبدیل کردهاید. میگویید وزن «طواف» در پیکره جواهر، این اندازه است. جورواجور هم هست. یعنی هر فرمولی، خروجی خاص خودش را دارد.
از این عددی که شما از بردار "طواف" در پیکره جواهر به دست میآورید، بعداً با این اعداد به فاصلهها و ارتباطات معنایی میرسید. بعداً میبینید «طواف» و «سعی» از حیث ستونهای کاربرد و تعداد، در بردار پنجم که کتاب حج بود، بیشتر با هم میآیند. بعداً وزنها را در فضای برداری قرار میدهید و آن «Embedding» که ما به دنبالش هستیم، همینجا میآید. یعنی شما به واسطه اعمال این هنر که هنر بسیار مهمی هم بوده، میفهمید کدام کلمات از حیث معنا نزدیک هم هستند. البته او فقط با آمار و «Embedding» میگوید. او درک معنا ندارد. ولی این اندازه میداند که فضای برداری مثلاً «طواف» نزدیک هم هستند. در فضای برداری، «طواف» از «قصاص» خیلی دور است. «قصاص» جایی است که فضایی که برای خودش انتخاب میکند، خیلی فاصله دارد تا فضای «طواف» و «سعی».
شاگرد۵: اگر به او گفتم فرق «طواف» و «سعی» چیست، براساس همین آماری که دارد به من جواب میدهد؟
استاد: مشکلی که هست، این است که چون آماری رفتار میکند، به جایی میرسد که رندوم انتخاب میکند. اگر جعبه سیاه هم یادتان باشد، همین بود. مشکل جعبه سیاه مهم بود. چون او آماری کار میکند و متنها هم گسترده است، در یک جاهایی وقتی میخواهد جواب بدهد…؛ گاهی اساتید گفتهاند - من تجربه سؤال کردن از آنها را ندارم - ولی دیدم کسانی که تجربه داشتهاند، میگویند وقتی یک سؤال را دوبار میپرسید، دو گونه جواب میدهد. چرا؟ بهخاطر مسأله جعبه سیاه است. جعبه سیاه چکار میکند؟ یادگیری عمیق، این مشکل را پیش آورد. در یادگیری عمیق، چون لایههای طولانی هست و در این لایهها، توضیحپذیر نیست، نمیتوانید تحلیلش کنید. یعنی شما نمیتوانید پیجویی کنید که چرا این کار را کرد. روی صِرف آمار جلو میرود. حالا خوب متوجه میشوید که وقتی روی مبنای آمار جلو میرود و توضیحپذیر نیست، ولو خودش درک معنا ندارد، اما حتی نمیتوانید بگویید رفتار معنادار دارد، بلکه حتی رفتار معنادار هم ندارد. چون فقط با آمار و نزدیکی آمار کار میکند. این مهم است. ولذا ما هم که الآن بهدنبال معنا بودیم، تا زمانی که این مدلهای زبانی وسیع و بزرگ -که از آمار استفاده میکنند- هستند، به آن نمیرسیم. البته به گمانم بعداً عوض میشود. استدلالات، خلاقیت، درک معنا و… را بشر میبیند و میخواهد در هوش مصنوعی پیاده کند. فعلاً این، برای آنها خیلی جذابیت داشته است.
شاگرد۶: رابطه بین اعداد را نمیدانست و هر بار یک اشتباه جدیدی میکرد. به آن که گفتم چرا هر بار اشتباه میکنی، این فرمایشات شما را توضیح داد.
استاد: که من رندوم انتخاب میکنم.
شاگرد۶: بله، اینکه تو میتوانی چه چیزهایی را از من بپرسی و چه چیزهایی را نپرسی.
استاد: اینها مطالب مهمی است. وقتی شما اینها را بدانید توقعات شما بالا نمیرود. آن اوائل که DOS آمده بود، نرمافزارها هم تحت DOS بودند، مکرر برخورد کرده بودم، میآمدند و میگفتند چطور این قدر میگویند کامپیوتر جواب میدهد؟! من با چشم خودم در بحارالانوار این را دیدهام، اما وقتی جستوجو میکنیم، حدیث را نمیآورد. مکرر میشد. یکی از پیشرفتهای مهمی که در نرمافزارهای نور شد، اولینش در جامع الاحادیث بود. قبل از آن نور العتره بود که این اشکال را داشت. مثلاً ماشیننویس، کلمه مبارکه «ابراهیم» را با الف بدون همزه زده بود - خب کارکتر «إ» و «ا» تفاوت داشت - و مثلاً شما در جستوجو، آن را با همزه میزدید. یا او با همزه «إ» تایپ کرده بود، ولی شما با «ا» میزدید، جواب میآمد که نیست. او هم میگفت من خودم دیدهام و اینها به درد نمیخورد. این یک توقعی بیش از آن چیزی بود که به آن داده بودند. بعد که جامع الاحادیث آمد، میگویید تیک دقت را بردار، یعنی به او میگوید «ا» و «إ» و … را با هم بگرد، این بار دیگر جواب میدهد. الآن هم هوش مصنوعی همینطور است. یعنی وقتی شما بدانید که او چکار میکند، در آن محدودهای که کار انجام میدهد، از او توقع دارید. فریب آن را هم نمیخورید و بعداً هم ان شاء الله تکمیل میکنید.
بدون نظر