Клуб CDO
3.08K subscribers
380 photos
24 videos
88 files
1.44K links
Сообщество профессионалов в области работы с данными и искуственным интеллектом
Download Telegram
Было интересно, хорошая дискуссия на актуальные темы получилась
Дайджест статей 23/07/21

The Essential Data Cleansing Checklist
https://dzone.com/articles/the-essential-data-cleansing-checklist

Обзор Databrick. Что облачный продукт может дать начинающим специалистам
https://habr.com/ru/post/568276/

What Is Data Locality?
https://dzone.com/articles/what-is-data-locality

Why Your Business Should Use a Data Catalog to Organize Its Data
https://www.smartdatacollective.com/why-business-should-use-data-catalog-to-organize-its-data/?utm_source=feedburner&utm_medium=feed&utm_campaign=Smart+Data+Collective+%28all+posts%29

Персональные данные и всё, что о них нужно знать
https://habr.com/ru/post/568364/

Databook: Turning Big Data into Knowledge with Metadata at Uber
https://eng.uber.com/databook/

Turning Metadata Into Insights with Databook
https://eng.uber.com/metadata-insights-databook/

Open Source Data Lineage Tools for Data Management
https://www.knowledgenile.com/blogs/open-source-data-lineage-tools/

Хранилище комплексных данных о клиентах и его синхронизация с Hubspot при помощи BigQuery, dbt, Looker и Hightouch
https://habr.com/ru/post/568686/?utm_source=habrahabr&utm_medium=rss&utm_campaign=568686

Data Platform: Data Ingestion Engine for Data Lake
https://dzone.com/articles/data-platform-data-ingestion-engine
Puppet-State-of-DevOps-Report-2021.pdf
6 MB
Вышел новый State of DevOps Report 2021. Ранее делал анализ версии 2020 года, интересно будет сравнить что изменилось.
Дайджест статей 30/07/21

Что пролетело на радарах за неделю:

Analytics and AI Transformation
https://www.pwc.com/us/en/services/consulting/analytics.html?overlay=healthcareInfographic

What is data governance?
http://www.datasciencecentral.com/xn/detail/6448529:BlogPost:1058708

Data Collection Services Assisting Organizations to Achieve the Right Business Impact
http://www.datasciencecentral.com/xn/detail/6448529:BlogPost:1058703

Какими нормами и законами регулируется защита персональных данных?
https://habr.com/ru/company/digitalrightscenter/blog/569900/

Дайджест новостей искусственного интеллекта и машинного обучения за июль
https://habr.com/ru/post/568762/

Топ-5 инструментов для разметки данных в 2021 году
https://habr.com/ru/post/569938/
Опубликована запить митапа по Data Science, проводимого Ростелекомом.

В самом первом выступлении Максим Лисянский из LeroyMerlin рассказывает об организации функции работы с данными в компании. Как раз, в продолжении обсуждаемой ранее темы про Data Mesh, пример того как в компании сформированы распределенные продуктовые команды, вместо единой централизованной функции.

https://youtu.be/jIywXLHfG6Y
⚡️Facebook будет настраивать таргетинг рекламы на основе зашифрованных сообщений в WhatsApp

Для этого ИТ-гигант набирает команду исследователей искусственного интеллекта, в том числе нанял ключевого сотрудника из Microsoft.

Facebook - один из немногих ИТ гигантов, таких как Microsoft, Amazon и Google, которые исследуют гомоморфное шифрование.

Такой тип шифрования позволяет делать произвольные вычисления на зашифрованных данных без их расшифровки. Например, Google может делать поиск по запросу не зная, что это за запрос, можно фильтровать спам, не читая писем, подсчитывать голоса, не вскрывая конверты с голосами и многое другое.

Исследователи надеются, что эта технология позволит компании анализировать личную информацию, включая медицинские записи и финансовые данные, сохраняя при этом информацию в зашифрованном виде и защищённой от киберугроз, в случае Facebook - утечки данных рекламодателям или другим лицам.

Кристин Лаутер, которая ранее более 20 лет проработала в Microsoft, занимаясь криптографией и исследованиями конфиденциальности, присоединилась к Facebook в апреле в качестве руководителя исследования AI, в ее подчинении сейчас 120 исследователей в области шифрования, машинного обучения, робототехники и других областей искусственного интеллекта.

