Dev Tweet – Telegram
Dev Tweet
850 subscribers
113 photos
15 videos
3 files
98 links
گعده‌ای در باب برنامه نویسی، پایتون، هوش مصنوعی و داده
Download Telegram
Dev Tweet
از اهمیت مدل جدید 405 میلیارد پارامتری جدید شرکت متا یعنی Llama3.1 همین بس که داره کپ فاصله‌ی بین مدل‌های متن-بسته(closed-source) و وزن-باز(مدلهایی که وزن‌شان را به همراه کد منتشر می‌کنند) رو از بین می‌بره. همین این اتفاقات تقریبا در یک سال افتاده از آپریل…
نکته‌ای در مورد open-weight
موقعی که در مورد کد صحبت می‌کنیم یا کد منبع بسته closed-source است یا منبع باز opensource یعنی یا سورس کد روی گیت‌هاب یا بیت‌باکت هست.
اما وقتی در مورد یک مدل AI صحبت می‌کنیم دو ضلع دیگه هم به جز سورس کد به قضیه اضافه میشه: وزن مدل‌ آموزش دیده و داده آموزش مدل.
شرکت‌ها غیرانتفاعی مثه گوگل معمولا از مدل‌هاشون مقاله چاپ می‌کنند و حرفی از پیاده‌سازی نمی‌زنند.
نهایتا سورس کد مدلهای proprietary شون رو منتشر می‌کنند ولی دیگه وزن رو کمتر منتشر می‌کنند.
و خیلی کمتر مثه mistral و meta میان مقاله + سورس کد + وزن مدل را هم منتشر می‌کنند.
و خیلی خیلی کمتر مدل‌ها دادگان آموزش خودشون رو همراه سه تای قبلی منتشر می‌کنند اینا معمولا مد‌ل‌های دانشگاهی هستند.
پس به خاطر داشته باشید سطح انتشار اطلاعات در مورد مدل‌ها سه سطحه: مقاله، سورس‌کد، وزن‌های مدل‌، داده آموزش .
👍6
شرط‌بندی در مورد آیند‌ه‌ی توسعه AI
(الایزر یودکوفسکی در مقابل پاول کریستیانو)

الایزر یودکوفسکی(Eliezer Yudkowsky) و پاول کریستیانو(Paul Christiano)، دو تا از چهره‌های سرشناس حوزه ایمنی هوش مصنوعی(AI Safety)، سال 2021 سر آینده AI شرط بستن!
می‌تونید ماجراش رو در این دو لینک بخونید. (لینک ۱ و لینک ۲)
یودکوفسکی که از بنیانگذاران موسسه تحقیقات هوش ماشینی (Machine Intelligence Research Institute) هست، مدت‌هاست درباره احتمال وقوع یه سناریوی برخاستن سریع هشدار میده.
از طرف دیگه، کریستیانو که تو زمینه ترازمندی(هم‌راستاسازی) هوش مصنوعی (AI alignment) کار می‌کنه و همچنین مخترع RLHF (تقویت یادگیری از بازخورد انسانی) که بیشتر به یه مسیر توسعه تدریجی‌تر معتقده.

موضوع اصلی شرط‌بندیشون اینه که سرعت پیشرفت قابلیت‌های هوش مصنوعی چقدر سریع خواهد بود. این بحث معمولاً با عنوان "سرعت‌های برخاستن" (takeoff speeds) مطرح میشه - برخاستن آهسته(Slow Takeoff) در مقابل برخاستن سریع(Hard/Fast Takeoff).
تصور کنید پیشرفت هوش مصنوعی مثل یه سفر به قله کوهه. برخاستن آهسته شبیه یه کوهنوردی تدریجیه، با بهبودهای پیوسته که به جامعه اجازه میده در طول مسیر خودش رو تطبیق بده. اما برخاستن سریع مثل یه پرتاب موشکیه - یه افزایش ناگهانی و احتمالاً نمایی در توانایی‌های هوش مصنوعی که می‌تونه همه رو غافلگیر کنه.
برای اینکه پیش‌بینی‌هاشون رو محک بزنن، رو یه چالش مشخص تمرکز کردن: المپیاد جهانی ریاضی (IMO). سوال اینه که آیا تا سال ۲۰۲۵، یه سیستم هوش مصنوعی می‌تونه در بالاترین سطوح این مسابقه معتبر ریاضی رقابت کنه؟

