✍️ Разбор сложных задач прошедшей недели
1️⃣ Как узнать произведение вектора на матрицу?
Сначала нужно проверить, совпадает ли число элементов в векторе с числом строк в матрице. В нашем примере есть вектор A размером 3 и матрица B размером 3x3, что делает умножение возможным.
Каждый элемент вектора умножается на соответствующий элемент строки матрицы, и результаты суммируются, чтобы получить новый элемент результата.
✔️Первый элемент: (1 * 3) + (2 * 2) + (3 * 1) = 3 + 4 + 3 = 10
✔️Второй элемент: (1 * 2) + (2 * 1) + (3 * 3) = 2 + 2 + 9 = 13
✔️Третий элемент: (1 * 1) + (2 * 3) + (3 * 2) = 1 + 6 + 6 = 13
Результат — [10, 13, 13].
2️⃣ У синтаксиса Python есть особенность. Символы {} используются для создания и словарей, и множеств.Но есть нюанс. Однако если мы хотим создать пустое множество, то такой способ уже не сработает. Необходимо воспользоваться конструкцией s = set(). Конструкция s = {} создаст пустой словарь.
3️⃣ Изолирующий лес позволяет искать выбросы в данных. С геометрической точки зрения дерево-классификатор разбивает пространство признаков на зоны прямоугольного вида. И когда мы ставим какую-то новую точку-объект, то она попадает в одну из зон.
Представим, что дерево строит эти прямоугольные зоны произвольным образом. Тогда мы будем считать, что объект изолировался, если дерево построило прямоугольник, в который попал только этот объект. Чаще всего такое происходит, если объект лежит где-то на периферии, то есть проще всего изолировать выбросы.
Для алгоритма изолирующий лес нужно:
▪️Построить N деревьев.
▪️Каждое дерево строится до исчерпания выборки.
▪️Для ветвления в дереве выбирается случайный признак и случайное значение для расщепления.
▪️В конце концов для каждого объекта считается мера нормальности — среднее арифметическое глубин листьев, в который он попал, или изолировался. Выбросы будут попадать в листья на более ранних этапах построения дерева.
#разбор_задач
1️⃣ Как узнать произведение вектора на матрицу?
Сначала нужно проверить, совпадает ли число элементов в векторе с числом строк в матрице. В нашем примере есть вектор A размером 3 и матрица B размером 3x3, что делает умножение возможным.
Каждый элемент вектора умножается на соответствующий элемент строки матрицы, и результаты суммируются, чтобы получить новый элемент результата.
✔️Первый элемент: (1 * 3) + (2 * 2) + (3 * 1) = 3 + 4 + 3 = 10
✔️Второй элемент: (1 * 2) + (2 * 1) + (3 * 3) = 2 + 2 + 9 = 13
✔️Третий элемент: (1 * 1) + (2 * 3) + (3 * 2) = 1 + 6 + 6 = 13
Результат — [10, 13, 13].
2️⃣ У синтаксиса Python есть особенность. Символы {} используются для создания и словарей, и множеств.
3️⃣ Изолирующий лес позволяет искать выбросы в данных. С геометрической точки зрения дерево-классификатор разбивает пространство признаков на зоны прямоугольного вида. И когда мы ставим какую-то новую точку-объект, то она попадает в одну из зон.
Представим, что дерево строит эти прямоугольные зоны произвольным образом. Тогда мы будем считать, что объект изолировался, если дерево построило прямоугольник, в который попал только этот объект. Чаще всего такое происходит, если объект лежит где-то на периферии, то есть проще всего изолировать выбросы.
Для алгоритма изолирующий лес нужно:
▪️Построить N деревьев.
▪️Каждое дерево строится до исчерпания выборки.
▪️Для ветвления в дереве выбирается случайный признак и случайное значение для расщепления.
▪️В конце концов для каждого объекта считается мера нормальности — среднее арифметическое глубин листьев, в который он попал, или изолировался. Выбросы будут попадать в листья на более ранних этапах построения дерева.
#разбор_задач