Неизвестно, сколько лет потребуется Facebook для внедрения такой технологии и как WhatsApp и другие пользователи Facebook отреагируют на комбинацию шифрования и рекламы.

По сравнению с другими крупными технологическими компаниями Facebook - новичок в этой области.

Например, Microsoft изучает эту технологию более 10 лет, публикуя библиотеку кода с открытым исходным кодом по этой теме и помогая создавать для нее глобальные стандарты.

А Google, IBM опубликовали код для приложений гомоморфного шифрования. IBM во время пандемии заявила, что использовала такое шифрование для анализа рентгеновских изображений для выявления у пациентов Covid-19.
Пост для любителей программной инженерии

Первый раз встретил книгу, в которой автор так конкретно и настоятельно рассказывает про методы декомпозиции требований для разработки архитектуры компонентов/сервисов программной системы, сопровождая описание отличной аргументаций и практическими примерами Я таких хороших описаний ранее не встречал (если кто встречал, поделитесь). Да и вообще, тема декомпозиции требований абсолютно не раскрыта в области Computer Science, всех учат больше кодированию, тестированию и системному дизайну с точки зрения отказоустойчивость. В вот в области декомпозиции требований и solution architect основном доминирует метод “функциональной декомпозиции”, который вроде как вообще растет из ООП и примеров в книгах на тему ООП. Собственно его все и используют, хотя по мнению автора (и не могу не согласиться) он сугубо пагубен и не приводит к возникновению элегантных и хороших архитектур программных систем, наоборот, плодя неэффективности и потери времени и денег при разработке и развитии программных систем.

Тут надо сказать, что такое “хорошая архитектура”. Как и то, что “хороший код” это код, который легко менять под изменения требований, “хорошая архитектура” - поддерживает легкое и безболезненное внесение изменений в компоненты системы. То есть задача архитектора так определить структурные компоненты системы, что бы изменение каждого из них минимально влияли на все другие. Вообще то, что изменение требований считается болью ИТ разработчиков не правильно, большинство авторов наоборот пишут о том, что изменения требований - это жизнь, это происходит и это должно быть. А наша задача вести разработку так, что бы эти изменения поддерживать.

Так вот, функциональная декомпозиция разбивает систему на структурные элементы, определяемые функциональностью системы. Один из способов выполнения функциональной декомпозиции — создание сервисов для всех разновидностей функциональности. Этот способ декомпозиции приводит к взрывному росту количества сервисов, так как система сколько-нибудь приличного размера может содержать сотни видов функциональности. В этих сервисах часто будет дублироваться большой объем общей функциональности, адаптированной для конкретного случая. Поэтому внесение изменений в систему как правило начинает затрагивать большое количество сервисов и модулей и говорить тут о красивой и элегантной архитектуре не особо приходиться.

Автор предлагает использовать другой метод - “декомпозицию на основе нестабильности” (Volatility-based decomposition). Правда тут русский перевод неточен, я бы перевел название как “декомпозиция на основе изменчивости”. Идея тут в том, что бы выделить области в требованиях, вероятность изменений которых велико и инкапсулировать эти изменения в соответсвующие компоненты/сервисы системы. Изменения при этом могут исходить из 2-х “областей”:

Изменения требований одного пользователя системы с течением времени
Изменения, которые формируются требованиями разных пользователей системы

Например, смотря на требования к системе биржевой торговли, видим такой список возможных областей нестабильности: нестабильность пользователей, нестабильность клиентских приложений, нестабильность безопасности, нестабильность хранения, нестабильность торговых позиций, нестабильность локального контекста и законодательства и тд - требования ко всем этим областям могут меняться как от разных пользователей, так и с течением времени по мере развития системы. После того как области нестабильности будут определены, необходимо инкапсулировать их в компонентах архитектуры.

Такой подход минимизирует количество изменений, которые надо будет вносить в компоненты системы, при изменении одного из них. Все изменения одной области “инкапсулируются” и макимально изолируются.

Мне такой подход показался очень правильным и элегантным. Это, конечно, краткое изложение идеи, подробнее читайте в первой главе книги: https://www.litres.ru/leve-dzhuvel/sovershennyy-soft-64073407/
Дайджест статей 06/08/21