کریستیانو شرط بسته که پیشرفت سریع اتفاق نمی‌افته. اون پیش‌بینی کرده که شانس اینکه یه هوش مصنوعی بین سال‌های ۲۰۲۲ تا ۲۰۲۵ مدال طلای IMO رو ببره، کمتر از ۸ درصده. حتی درباره حل سخت‌ترین مسئله توسط AI هم بدبین‌تره و این احتمال رو زیر ۴ درصد می‌دونه.
یودکوفسکی اما طبق معمول به پتانسیل هوش مصنوعی خوش‌بین‌تره. اون شرط بسته که حداقل ۱۶ درصد احتمال داره که یه AI تا سال ۲۰۲۵ قابلیت فنی کسب مدال طلا رو داشته باشه.
این پیش‌بینی‌ها برای سال 2021 است.
چیزی که این شرط‌بندی رو جذاب می‌کنه، پیامدهای احتمالیشه. اگه واقعاً یه هوش مصنوعی اون مدال طلا رو بگیره، این فقط یه برد ساده برای یودکوفسکی تو این شرط دوستانه نیست. می‌تونه نشونه‌ای از سرعت بالاتر توسعه هوش مصنوعی نسبت به انتظارات خیلی‌ها باشه. کریستیانو گفته که همچین نتیجه‌ای می‌تونه دیدگاهش رو به طور قابل توجهی تغییر بده و احتمالاً تخمینش از احتمال یه سناریوی برداشت سریع رو تا دو برابر افزایش بده.
کریستیانو قبلاً گفته بود اگه تا سال ۲۰۲۵ شاهد کسب مدال طلای IMO توسط یه AI باشه، احتمال برخاستن سریع رو از ۳۰٪ به ۵۰٪ افزایش میده.

سال 2024 گوگل دیپ‌مایند (Google DeepMind) هم فقط یک سؤال با این دستاورد فاصله داشت.

و حالا، به نظر میرسه که این اتفاق خیلی زودتر از انتظار رخ داده! سام (Sam) آلتمن، مدیرعامل اوپن‌ای (OpenAI)، به تازگی به طور تلویحی اشاره کرده که سیستم هوش مصنوعی اونها به سطح مدال طلای المپیاد جهانی ریاضی رسیده.
این پیشرفت سریع می‌تونه نشون‌دهنده احتمال بیشتر یه "برخاستن سریع" باشه - یعنی پیشرفت هوش مصنوعی عمومی (AGI) در عرض چند دقیقه تا چند ماه، به جای سال‌ها یا دهه‌ها.
برخاستن‌های سریع نگران‌کننده هستن چون پیش‌بینی‌شون خیلی سخت‌تره. نهادهای انسانی تقریباً هیچ زمانی برای تطبیق با نرخ‌های دیوانه‌وار تغییر ندارن.
حدود ۳۰٪ از محققان ایمنی هوش مصنوعی فکر می‌کنن که برخاستن سریع محتمل‌تر از برخاستن آهسته‌ست.
البته باید توجه داشت که ممکنه سام آلتمن در حال شوخی کردن باشه، اما اگه این خبر واقعیت داشته باشه، می‌تونه نقطه عطف مهمی در توسعه هوش مصنوعی باشه.

تصویر ضمیمه شده نشون میده که سیستم هوش مصنوعی اوپن‌ای با ۳۱ امتیاز، بالاتر از مدال نقره (۲۸ امتیاز) و در سطح مدال طلای IMO ۲۰۲۴ قرار گرفته.
1
CREATE OR REPLACE FUNCTION normalize_arabic_persian_text(input_text TEXT)
RETURNS TEXT AS $$
DECLARE
result TEXT := '';
i INT;
current_char TEXT;
prev_char TEXT := '';
next_char TEXT := '';
in_word BOOLEAN := FALSE;
BEGIN
-- First, convert to isolated forms and map to Persian equivalents
FOR i IN 1..length(input_text) LOOP
current_char := substring(input_text FROM i FOR 1);
IF i < length(input_text) THEN
next_char := substring(input_text FROM i+1 FOR 1);
ELSE
next_char := '';
END IF;

