Цикл кодування та декодування

Як працює візуалізація даних?

Tl; dr: Візуалізація даних - це в основному подвійне кодування складної системи. Отже, читачам візуалізації даних потрібно пройти певні етапи декодування, щоб зрозуміти та інтерпретувати дані та базову систему. Щоб створити кращу візуалізацію даних, нам як розробникам даних, розробникам або науковцям даних необхідно зрозуміти процес декодування.

цикл

Багато складних систем, з якими ми маємо справу сьогодні, такі як виробничі процеси або життєві подорожі клієнтів, в основному невидимі. Лише через непрямий шлях збору та аналізу даних ми можемо зрозуміти ці системи до такої міри, що зможемо виявити та вирішити проблеми.

Візуалізація даних може бути зручним способом зрозуміти ці дані та отримати до них доступ. Вони також повинні дозволити нетехнологіям читати та інтерпретувати дані.

Візуалізація даних є кінцевим результатом тривалого і складного процесу, в якому часто доводиться долати багато перешкод: злиття даних з різнорідних джерел, очищення, перетворення у придатні для використання формати, а іноді і статистичні розрахунки. Нарешті, ми з гордістю дивимося на барвисту та привабливу презентацію і думаємо: «Так! вперше наші дані видно! ’Ми зробили всю важку роботу і подаємо користувачеві інформацію на срібному блюді. Зараз у користувача це легко, і вже нічого не може піти не так, правильно?

Однак подорож ще не закінчена. Візуалізацію даних часто можна неправильно зрозуміти або навіть не зрозуміти взагалі. Якщо ви вже спостерігали це раніше або як читач, або як творець візуалізації, то вам слід читати далі.

За моїми спостереженнями, багато чого може піти не так. Понад десять років я розробляю користувальницькі інтерфейси для продуктів даних і переживаю болісний досвід того, що мої візуалізації часом не відповідають їх цілям. Користувачі не розуміють візуальну мову, не можуть зрозуміти структуру даних або не можуть зрозуміти значення представлених даних. У деяких особливо амбіційних проектах бізнес-аналітики ми виявили, що візуалізації потім рідко використовували. Але чому це? І як ти можеш зробити краще?

Давайте поетапно розглянемо процес створення та читання візуалізації даних, цикл кодування та декодування:

Створення візуалізації даних не починається з даних, як часто вважають, він починається набагато раніше, за системою. За всіма даними криється система в реальному світі. Зазвичай він непомітний і дуже складний.

Візьмемо, наприклад, веб-магазин. Ніхто не може просто побачити потоки відвідувачів. По-перше, нам потрібна ідея; ментальна карта цього веб-магазину, щоб вирішити, які об’єкти, властивості та події ми хочемо виміряти. Було б безліч цікавих речей - відвідувачі, веб-сайти, кошики для покупок та товари. Але не всі речі ми можемо виміряти технічно, як думки відвідувача веб-магазину, коли він вирішує не купувати товар у своєму кошику для покупок. Як би було приємно це знати!

Виявляючи об’єкти та властивості, які ми насправді можемо і хочемо виміряти, ми вже робимо вибірковий вибір щодо того, які частини системи будуть представлені в наших даних. Якщо наша ментальна карта неповна, неточна або просто неправильна, ми можемо не задавати правильних питань і вимірювати правильні дані.

Вже на першому етапі створення візуалізації даних ми повинні визнати, що ми не можемо охопити всю складність системи. Дані не є повним поданням системи, це лише крихітні шматочки показників.

Далі ми створюємо модель даних. Тут теж багато чого втрачено, оскільки модель даних не може охопити кожну деталь реального світу. Той, хто коли-небудь робив це, знає, що завищена модель даних є небезпечним монстром. Ось чому ми воліємо залишатися якомога простішими та залишати неважливі деталі. Отже, врешті-решт, ми отримуємо акуратну та чисту модель даних, яка вміщує лише крихітні шматочки інформації про систему. Перетворюючи необроблені дані в нашу модель даних, глибина інформації зменшується вдруге.

Після того, як ми зібрали дані та обробили їх, ми нарешті створимо нашу візуалізацію. Знову ж таки, велика кількість доступної інформації, що зберігається в таблицях даних, повинна бути відфільтрована, оскільки технічно типи діаграм можуть відображати лише обмежену кількість об’єктів та об’єктів. Але це не єдина причина, через яку нам потрібно зменшити обсяг представлених даних: хороший дизайн візуалізації даних враховує і людські аспекти. Нам потрібно зосередитись на повідомленні, яке ми хочемо поспілкуватись, на потребах аудиторії та на їхніх сприймаючих навичках. Таким чином, ми маємо вибрати крихітну частину з наявних даних для кожної діаграми: Можливо, один тип об’єкта та одну або дві особливості, такі як товари та показники їх продажів на день.