Improving Data Processing with Spark 3.0 & Delta Lake
https://www.smartdatacollective.com/improving-data-processing-with-spark-3-delta-lake/

Строим аналитическое хранилище данных с готовыми модулями ML на Google BigQuery: просто, быстро, доступно
https://habr.com/ru/post/567078/

A 2021 Guide To Modernizing Data Integration and Supercharging Digital Transformation
https://dzone.com/articles/a-2021-guide-to-modernizing-data-integration-and-s

Are Data Intelligence Tools Part of the New Normal?
https://blogs.gartner.com/power-of-the-profession-blog/are-data-intelligence-tools-part-of-the-new-normal/
Интересная картинка
Немного оффтопик, но решил поделиться - очень интересная статья, в которой собраны основные философские концепции теории сознания. Про НС там совсем чуть-чуть, но обзор по тому что сейчас известно на тему сознания с отсылками к источникам, которые можно изучить отдельно - очень неплохой имхо.

https://habr.com/ru/post/570824/
News Recommendation System

По итогам прочтения статьи «News recommender system: a review of recent progress, challenges, and opportunities» написал тут небольшие заметки о наиболее интересных, с моей точки зрения, моментах этого исследования.

Излишне говорить о важности систем рекомендации новостей, не буду пересказывать статистику о том, как вокруг нас растёт информационный поток, но надо отметить, что в дополнение к этому росту сейчас также довольно остро встаёт проблема fake news, что делает задачу персонализации новостной ленты еще более важной и требует применения подходом, когда анализируется не только meta-информация о контенте (что сейчас применяется в большинстве движков) но и сам контент, который становится все больше мультимодальными (представляет собой текст, аудио или изображение/видеоряд).

NRS (news recommendation system), так же как и рекомендательная система для любого другого контента имеет свои особенности, сложности и вызовы. Как отдельная доменная область, новости имеют следующие особенности:

⁃ Короткое время жизни контента (тут хочу отметить интересный подход, который применён в продукте BraveNews, там коллеги используют логарифмическую функцию от возраста новости при расчете ее релевантности);
⁃ Дубликация контента - на один новостной повод публикуются большое количество новостных сообщений;
⁃ Скорость информационного потока и реакции пользователей - строить новостную ленту и отражать в рекомендациях реакции пользователей надо достаточно быстро;
⁃ У пользователей могут быть 2 типа «предпочтений/интересов» - долгосрочные и краткосрочные, которые надо учитывать при персонализации;
⁃ Необходимость контроля качества новостей, из-за влияния clickbate заголовков на популярность новости и fake news;
⁃ Новостные тренды и «связанность» новостей в рамках развития одного новостного повода, когда пользователь хочет следить за развитием какой то ситуации с течением времени;
⁃ Важность для рекомендаций сопутствующего окружающего контекста (например в период Олимпийских игр даже те, что не интересуются спортом, могут быть заинтересованы в новостях об олимпийских играх);
⁃ Эмоции - эмоциональная окраска новостей очень сильно влияет на пользовательское поведение и должна учитываться при рекомендациях.

Кроме этого, оценка качества самих рекомендаций так же имеет свои особенности, тк простая оценка «точности» на основе одной метрики (например клик) не может говорить о качестве всей новостной ленты в целом, где надо учитывать и оптимизировать такие параметры, как:

⁃ Среднее время чтения ленты пользователем;
⁃ Разнообразие новостной ленты - хорошим подходом является не сужение фокуса пользователя и создания «информационного пузыря», а внесение разнообразия в ленту (часто для этого используют даже случайное подмешивание новостей вместе с рекомендованными);
⁃ Покрытие - насколько персональная новостная лента покрывает общий информационный фон;
⁃ Novelty (не знаю как на русский правильно перевести :) ) - насколько новости не повторяют прошлые новости и отличаются своей новизной в информационном, а не временном, плане;
⁃ Неожиданность - насколько новость может «удивить» пользователя;
⁃ Важность - оценка важности новости для пользователя.

Все эти аспекты формируют и влияют на пользовательский опыт и его качество. Оценка качества данного опыта - довольно субъективна и для ее измерения используют как прямые данные (сбор метрик по кликам, скролам и тд) так и косвенные (опоросы, использование асессоров и тд).