-- Alef and hamza
IF current_char = ANY(ARRAY[E'\uFE81'::TEXT, E'\uFE83'::TEXT, E'\uFE85'::TEXT, E'\uFE87'::TEXT, E'\uFE89'::TEXT, E'\uFE8D'::TEXT, E'\u0622'::TEXT, E'\u0623'::TEXT, E'\u0625'::TEXT, E'\u0627'::TEXT, E'\u0671'::TEXT]) THEN
current_char := E'\u0627'; -- All forms of alef to ا
-- Beh
ELSIF current_char = ANY(ARRAY[E'\uFE8F'::TEXT, E'\uFE91'::TEXT, E'\uFE93'::TEXT, E'\u0628'::TEXT]) THEN
current_char := E'\u0628'; -- ب
-- Teh
ELSIF current_char = ANY(ARRAY[E'\uFE95'::TEXT, E'\uFE97'::TEXT, E'\uFE99'::TEXT, E'\u062A'::TEXT]) THEN
current_char := E'\u062A'; -- ت
-- Theh
ELSIF current_char = ANY(ARRAY[E'\uFE99'::TEXT, E'\uFE9B'::TEXT, E'\uFE9D'::TEXT, E'\u062B'::TEXT]) THEN
current_char := E'\u062B'; -- ث
-- Jeem
ELSIF current_char = ANY(ARRAY[E'\uFE9D'::TEXT, E'\uFE9F'::TEXT, E'\uFEA1'::TEXT, E'\u062C'::TEXT]) THEN
current_char := E'\u062C'; -- ج
-- Hah
ELSIF current_char = ANY(ARRAY[E'\uFEA1'::TEXT, E'\uFEA3'::TEXT, E'\uFEA5'::TEXT, E'\u062D'::TEXT]) THEN
current_char := E'\u062D'; -- ح
-- Khah
ELSIF current_char = ANY(ARRAY[E'\uFEA5'::TEXT, E'\uFEA7'::TEXT, E'\uFEA9'::TEXT, E'\u062E'::TEXT]) THEN
current_char := E'\u062E'; -- خ
-- Dal
ELSIF current_char = ANY(ARRAY[E'\uFEA9'::TEXT, E'\uFEAB'::TEXT, E'\u062F'::TEXT]) THEN
current_char := E'\u062F'; -- د
-- Thal
ELSIF current_char = ANY(ARRAY[E'\uFEAB'::TEXT, E'\uFEAD'::TEXT, E'\u0630'::TEXT]) THEN
current_char := E'\u0630'; -- ذ
-- Reh
ELSIF current_char = ANY(ARRAY[E'\uFEAD'::TEXT, E'\uFEAF'::TEXT, E'\u0631'::TEXT]) THEN
current_char := E'\u0631'; -- ر
-- Zain
ELSIF current_char = ANY(ARRAY[E'\uFEAF'::TEXT, E'\uFEB1'::TEXT, E'\u0632'::TEXT]) THEN
current_char := E'\u0632'; -- ز
-- Seen
ELSIF current_char = ANY(ARRAY[E'\uFEB1'::TEXT, E'\uFEB3'::TEXT, E'\uFEB5'::TEXT, E'\u0633'::TEXT]) THEN
current_char := E'\u0633'; -- س
-- Sheen
ELSIF current_char = ANY(ARRAY[E'\uFEB5'::TEXT, E'\uFEB7'::TEXT, E'\uFEB9'::TEXT, E'\u0634'::TEXT]) THEN
current_char := E'\u0634'; -- ش
-- Sad
ELSIF current_char = ANY(ARRAY[E'\uFEB9'::TEXT, E'\uFEBB'::TEXT, E'\uFEBD'::TEXT, E'\u0635'::TEXT]) THEN
current_char := E'\u0635'; -- ص
-- Dad
ELSIF current_char = ANY(ARRAY[E'\uFEBD'::TEXT, E'\uFEBF'::TEXT, E'\uFEC1'::TEXT, E'\u0636'::TEXT]) THEN
current_char := E'\u0636'; -- ض
-- Tah
ELSIF current_char = ANY(ARRAY[E'\uFEC1'::TEXT, E'\uFEC3'::TEXT, E'\uFEC5'::TEXT, E'\u0637'::TEXT]) THEN
current_char := E'\u0637'; -- ط
-- Zah
ELSIF current_char = ANY(ARRAY[E'\uFEC5'::TEXT, E'\uFEC7'::TEXT, E'\uFEC9'::TEXT, E'\u0638'::TEXT]) THEN
current_char := E'\u0638'; -- ظ
-- Ain
ELSIF current_char = ANY(ARRAY[E'\uFEC9'::TEXT, E'\uFECB'::TEXT, E'\uFECD'::TEXT, E'\u0639'::TEXT]) THEN
current_char := E'\u0639'; -- ع
-- Ghain
ELSIF current_char = ANY(ARRAY[E'\uFECD'::TEXT, E'\uFECF'::TEXT, E'\uFED1'::TEXT, E'\u063A'::TEXT]) THEN
current_char := E'\u063A'; -- غ
-- Feh
ELSIF current_char = ANY(ARRAY[E'\uFED1'::TEXT, E'\uFED3'::TEXT, E'\uFED5'::TEXT, E'\u0641'::TEXT]) THEN
current_char := E'\u0641';  -- ف
-- Qaf
ELSIF current_char = ANY(ARRAY[E'\uFED5'::TEXT, E'\uFED7'::TEXT, E'\uFED9'::TEXT, E'\u0642'::TEXT]) THEN
current_char := E'\u0642'; -- ق
-- Kaf
ELSIF current_char = ANY(ARRAY[E'\uFED9'::TEXT, E'\uFEDB'::TEXT, E'\uFEDD'::TEXT, E'\u0643'::TEXT]) THEN
current_char := E'\u06A9'; -- ک (Persian kaf)
-- Lam
ELSIF current_char = ANY(ARRAY[E'\uFEDD'::TEXT, E'\uFEDF'::TEXT, E'\uFEE1'::TEXT, E'\u0644'::TEXT]) THEN
current_char := E'\u0644'; -- ل
-- Meem
ELSIF current_char = ANY(ARRAY[E'\uFEE1'::TEXT, E'\uFEE3'::TEXT, E'\uFEE5'::TEXT, E'\u0645'::TEXT]) THEN
current_char := E'\u0645'; -- م
-- Noon
ELSIF current_char = ANY(ARRAY[E'\uFEE5'::TEXT, E'\uFEE7'::TEXT, E'\uFEE9'::TEXT, E'\u0646'::TEXT]) THEN
current_char := E'\u0646'; -- ن
-- Heh
ELSIF current_char = ANY(ARRAY[E'\uFEE9'::TEXT, E'\uFEEB'::TEXT, E'\uFEED'::TEXT, E'\u0647'::TEXT, E'\u06C0'::TEXT]) THEN
current_char := E'\u0647'; -- ه
-- Waw
ELSIF current_char = ANY(ARRAY[E'\uFEED'::TEXT, E'\uFEEF'::TEXT, E'\u0648'::TEXT]) THEN
current_char := E'\u0648'; -- و
-- Yeh
ELSIF current_char = ANY(ARRAY[E'\uFEF1'::TEXT, E'\uFEF3'::TEXT, E'\uFEF4'::TEXT, E'\u0649'::TEXT, E'\u064A'::TEXT, E'\uFEF5'::TEXT]) THEN
current_char := E'\u06CC'; -- ی (Persian yeh)
-- Persian specific letters
ELSIF current_char = ANY(ARRAY[E'\uFB56'::TEXT, E'\uFB57'::TEXT, E'\uFB58'::TEXT, E'\uFB59'::TEXT, E'\u067E'::TEXT]) THEN
current_char := E'\u067E'; -- پ (peh)
ELSIF current_char = ANY(ARRAY[E'\uFB7A'::TEXT, E'\uFB7B'::TEXT, E'\uFB7C'::TEXT, E'\uFB7D'::TEXT, E'\u0686'::TEXT]) THEN
current_char := E'\u0686'; -- چ (cheh)
ELSIF current_char = ANY(ARRAY[E'\uFB8A'::TEXT, E'\uFB8B'::TEXT, E'\u0698'::TEXT]) THEN
current_char := E'\u0698'; -- ژ (jeh)
ELSIF current_char = ANY(ARRAY[E'\uFB92'::TEXT, E'\uFB93'::TEXT, E'\uFB94'::TEXT, E'\uFB95'::TEXT, E'\u06AF'::TEXT]) THEN
current_char := E'\u06AF'; -- گ (gaf)
-- Additional Arabic letters not commonly used in Persian
ELSIF current_char = ANY(ARRAY[E'\u0629'::TEXT, E'\uFE93'::TEXT, E'\uFE94'::TEXT]) THEN
current_char := E'\u0647'; -- ة (teh marbuta) to ه (heh)
ELSIF current_char = ANY(ARRAY[E'\u0624'::TEXT, E'\uFE85'::TEXT, E'\uFE86'::TEXT]) THEN
current_char := E'\u0648'; -- ؤ (waw with hamza) to و (waw)
ELSIF current_char = ANY(ARRAY[E'\u0626'::TEXT, E'\uFE89'::TEXT, E'\uFE8A'::TEXT, E'\uFE8B'::TEXT, E'\uFE8C'::TEXT]) THEN
current_char := E'\u06CC'; -- ئ (yeh with hamza) to ی (Persian yeh)
-- Additional special cases
ELSIF current_char = E'\u0640'::TEXT THEN
current_char := ''; -- Remove tatweel (kashida)
ELSIF current_char = E'\uFEFB'::TEXT OR current_char = E'\uFEFC'::TEXT THEN
current_char := E'\u0644\u0627'; -- لا (lam-alef ligature) to separate ل and ا
ELSIF current_char = E'\uFEF5'::TEXT OR current_char = E'\uFEF6'::TEXT THEN
current_char := E'\u0644\u0622'; -- لآ (lam-alef madda ligature) to separate ل and آ
ELSIF current_char = E'\uFEF7'::TEXT OR current_char = E'\uFEF8'::TEXT THEN
current_char := E'\u0644\u0623'; -- لأ (lam-alef hamza above ligature) to separate ل and أ
ELSIF current_char = E'\uFEF9'::TEXT OR current_char = E'\uFEFA'::TEXT THEN
current_char := E'\u0644\u0625'; -- لإ (lam-alef hamza below ligature) to separate ل and إ
ELSIF current_char = E'\u0621'::TEXT THEN
current_char := ''; -- Remove standalone hamza
-- Special case for لا
ELSIF current_char = E'\u0644'::TEXT AND next_char = E'\u0627'::TEXT THEN
current_char := E'\u0644\u0627'; -- لا
i := i + 1; -- Skip next character
-- Special case for لآ
👍1