До цього кроку сталося дві речі, про які слід пам’ятати: по-перше, не вся складність системи видно у візуалізації, по-друге, ми двічі зашифрували систему. Спочатку вони були переведені в дані, а потім - дані у візуалізацію. Ось чому ми називаємо цей процес кодуванням, а виробники візуалізації даних кодерами.

Ми зараз закінчили? Чи остаточна візуалізація даних закінчує процес?

Ні, зовсім не, бо зараз настає друга половина, процес декодування. Декодер - це зчитувач візуалізації. Для того, щоб зрозуміти систему та отримати інформацію, що стосується дії, декодер повинен повернутися назад від візуалізації даних до даних, потім від даних до ментальної моделі. Це може бути досить складним завданням. Мета кодера - підтвердити, вдосконалити або змінити власну розумову модель за допомогою даних.

Як вона може це зробити? На першому кроці читач повинен зламати ключ перекладу. Що означають лінії, точки, положення та кольори? Що говорять мітка осі та легенда? Водночас вона намагається розпізнати структуру даних. Ці пункти на часовій шкалі - це кліки за годину для кожної країни чи товару?

Цю навичку, яка називається графічністю, не можна сприймати як належне. Її потрібно здобути, практикуючи читання багатьох різних типів діаграм та розуміння принципів структури даних. Ми повинні усвідомити, що багато людей вже зазнали невдачі на цьому кроці. Графічність нерівномірно розподілена серед населення. Тож важливо знати, який рівень має ваша аудиторія.

Якщо нашому користувачеві вдалося декодувати базову структуру даних, вона може перейти до наступного кроку: розуміння того, що фактично означають дані.

На кроці 5 декодеру спочатку потрібно отримати уявлення про реальні об'єкти, які представлені даними. Якими властивостями вони володіють? Як вони пов’язані? Чи може вона помітити візерунки? Для цього корисні статистичні знання. Це абсолютні чи відносні числа? Наскільки чисельне населення? Наприклад, які пропорції та співвідношення між джинсами, розмірами одягу та замовленнями?

Однак розуміння кількісної інформації недостатньо. Тепер вона знає, що щось сталося, але не чому. У багатьох випадках це незадовільна ситуація. Дешифратор хоче дізнатись про внутрішню роботу системи. Для цього їй потрібно інтерпретувати дані. Інтерпретація в основному означає знайти „чому”. Чому ми продаємо стільки великих джинсів? Чому в минулу суботу ми продали на 17% більше, ніж середня субота?

Тут виникає її знання домену, її ментальна карта системи. Контекст, втрачений через подвійне кодування, повинен бути доданий ще раз. Може, вона знає потенційну причину збільшення на 17% тієї суботи: маркетингова кампанія? Зміна презентації товару на веб-сайті?

Ми, кодери, перегнали та узагальнили свої знання про світ у стиснуту та абстрактну форму. Для того, щоб додати значення цим даним, щоб дізнатись чому, декодеру потрібно спуститися по сходах абстракції до конкретних речей. Ми не мислимо абстрактно. Ми мислимо конкретними образами, людьми, подіями, місцями, об’єктами та історіями. Ми розуміємо причину та наслідок у нашому світі завдяки історіям.

Отже, що робить декодер, коли вона інтерпретує дані, вона намагається зв’язати інформаційні біти з тим, що вона вже знає, зі своєю ментальною моделлю системи. Її ментальна модель побудована на її власному досвіді та історіях, які вона почула. Психічна модель також може містити абстрактну інформацію, і вона, як правило, містить. Як тільки ми зрозуміємо причинність (механіку частини системи), ми можемо абстрагуватися від конкретних деталей, наприклад, одного відвідувача веб-магазину та його мотивації до покупки, до загальної точки зору багатьох відвідувачів та щотижневих моделей.

"Люди припускають, що світ має причинно-наслідкову структуру - що його події можна пояснити природою світів, а не просто проклятими штуками за іншими". - Стівен Пінкер, Як працює розум