Комбинации всех этих характеристик, являющихся всегда компромиссом друг относительно друга, формирует ряд числовых оценочных метрик для качества новостной ленты.

Что касается алгоритмов,применяемых в NRS, то самыми распространёнными остаются алгоритмы колоборативной фильтрации и content-based filtering (CF и CBF), а так же их их сочетания. В большинстве своём данные алгоритмы работают на основе meta-информации о новостях. Тем не менее в работе отмечается их недостаточное качество применительно конкретно к новостным рекомендациям.
В последнее время исследователи и разработчики все больше обращают внимание на «окружающий контекст» и алгоритмы глубокого обучения для улучшения качества рекомендаций.

К «новым» подходам в разработке NRS авторы относят использование следующих алгоритмов:
⁃ Matrix factorization и Non-negative matrix factorization
⁃ Tensor factorization
⁃ Probabilistic matrix factorization
⁃ Bayesian personalized ranking
⁃ General linear modeling

А так же их модификации на основе нейронных сетей с использование глубокого обучения, что особенно набирает популярность в последнии годы, а в случае, если идёт работа с оценкой контента новости (будь то текст, аудио или изображение), то использование CNN/RNN, а так же языковых моделей (типа BERT) становится просто жизненно необходимым.

Еще одним преимуществом использования NN является возможность обучаться в процессе взаимодействия пользователя с контентом. Так же модели, в основе которых находится deep learning, показывают хорошее качество при моделировании последовательного новостного контента и в случаях холодного старта, за счёт того, что они выявляют такие признаки в контенте, которые позволяют сформировать рекомендации даже в случае разряженных данных, на которых подходы на основе CF/CBF показывают плохой результат. Особенно выдающиеся результаты данные модели показывают с применением механизма внимания.

Все перечисленные выше особенности находят своё отражение не только в алгоритмах, которые «затачиваются» под задачи NRS, но в специализированных платформах для создания NRS, таких как CLEF NEWSREEL, streamingRec и MIND.

К основным сложностям создания NRS относят:
⁃ Требуемая скорость обработки данных и чувствительность к «свежести» новости
⁃ Оценка метрик «качества» новостной ленты
⁃ Оценка качества новостного контента (дедубликация, fake news и тд)

PS опускаю в этих заметках части исследования, посвящённые проблематики информационного пузыря, анонимности пользователей и прочим моральным-этическим аспектам, являющихся в целом общими для рекомендаций любого типа контента

[2009.04964] News Recommender System: A review of recent progress, challenges, and opportunities
Forwarded from Инжиниринг Данных (Dmitry Anoshin)
Первые 3 недели в роли менеджера Data Engineering https://tiffanyjachja.medium.com/my-first-three-weeks-a-data-engineering-manager-8b0be08da7a5
Facebook на фоне скандалов и давления в области защиты пользовательских данных активно развивает направление Гомоморфного шифрования и усиливает конманду лучшими с мире специалистами в этой области.

Во вложении статья с The Information (доступ к ней на сайте платный, поэтому прикладываю файлом эксклюзивно для участников этого канала).

Гомогенное шифрование - форма шифрования, позволяющая производить определённые математические действия с зашифрованными данными и получать зашифрованный результат, который соответствует результату операций, выполненных с открытыми данными. Например, один человек мог бы сложить два зашифрованных числа, не зная расшифрованных чисел, а затем другой человек мог бы расшифровать зашифрованную сумму — получить расшифрованную сумму, не имея расшифрованных чисел.

Facebook интересуется темой в первую очередь в задаче использования данных Whatsup в рекламной платформе самого Facebook. Напомню, что за WU была заплачено очень большая сумма в расчете именно на повышение привлекательности Facebook Ads на рекламном рынке, но активности регуляторов сейчас ограничивают возможности по реализации этой синергии.

Пока данный подход находится на ранеей стадии исследования в Facebook, хотя многие крупные игроки уже имеют разработанные решения.
Дайджест статей 21/08/2021

Обдурить Шаи-Хулуда
https://habr.com/ru/post/573766/

Как в Datalake объединить слишком большое количество небольших файлов в несколько больших с помощью Apache Spark
https://habr.com/ru/post/572522/

Как не утонуть в озере данных: инструкция от РСХБ
https://habr.com/ru/company/rshb/blog/573322/