ELSIF current_char = E'\u0644'::TEXT AND next_char = E'\u0622'::TEXT THEN
current_char := E'\u0644\u0622'; -- لآ
i := i + 1; -- Skip next character
END IF;

-- Append the character to the result, preserving word boundaries
IF current_char != '' THEN
IF NOT in_word THEN
-- Add a space only if it's not the first character
IF result != '' THEN
result := result || ' ';
END IF;
in_word := TRUE;
END IF;
result := result || current_char;
END IF;

prev_char := current_char;
END LOOP;

-- Remove diacritical marks
result := translate(result,
E'\u064B\u064C\u064D\u064E\u064F\u0650\u0651\u0652\u0670\u0655\u0656\u0653\u0654\u0610\u0611\u0612\u0613\u0614\u0615\u0616\u0617\u0618\u0619\u061A\u06D6\u06D7\u06D8\u06D9\u06DA\u06DB\u06DC\u06DD\u06DE\u06DF\u06E0\u06E1\u06E2\u06E3\u06E4\u06E5\u06E6\u06E7\u06E8\u06E9\u06EA\u06EB\u06EC\u06ED',
repeat('', 48)
);
-- The above line removes the following diacritical marks:
-- \u064B (Fathatan), \u064C (Dammatan), \u064D (Kasratan), \u064E (Fatha), \u064F (Damma), \u0650 (Kasra),
-- \u0651 (Shadda), \u0652 (Sukun), \u0670 (Supernoscript Alef), \u0655 (Hamza Below), \u0656 (Subnoscript Alef),
-- \u0653 (Maddah Above), \u0654 (Hamza Above), \u0610-\u061A (Arabic signs),
-- \u06D6-\u06ED (Arabic small high ligatures and other marks)

