На самом деле, не имеет большой разницы от какой именно собственной пограничной (находящейся на границе между двумя модулями) сущности будет зависеть модуль верхнего уровня. Интерфейс это или класс или что-то еще — неважно, главное чтобы соблюдалось основное условие — МВУ должен зависеть сам от себя.
На самом деле речь тут идет не про модули в единственном числе, речь идет про слои и модули в их рамках - модули верхнего слоя (МВУ) должны зависеть только от модулей этого же уровня.
Классическим вариантом реализации инверсии зависивостей является выделение логически связанных (или вообще всех) интерфейсов в единый модуль верхнего слоя абстракции, от которого зависят остальные модули верхнего слоя, и интерфейсы которого реализуют модули нижнего уровня.
В луковой архитектуре это будет модуль уровня домена, в гексагоналке - модуль уровня приложения. Суть от этого радикально не меняется.
мы использовали косинусное сходство (cosine similarity) как некую меру дистанции между фильмами, которая зависела от актеров, режиссеров, сценаристов и жанров. Чем меньше значение, тем сильнее фильмы похожи друг на друга.
косинусное сходство - чем ближе к 1 тем более похожи вектора. Косинусное расстояние - это другая мера.
Аналитическое решение получено, переходим к реализации на python
плохо лишь, что умножение на транспонированную матрицу дает симметричную плохо определенную, а потому мы с неизбежностью приходим к необходимости регуляризации.
Либо, в альтернативном варианте, для линейной регрессии можно написать итерационный алгоритм, вообще без расчета матриц - исходя из формул в начале статьи. Кроме того, плюсом для него будет и отсутствие необходимости пересчета полноразмерных матриц при дополнении данных (частая ситуация для МНК на практике).
на картинке "Разница между растровой и векторной графикой в структуре" растр и вектор перепутаны местами. Ну и - зачем так много букв? Разница растра и вектора в статье про телеграм-бот?
параллелится. есть берется бумажка сверху (первая проблема) и у неё выделяется несколько тегов. из них волевым осмысленным решением выбирается один. после чего всем N членам команды раздается K/N тикетов и они отвечают да или нет (правая стопка/левая) — насчет наличия в вопросе выбранного тега. по итогу — стопки справа складываются вместе, стопки слева тоже. Процесс повторяется с самого начала.
И таки да, это скучно, утомительно, но можно и нужно параллелить.
Хорошо. Давайте еще раз. Смотрите, мы получили число 0,170. На самом деле — это тоже приближение до 3 го знака. На самом деле это число иррациональное. И нам нужно его умножить на целое число, чтобы получить опять таки целое число. Т. к. это число иррациональное, то в любом случае нет такого целого числа.
да. но, если говорить про формулы из статьи, получим:
n/N ~ (ln(9)-ln(8))/ln(2)
это, по сути, ваша формула про логарифм трех по основанию два.
с малой погрешностью — 0,169925001442313; разложив в цепную дробь получим: 0;5,1,7,1,2,4,11,1,2,2,3,27,…
именно про это, как я понимаю, пытается сказать ваш оппонент — в наилучших приближениях ни одной дроби с знаменателем кратным 12 нет. Да, можно использовать 12, но примерно с теми же основаниями как и другие числа.
Можно сколько угодно пытаться натянуть сюда математику, но математика против. :)
На самом деле речь тут идет не про модули в единственном числе, речь идет про слои и модули в их рамках - модули верхнего слоя (МВУ) должны зависеть только от модулей этого же уровня.
Классическим вариантом реализации инверсии зависивостей является выделение логически связанных (или вообще всех) интерфейсов в единый модуль верхнего слоя абстракции, от которого зависят остальные модули верхнего слоя, и интерфейсы которого реализуют модули нижнего уровня.
В луковой архитектуре это будет модуль уровня домена, в гексагоналке - модуль уровня приложения. Суть от этого радикально не меняется.
Наверно, нужно чуть поправить вариант использования:
косинусное сходство - чем ближе к 1 тем более похожи вектора. Косинусное расстояние - это другая мера.
плохо лишь, что умножение на транспонированную матрицу дает симметричную плохо определенную, а потому мы с неизбежностью приходим к необходимости регуляризации.
Либо, в альтернативном варианте, для линейной регрессии можно написать итерационный алгоритм, вообще без расчета матриц - исходя из формул в начале статьи. Кроме того, плюсом для него будет и отсутствие необходимости пересчета полноразмерных матриц при дополнении данных (частая ситуация для МНК на практике).
на картинке "Разница между растровой и векторной графикой в структуре" растр и вектор перепутаны местами. Ну и - зачем так много букв? Разница растра и вектора в статье про телеграм-бот?
И таки да, это скучно, утомительно, но можно и нужно параллелить.
да. но, если говорить про формулы из статьи, получим:
n/N ~ (ln(9)-ln(8))/ln(2)
это, по сути, ваша формула про логарифм трех по основанию два.
с малой погрешностью — 0,169925001442313; разложив в цепную дробь получим: 0;5,1,7,1,2,4,11,1,2,2,3,27,…
для нахождения наилучших приближений рациональными дробями получим (посчитаем подходящие дроби): 1/5, 1/6, 8/47, 9/53, 26/153,…
именно про это, как я понимаю, пытается сказать ваш оппонент — в наилучших приближениях ни одной дроби с знаменателем кратным 12 нет. Да, можно использовать 12, но примерно с теми же основаниями как и другие числа.
Можно сколько угодно пытаться натянуть сюда математику, но математика против. :)