2025 год подходит к экватору, поэтому самое время посмотреть, как поменялись позиции крупнейших компаний-разработчиков. Но для начала предлагаю посмотреть на две иллюстрации. Первая — рейтинг ИИ от ресурса LMArena.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
@staticmethod
и @classmethod
в Python, и чем они отличаются?Декораторы
@staticmethod
и @classmethod
используются для создания методов, которые не требуют экземпляра класса. @staticmethod
— это метод, который не зависит от экземпляра или самого класса, а @classmethod
получает доступ к самому классу через первый параметр cls
.class MyClass:
@staticmethod
def static_method():
return "Это статический метод"
@classmethod
def class_method(cls):
return f"Это метод класса {cls.__name__}"
# Использование
print(MyClass.static_method()) # Это статический метод
print(MyClass.class_method()) # Это метод класса MyClass
🗣️ В этом примере static_method ничего не знает о классе, в то время как class_method может взаимодействовать с классом, к которому он принадлежит. Используйте их в зависимости от того, нужно ли вам взаимодействие с классом.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7
Состязательные атаки используют уязвимости глубоких нейронных сетей (DNN), внося минимальные изменения во входные данные, чтобы заставить модель ошибаться. Они часто незаметны для человека, но могут полностью изменить результат работы модели.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
🐳3❤1
Рассказываю, почему статичные пороги — не выход, когда дело доходит до пользовательской активности. Покажу, как в таких случаях спасает обнаружение аномалий.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Вам передаётся сбалансированный набор объектов из 3-х различных классов (например, "cat", "dog", "bird").
Каждый объект представлен вектором признаков (list of floats). Один объект — подброшенный и не принадлежит ни одному из трёх известных классов: он отличается распределением.
Ваша задача — реализовать функцию
detect_outlier(data: List[List[float]], labels: List[str]) -> int
, которая возвращает индекс выброса в списке. Гарантируется, что в labels один лейбл может быть "unknown", а может и вовсе отсутствовать — выброс может быть замаскирован.Метрика — средняя евклидова дистанция до других представителей того же класса должна быть на порядок выше, чем у нормальных объектов.
Пример данных:
data = [
[1.1, 0.9], [1.2, 1.0], [0.9, 1.1], # cat
[3.0, 3.1], [2.9, 3.0], [3.1, 2.9], # dog
[5.0, 5.1], [5.1, 5.0], [8.0, 8.0], # last — выброс
]
labels = ["cat", "cat", "cat", "dog", "dog", "dog", "bird", "bird", "bird"]
Решение задачи
import numpy as np
from collections import defaultdict
def detect_outlier(data, labels):
data = np.array(data)
grouped = defaultdict(list)
for i, label in enumerate(labels):
grouped[label].append(i)
outlier_idx = -1
max_score = -1
for i, point in enumerate(data):
label = labels[i]
others = [j for j in grouped[label] if j != i]
if not others:
continue
distances = [np.linalg.norm(point - data[j]) for j in others]
avg_dist = np.mean(distances)
if avg_dist > max_score:
max_score = avg_dist
outlier_idx = i
return outlier_idx
# Тест
print(detect_outlier(data, labels)) # ➜ 8
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3⚡1
🧠 МТС и НИУ ВШЭ открыли набор на второй поток магистратуры по ИИ
Программу «Исследования и предпринимательство в искусственном интеллекте» анонсировали на конференции True Tech Day. И вот, прием документов начнется 20 июня. Для 30 человек предусмотрены оплачиваемые места от МТС Web Services.
В московском кампусе ВШЭ студентов научат работать с языковыми моделями, генеративными нейросетями, системами компьютерного зрения и распознаванием речи. Лучших студентов пригласят на стажировку и трудоустройство в МТС Web Services.
Программу «Исследования и предпринимательство в искусственном интеллекте» анонсировали на конференции True Tech Day. И вот, прием документов начнется 20 июня. Для 30 человек предусмотрены оплачиваемые места от МТС Web Services.
В московском кампусе ВШЭ студентов научат работать с языковыми моделями, генеративными нейросетями, системами компьютерного зрения и распознаванием речи. Лучших студентов пригласят на стажировку и трудоустройство в МТС Web Services.
❤1
В этом руководстве мы будем разбираться, как повысить качество прогнозирования с помощью машинного обучения, используя точные методы разделения данных, перекрестную проверку временных рядов, конструирование признаков и многое другое.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6
Делюсь, как собрать простого голосового ассистента: он сам распознаёт речь, общается с LLM и отвечает голосом. Без GUI, но с кучей потенциала. Всё на Python, всё работает.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3🔥1
Рассказываю, как делали чат-бота для внутренней документации: где споткнулись, что взлетело, и почему не всё решается embedding'ами. Может, вам сэкономит пару бессонных ночей.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3⚡1
• Как продакт-менеджеру учить английский: план, сроки, советы
• Иллюзия прогресса: почему мне не удалось дать студентам-айтишникам реальный опыт
• Interview copilots: как кандидаты используют ChatGPT на интервью
• Моя история входа в IT: как я ломал стены своих ограничений
• Как мы разработали систему грейдинга для системных аналитиков
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Поясняю линейную регрессию так, чтобы стало понятно, зачем вообще эта прямая на графике и как с её помощью предсказывать результат по набору чисел. Без лишней математики.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
Генераторы — это функции в Python, которые возвращают значения по одному с помощью ключевого слова
yield
, вместо полного возврата всех значений сразу. Они полезны для работы с большими объемами данных, так как сохраняют память, генерируя значения на лету.# Генератор для получения первых N чисел Фибоначчи
def fibonacci(n):
a, b = 0, 1
for _ in range(n):
yield a
a, b = b, a + b
# Используем генератор
for num in fibonacci(5):
print(num)
# Вывод: 0, 1, 1, 2, 3
🗣️ В этом примере генератор fibonacci вычисляет числа по запросу, вместо сохранения всех значений в памяти. Это делает генераторы особенно удобными для работы с потоками данных или бесконечными последовательностями.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍1
Рассказываю, как построить понятный и гибкий ML-процесс: чтобы данные масштабировались, новички вливались, а модель не вела себя как капризный кот.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡5❤2
🚀 Правда или нет, что Google победил Cursor?
В статье сравнивают два AI-инструмента для разработки: Firebase Studio от Google и Cursor от Anysphere. Кто круче — облачная платформа или интегрированный редактор?
Читать...
В статье сравнивают два AI-инструмента для разработки: Firebase Studio от Google и Cursor от Anysphere. Кто круче — облачная платформа или интегрированный редактор?
Читать...
Можно взять крутой инструмент, подход или методику, но если она не встраивается в твой ритм — ты всё равно будешь буксовать.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤1
В статье рассказывают о расшифровке орхоно-енисейских рун: древние тексты на камне, трудности интерпретации и идеи автоматизации для точности и скорости анализа.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4🔥4
В статье рассказывают, как ИИ сделал Duolingo фабрикой языковых курсов: генерация контента, проверка ответов, адаптация заданий — всё на автомате. Учить стало быстрее.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4
У вас есть множество эмбеддингов — векторов признаков объектов (например, предложений, изображений, пользователей).
Требуется реализовать функцию
find_similar_pairs(vectors, tolerance=0.05)
, которая возвращает все пары индексов, где косинусная разница между векторами меньше tolerance.Дополнительные условия:
• Векторы могут быть высокой размерности (до 512)
• Пара (i, j) считается дубликатом (i < j), если их cosine similarity ~ 1.0
• Не используйте внешние ML-библиотеки: только numpy
• Функция должна быть оптимизирована — без грубой проверки каждой пары, если можно
Решение задачи
import numpy as np
def cosine_similarity(a, b):
a, b = np.array(a), np.array(b)
returnnp.dot (a, b) / (np.linalg.norm(a) * np.linalg.norm(b))
def find_similar_pairs(vectors, tolerance=0.05):
result = []
n = len(vectors)
for i in range(n):
for j in range(i + 1, n):
sim = cosine_similarity(vectors[i], vectors[j])
if 1 - sim <= tolerance:
result.append((i, j))
return result
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
• Смарт-функции в Алисе: как LLM помогает понять, чего хочет пользователь
• Сбер выкладывает GigaChat Lite в открытый доступ
• История YOLO – самой известной архитектуры компьютерного зрения
• Магия простоты: как мы улучшили отображение общественного транспорта на карте
• Обучение и fine-tuning моделей простым языком: зачем, как, где
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
В статье объясняют, что такое RAG и как использовать LangGraph для генерации с дополненной выборкой: основы, примеры и подготовка к созданию собственных RAG-систем.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3