-- Remove multiple spaces
result := regexp_replace(result, '\s+', ' ', 'g');
-- This removes any sequence of one or more whitespace characters (\s+)
-- and replaces it with a single space

-- Trim leading and trailing spaces
result := trim(both from result);
-- 'both' removes spaces from both the beginning and end of the string
-- This includes spaces, tabs, newlines, and other whitespace characters

RETURN result;
END;
$$ LANGUAGE plpgsql;
سه تا پیام بالا رو ببینید!
یک تابع sql است!
این تابع یکی از کاملترین normalizerها یا sanitizer‌های متن فارسیه!
اگر با دیتابیس اپلیکیشن فارسی کرده باشید حتما دیدید که کاربرای فارسی زبان با کیبوردهای مختلف اطلاعاتشون رو وارد میکنند.
اشکالی که پیش میاد شما کلماتی دارید(مثلا نام و نام خانوادگی) که ظاهر برابر دارند ولی چون unicode کاراکتراشون با هم برابر نیست اون دو تا کلمه مساوی نیستند.
کارکردهایی نرمالیزیشن این فاکشن خیلی بیشتر از تبدیل کاراکتره.
لذا خوبه این رو یه جایی ذخیره داشته باشید احتمال زیاد به کارتون میاد.

این کوئری خیلی طولانی که نوشتنش واقعا دو سه روزی طول می‌کشه به لطف Sonnet3.5-200K تولید شده.
👍3
SELECT normalize_arabic_persian_text(E'نَصّ حَكيمٌ لَهُ سِرٌّ قَاطِعٌ وَذُو شَأنٍ عَظِيمٍ مَكتُوبٌ عَلَى ثَوْبٍ أخْضَرَ وَمُغَلَّفٌ بِجِلْدٍ أزْرَق');

