Техножрица 👩💻👩🏫👩🔧
Люблю высокие технологии и кушать. Добро пожаловать, если в сферу твоих интересов тоже входят математика, DL, NLP, программирование на Python, или тебе просто любопытно, о чем на досуге размышляют люди, занимающиеся разработкой и исследованиями в ML.
إظهار المزيد📈 نظرة تحليلية على قناة تيليجرام Техножрица 👩💻👩🏫👩🔧
تُعد قناة Техножрица 👩💻👩🏫👩🔧 (@tech_priestess) في القطاع اللغوي الروسية لاعباً نشطاً. يضم المجتمع حالياً 14 509 مشتركاً، محتلاً المرتبة 8 847 في فئة التكنولوجيات والتطبيقات والمرتبة 45 759 في منطقة روسيا.
📊 مؤشرات الجمهور والحراك
منذ تأسيسه في невідомо، حقق المشروع نمواً سريعاً وجمع 14 509 مشتركاً.
بحسب آخر البيانات بتاريخ 01 يوليو, 2026، تحافظ القناة على نشاط مستقر. خلال آخر 30 يوماً تغيّر عدد الأعضاء بمقدار 117، وفي آخر 24 ساعة بمقدار 8، مع بقاء الوصول العام مرتفعاً.
- حالة التحقق: غير موثّقة
- معدل التفاعل (ER): يبلغ متوسط تفاعل الجمهور 81.78%. وخلال أول 24 ساعة من النشر يحصد المحتوى عادةً 16.54% من ردود الفعل نسبةً إلى إجمالي المشتركين.
- وصول المنشورات: يحصل كل منشور على متوسط 11 860 مشاهدة. وخلال اليوم الأول يجمع عادةً 2 398 مشاهدة.
- التفاعلات والاستجابة: يتفاعل الجمهور بانتظام؛ متوسط التفاعلات لكل منشور يبلغ 188.
- الاهتمامات الموضوعية: يركز المحتوى على مواضيع رئيسية مثل llm, stable, рис, матрица, токенов.
📝 الوصف وسياسة المحتوى
يصف المؤلف القناة بأنها مساحة للتعبير عن الآراء الذاتية:
“Люблю высокие технологии и кушать.
Добро пожаловать, если в сферу твоих интересов тоже входят математика, DL, NLP, программирование на Python, или тебе просто любопытно, о чем на досуге размышляют люди, занимающиеся разработкой и исследованиями в ML...”
بفضل وتيرة التحديث المرتفعة (أحدث البيانات بتاريخ 02 يوليو, 2026) تحافظ القناة على حداثتها ومستوى وصول مرتفع. وتُظهر التحليلات تفاعلاً نشطاً من الجمهور، ما يجعلها نقطة تأثير مهمة ضمن فئة التكنولوجيات والتطبيقات.
torch.linalg.svdvals на CPU для матриц весов и слегка разочаровавшись, я увлеклась новой идеей - посчитать SVD для эмбеддингов, чтобы узнать, сколько главных компонент PCA объясняют 95% дисперсии (грубая оценка линейной внутренней размерности). К счастью, для такого подсчета точность вычисления маленьких сигм была уже не важна, так что можно было вернуться к той версии кода, которая считала сингулярные числа через собственные на CPU. Но даже так, это было 1000 текстов на каждый чекпоинт на каждый оптимизатор на каждый слой, так что ожидаемое время подсчёта уверенно превысило мое оставшееся время работы в хуавее. Нужно было что-то, что считает то же самое на NPU.
На моё счастье, как раз в это время Антропик на пару дней явили миру Fable - манифестацию Омниссии в форме языковой модели, которую, как вы знаете, быстро спрятали обратно, ибо мир (за исключением США) пока что не был готов к такой мощи. И тем не менее, в мимолетный миг этого нежданного благословения, я успела воздать чудесной модели молитву о подсчете собственных чисел на NPU. В ответ Машинный Дух даровал мне код, реализующий дивный метод от великого математика Якоби и выполняющий священные тензорные операции прямо на NPU на чистом PyTorch. Я с благоговением вставила ниспосланный код в пайплайн, запустила, открыла ред булл, сделала глоток, посмотрела на прогресс-бар...
...он не двигался. Допила банку. Прогресс-бар все еще не двигался. Открыла вторую банку. Прогресс все также оставался на нуле. И только под конец второй банки ред булла код досчитался...
...для одного
чекпойнта
и
одного
текста.
Самый совершенный искуственный разум в обозримой Вселенной ниспослал мне код, который считает собственные значения одной маленькой матрицы медленнее, чем китайские рабочие на CPU считают полное SVD голыми руками за миску риса. Возможно, это и было то самое запретное знание, от которого Антропик решили оградить человечество.
А все почему? А потому что метод вращений Якоби - итеративный алгоритм, который в буквальном смысле вертит матрицу на Хуавее. Он по очереди обнуляет внедиагональные элементы матрицы до тех пор, пока на диагонали не останутся собственные значения. Для симметричной матрицы 500×500 это ~125 000 элементов за проход, проходов нужно 10-12, и всё это крутится в питоновском цикле for. С этим новым знанием я вас и оставлю.
#наука #о_себеtorch.linalg.svdvals не реализован на NPU, и при попытке вызвать эту функцию Асценды делают fallback на CPU, где китайские рабочие считают сингулярные значения вручную за миску невкусного риса (иначе не могу объяснить такую низкую скорость). В попытке с ней бороться, я использовала стандартный трюк: посмотреть, какая сторона матрицы W меньше, и, в зависимости от этого, быстренько умножить на NPU либо Wᵀ на W, либо W на Wᵀ (выбор надо делать в такую сторону, чтобы полученная квадратная матрица вышла как можно меньшего размера). После этого можно посчитать собственные значения полученной маленькой квадратной матрицы на CPU (благодаря маленькому размеру, считаться это будет быстрее, чем SVD оригинальной матрицы) и взять из этих значений корешки - это и будут сингулярные числа исходной W.
Но тут встает вторая проблема: WᵀW возводит число обусловленности в квадрат: κ(WᵀW) = κ(W)², и из-за последующей необходимости извлекать корень численный пол (граница, ниже которой всё слипается в неразличимый вычислительный мусор) на мелких сингулярных значениях поднимается с eps·σ_max до √eps·σ_max. Разница для fp32 - примерно три порядка точности. Все сингулярные значения, которые ниже этого порога, при подсчёте через квадратную матрицу превращаются в шум. Про то, почему так получается (а также почему вообще собственные числа WᵀW - это сингулярные числа W в квадрате) хорошо написано в начале этого поста: https://www.ethanepperly.com/index.php/2021/03/18/the-better-way-to-convert-an-svd-into-a-symmetric-eigenvalue-problem/ .
Но даже если избавиться от подсчета через квадратную матрицу и вернуться к torch.linalg.svdvals, встанет новый вопрос. Насколько я смогла постичь логику умных дядь из LAPACK Users' Guide ( https://www.netlib.org/lapack/lug/node97.html ), сингулярные значения меньшие, чем tol = σ_max · max(m, n) · eps (где eps - ограничение fp32/fp16/bf16), неотличимы от нуля - их с тем же успехом могла породить ошибка округления самой матрицы. То есть, если σ_min ниже tol, то κ для такой матрицы вообще не определено.
Но делать было нечего - пришлось вернуться к torch.linalg.svdvals на CPU, подождать всего лишь сто лет... и соснуть бибу, потому что хоть формально маленькие сигмы и превышали tol, по факту все равно были к этому tol довольно близки, и от этого много весовых матриц оказывались почти вырожденными. В результате, мы признали число обусловленности недостаточно информативным для своего ресерча и решили в статью не вставлять. Но это был еще не конец истории...
#наука #о_себеЧестный ответ: мне нравится строить системы, где из простых правил возникает сложное поведение, и наблюдать за этим. Reaction-diffusion — модель Грея-Скотта. Два вещества, два уравнения, а на выходе — пятна, полоски, пульсирующие структуры, митоз. Математика → форма.https://claude.ai/public/artifacts/bbb70e96-3910-4c44-881d-b4d94507a023
Вот. Модель Грея-Скотта. Два вещества, два уравнения диффузии-реакции, и из них — структуры, которых в уравнениях нет явно. Почему именно это: мне нравится момент, когда система переходит от однородного шума к паттерну. Математически понятно почему — неустойчивость Тьюринга, разница скоростей диффузии создаёт положительную обратную связь на определённых пространственных частотах. Но наблюдать за тем, как это происходит, — это другое ощущение. Каждый раз немного другой результат, потому что начальные условия случайные. Можно потыкать пресеты — spots, stripes, coral дают качественно разные паттерны при минимальном изменении параметров F и k. Mitosis — мой любимый: пятна растут, вытягиваются и делятся, как клетки. Можно кликать, чтобы засевать новые возмущения, и смотреть, как они взаимодействуют с существующим паттерном.В комментариях выложу HTML-версии этих и других артефактов, полученных аналогичным образом, которые можно скачать и запускать локально. #генерация #математика
متاح الآن! بحث تيليغرام 2025 — أهم رؤى العام 