Додавання значення до даних - це невидимий процес, який повинен виконувати декодер. Чим більше користувач вже знає про систему, тим легше це зазвичай стає. Розглянемо шокуючу статтю The Washington Post про приголомшливий дефіцит тисячолітнього багатства. Хоча тип діаграми є дещо незвичним, я міг би його розшифрувати за хвилину. Це пов’язано з тим, що мені не лише достатньо графічності та обчислення, але й тому, що я вже знаю багато додаткових речей про візуалізовані об’єкти та метрики: я знаю про людей загалом, про покоління, імена цих трьох поколінь, про багатство та як людям вдається накопичувати заощадження протягом свого життя, про економічний розвиток у США протягом останніх десятиліть тощо. Я можу спуститися сходами абстракції до життєвих історій себе, своїх друзів та багатьох людей, про яких я читав, шукаючи потенційні причини дефіциту багатства. Читаючи цю візуалізацію даних, я міг би додати до своєї вже детальної ментальної карти світу нову деталь, повторно загостривши розмиту область.

Здорова доза критичного мислення також є частиною цього процесу. Які мотиви були у автора? Які дані відсутні? Чи можуть дані бути правильними? Чи були похибки вимірювань чи невизначеності? Чи є у мене когнітивний ухил? Які твердження я можу вивести з цього, а які ні?

Якщо читач має достатньо знань з домену, цей процес відбуватиметься майже без зусиль і несвідомо. Але якщо її ментальної карти системи недостатньо або якщо точки даних неможливо підключити до неї, вона, мабуть, зазнає невдачі на цьому кроці. Ми, кодери, несемо відповідальність за те, щоб наша аудиторія мала всі важливі знання для декодування нашої візуалізації даних.

Як ми можемо цього досягти? Як можна візуалізувати ментальні карти та моделі разом із даними? Ми, що практикують дані, іноді інтуїтивно візуалізують дані в моделях, але я справді хотів би глибше заглибитися в цю тему. Це точно матеріал для іншої статті. Крім того, я був би дуже радий, якщо у вас є якась інформація, будь ласка, зв’яжіться зі мною.

Якщо дані та ментальна модель поєднуються, декодер тепер може інтерпретувати дані та отримати практичну інформацію. Вона може розширити свої знання та вдосконалити свою ментальну карту. Вона може задати подальші конкретні питання. Що саме робить декодер з отриманими знаннями після успішної інтерпретації, залежить від мети, яку ця візуалізація даних має для неї. Тут може бути корисним роздумувати про категорію «Робота» як виконану. Візуалізація даних та продукти даних наймаються користувачами або компаніями для спеціальної роботи, як правило, одна (або більше) з них:

  • Підтримка рішень: чи завтра я повинен брати парасольку?
  • Індикація працездатності системи: чи працює веб-магазин як слід?
  • Цикл зворотного зв’язку щодо ефективності: Чи досягнув я минулого місяця цілі у 5000 кроків на день?
  • Аналіз основної причини: Чому в цьому регіоні знизився темп продажів?
  • Створення знань: чи є частинки речовиною, де я живу? Як змінюються його рівні з часом?
  • Побудова довіри: Кажуть, цей робот може виявляти неправильні рахунки-фактури з низьким рівнем помилок. Чи справді це правда?

Іноді візуалізація даних робить це неправильно. Якщо на інформаційній панелі веб-магазину відображаються ключові показники ефективності, але декодер хоче знати, які продажі товару знижуються, вона не отримує того, що їй потрібно. Якщо письменник із середнім ступенем хоче дізнатись, скільки читачів прочитали її статтю, показ лише середнього часу читання її зіпсує.

"Переклад інформації у корисні знання займає багато часу". - Nate Silver, The Signal and the Noise

Надзвичайно важливо, щоб ми, кодуючи дані та створюючи візуалізацію даних, докладали максимум зусиль, щоб точно визначити роботу продукту. Якщо ми розробляємо продукт візуалізації даних для задоволення потреб користувача, знання, отримані в цьому процесі, насправді стають корисними.

Якщо ваші користувачі мало або нічого не знають про базову систему, переклад оголених чисел у корисну інформацію може стати для них важким, навіть якщо дані візуалізуються чітко і привабливо.

Однак, як ми вже бачили, шлях до корисних знань довгий. Існує багато небезпек. Тільки той, хто стежить за повним циклом кодування та декодування, зможе створити робочий продукт даних або візуалізацію даних.

Мені приємно, що Цикл кодування та декодування (він же Керівництво з проектування даних) був включений у дослідження „Майбутні навички: рамки для грамотності даних” (німецькою мовою) Hochschulforum Digitalisierung. Посібник з проектування даних служить основою для розробленої там основи грамотності даних. Ці рамки визначають напрямок освіти в німецьких університетах. «Аналогічно критеріям оцінки мовних навичок, розроблена тут система компетентностей розрізняє процеси кодування та декодування».

Будь ласка, приєднуйтесь до бюлетеня Designation, якщо вам подобаються крихітні шматочки візуалізації даних.