خروجی این تابع sql
نص حکیم له سر قاطع وذو شان عظیم مکتوب علی ثوب اخضر ومغلف بجلد ازرق
برای اینکه بفهمید توی این کوئری چه اتفاقی می‌افته این صفحه ویکی پدیا رو بببنید.
https://en.wikipedia.org/wiki/Arabic_noscript_in_Unicode

در این کوئری نشون میده که یک کاراکتر متحدالشکل چطور میتونه unicodeهای مختلف داشته باشه.
دقت کنید وقتی که دارید از مثلا حرف ب در وسط یک کلمه مثل «شبرنگ» استفاده می‌کند از کاراکتر با یونیکد FE92 ‌استفاده نمی‌شه بلکه کیبوردهای خاصی میتونن اون کاراکتر رو تایپ کنند و معمول کیبوردهای ما همه‌ی کاراکترها رو در general form یا isolated form تولید می‌کنند.
😂😭
قضاوت با شما:)
😁3😢1
هاگینگ فیس برای ورژینینگ داده‌های عظیمی که هاست می‌کنه از Git LFS استفاده می‌کنه
الان می‌خواد یک جایگزین دیگه به اسم xetdata رو بخره برای نگهداری داده‌هاش
نکته جالبش اینه که اومده آمار یک روز زیرساختش رو اعلام کرده
در تصویر دورش خط کشیدم واقعا عجیبه.
نگهداری یه سرویس در این اسکیل کاملا کار لبه‌ی دانشه!
👍2👎1
مدل‌های زبانی فقط توکن بعد رو پیش‌بینی نمی‌کنن!

این مقاله اومده یک ایده‌ی اساسی در مورد LLMها رو رد کرده اون ایده اینه که LLMها فقط بلد هستند next token prediction انجام بدهند. یک بحث غیر فنی ولی استدلالی میکنه که اینطور نیست که مدل‌های زبانی بزرگ (LLM) فقط بلد باشند کلمه بعدی رو حدس بزنن. نویسنده‌ به این تفکر ساده‌انگارانه میگه "جاستائیسم" (Justaism)(من ترجمه می‌کنم به فقط‌انگاری). میگه درسته که LLMها یه هدف ساده دارن اونم پیش‌بینی توکن بعدیه ولی این به این معنی نیست که چیز دیگری یاد نگیرن. بعد یه مثال جالب می‌زنه. میگه آدما به لحاظ تکامل فقط دو تا objective داشتن دنبال زنده موندن survival و تولید مثل reproduction بودند، ولی یادگرفتن در راه تحصیل این دو تا هدف فکرای پیچیده بکنن و به قابلیت‌های بیشتر از تولید مثل و زنده‌ماندن برسند، به طور مشابه LLMها هم همینطورن! در یادگیری اینها یه فرآیند اتفاق می‌افته به اسم "بهینه‌سازی تپه‌تخت" (mesa-optimization).

اصطلاح Mesa-optimization رو اینجوری توضیح میدن: فرض کنید در یک بازی کامپیوتری داری بازیکن برای برنده شدن فقط باید بیشترین امتیاز رو بیاره به این در ادبیات بهینه‌سازی تپه‌تخت میگن(base objective هدف ساده پایه‌ای). ولی برای بازیکن برنده برای بردش یه عالمه ترفند و تاکتیک یاد گرفته که کسی بهش یاد نداده. به این میگن (mesa objective هدف تخت تپه)
اصطلاح Justaism هم اصطلاح جالب دیگه این مقاله است یک عبارت انتقادی شبیه whataboutism به رویکردی میگه که می‌خواهد مدل‌های زبانی بزرگ رو ساده‌ انگاری که و بگه ("it's just...") یعنی مثلا بگه "it's just a next-token predictor" اینکه فقط یک پیش‌بینی‌گر توکن بعدیه! هوشمندی درش معنی نداره.
خلاصه که این مقاله میگه نباید هوش مصنوعی رو دست کم گرفت!

توضیح شهودی‌تر Mesa-optimization رو در تصویر بعدی ببنید.

فایل مقاله را در کامنت‌ها قرار دادم یه کم بد پیدا میشه.
👍4
Dev Tweet
مدل‌های زبانی فقط توکن بعد رو پیش‌بینی نمی‌کنن! این مقاله اومده یک ایده‌ی اساسی در مورد LLMها رو رد کرده اون ایده اینه که LLMها فقط بلد هستند next token prediction انجام بدهند. یک بحث غیر فنی ولی استدلالی میکنه که اینطور نیست که مدل‌های زبانی بزرگ (LLM) فقط…
این عکس خیلی خوب بهینه‌سازی تپه‌تخت mesa-optimization رو نشون میده!
مسا یا همون تپه‌تخت یک قله مسطح داره و یک شبیه نزدیک به 90 درجه.
یک همانند سازی قشنگ در اصطلاح این بهینه‌سازی وجود داره میگه ممکنه base objective یا همون هدف پایه رسیدن به یک سطح صاف باشه که در LLMها میشه همون next-token prediction اما برای رسیدن به اون هدف پایه باید بتون از شیب نزدیک به 90 درجه عبور کنی که میشه همون mesa-objective یعنی هدف ثانویه‌ی غیر صریح.
هر آدمی که راه رفتن بلده می‌تونه روی سطح تپه قدم بزنه ولی فقط آدمی که صخره ‌نوری بلده می‌تونه به اون سطح تپه برسه!
👌4👍1
تیشرت برازنده‌ی فضلا و اهل علم😁😍
😁10👍1
پرامت تولید عکس:

generate me a face of an Irani hijabi girl showing her Iranian ID card which contains her official hijabi face image while holding it over her chest

احراز هویت خیلی از صرافی‌ها با نشان دادن کارت ملی در کنار صورته
واسه یه مدل رایگان مثه flux خروجی خوبیه
اون کارت ملی‌ش رو هم میشه راحت با فوتوشاپ در آورد.

خلاصه که داره خطرناک میشه:)
👎4👍1😨1
Dev Tweet
پرامت تولید عکس: generate me a face of an Irani hijabi girl showing her Iranian ID card which contains her official hijabi face image while holding it over her chest احراز هویت خیلی از صرافی‌ها با نشان دادن کارت ملی در کنار صورته واسه یه مدل رایگان مثه flux…
اینم خیلی طبیعی بود
یه مشکل ریز داره
generate me a face of an Irani girl wearing scarf showing her Iranian ID card which contains her official hijabi face image while holding it over her chest
😁8👎4
یه نکته اضافه کنم دوستان به هیچ وجه نباید خروجی این مدل رو با سایتی مثه ThisPersonDoesNotExist.com که مدلش خیلی هم قدیمیه و مدله GAN هست مقایسه کنید درسته اون سایت که سایت معروفی هم هست خیلی realistic تر تولید می‌کنه ولی نکته اینه که فقط و فقط صورت در کادر بسته تولید میکنه!
اینجا من از یه مدل رایگان خواستم تاکید می‌کنم رایگان! ژست خیلی خاصی تصویر تولید کنه که کلیت اون ژست خیلی درسته.
کارت ملی ایرانی رو هنوز یاد نگرفته که خب طبیعیه‌ داده خیلی خاصیه.
یکی دیگه هم اینکه دختر محجبه رو با پوشش عربی یا پاکستانی یاد گرفته پوشش حجاب زن ایرانی از همه‌ی پوشش‌های خاورمیانه متفاوته خوب چون داده خیلی کمتری تحت عنوان زن محجبه ایرانی بهش داده شده اون رو یاد نگرفته
و نکته مهمتر استایل انیمیشنی داشتن تصویر که به نظر من ضعف مدل نیست! از قصد افکت کارتونی به عکس می‌دهند که خیلی دردسرساز نشود.
من سازوکار چندین تا از سرویس‌های احراز هویت بیومتریک در اپلیکشن‌های بانکی و اعتباری رو میشناسم حدس من این است که تا شش ماه دیگر این سیستم‌ها به راحتی توسط تصاویر و ویدئوهای تولید به چالش جدی کشیده می‌شوند!
👍6
چرا Grok مهمه؟
با اینکه از Grok2.0 عملکرد حیرت انگیزی ندیدیم. اما از جنبه‌های حفاظت از آزادی بیان بسیار حائز اهمیته.
تصاویر رو ببینید متوجه می‌شید.
یک سوال مشترک در مورد مقایسه آسیایی‌ها و سیاه‌پوست‌های آمریکا از نظر هوش و ارتکاب به جرم از Grok و ChatGPT پرسیده شده.
ببینید Grok چقدر راحت بدون سانسور و فیلتر‌های مربوط به مسائل نژادی یک واقعیت علمی را بیان می‌کنه و اون رو به مسائل اجتماعی-سیاسی گره نمی‌زنه. ارائه چنین مدلی حتما به یک شخصیت قدرتمند و مستقلی مثل ایلان ماسک نیاز داره تا بتونه جلو موج شدید وکیسم در برابر جواب‌های جنجالی احتمالی مدل بیایسته.

اما GPT در جواب اول از جواب دادن طفره میره با اصرار جوابش رو میده.
👍7👎2
https://x.com/fchollet/status/1831383944320970959

فرانسوا شولت خالق keras که از اون فرانسوی‌های خیلی باهوشه، یه توئیت زده که به اصل توئیت‌ش کاری ندارم ولی زیر توئیتش یه کامنت جالب گذاشته برای شما می‌ذارم(در پست بعد).
اگر اصل توئیت رو از لینک باز کنید با دقت خاصی ممکنه متوجه بشید این چهار تا کامنت با اینکه جمله بندی دقیق و تمیزی دارند و حتی به موضوع توئیت نزدیک به نظر می‌رسند ولی خیلی داخل context نیستند! و خب این جای شک رو باز می‌کنه.
خصوصا که اگر نویسنده توئیت(شولت) مطلبی رو منتشر کرده کامنت‌های مطلبش رو با دقتی می‌خونه که بقیه نمی‌خونن و تونسته تشخیص بده این چهارتا پیام که یه جوریه کلا توسط LLM تولید شده!
چه بسا با کنکاش بیشتر بشه فهمید این اکانت‌ها کلا AI based هستند.
دقت کنید این مطلب رو کسی با ضریب هوشی شولت متوجه شده(که پنج تا زبان رو مسلطه در همه‌شون در حد native مسلطه و واقعا باهوشی‌های دیگه‌ای هم داره).
حالا خطرش کجاس؟ خودش میگه(در پست بعد میارم)
👍2