Протидія деструктивним наративам, фейкам та дезінформації в інфопросторі — постійна та часто виснажлива робота фактчекерів. Хоча розвінчування фейків «вручну» має переваги, але масиви дезінформації занадто великі, тож люди фізично не можуть впоратися з ними. Ще у 2021 році Катерина Крук, яка тоді працювала менеджеркою Facebook із публічної політики для України, в інтерв’ю для ДМ розповіла1, що соцмережа щодня видаляла близько мільйона ботів. Через це у фактчекінг-ком’юніті з’явився запит на пошук автоматизованих рішень. Одне з таких належить команді Mantis Analytics.
Команда розробила сервіс для автоматичного пошуку потенційної дезінформації за допомогою штучного інтелекту. Завдяки аналізу модель видає оцінку підозрілості тексту.
Про стартап, його досягнення, перспективи й майбутні плани поспілкувалися зі співзасновником Mantis Analytics Антоном Тарасюком.
Як усе працює?
Насамперед ми збираємо дані — будь-які текстові дані, до яких можемо дотягнутися. Вони можуть бути відкриті, на зразок соцмереж, або закриті, як от внутрішні дані компанії або якоїсь організації (якщо вони, звісно, захочуть співпрацювати). Нам не принципово, з якими даними працювати. Проте історично ми почали використовувати соціальні медіа, і більшість нашого досвіду пов’язана з ними.
Збір даних відбувається по-різному. Наприклад, у телеграмі це робить мережа ботів партнерської організації. Наш архів містить дані з 24 лютого 2022 року. Ми моніторимо більше ніж 300 тисяч каналів, це близько чотирьох мільйонів повідомлень: постів, репостів, коментарів тощо. Маємо вже близько 700 терабайтів даних.
Інші соцмережі ми особисто не збираємо. Якщо потрібно, то ці дані ми закуповуємо в провайдерів — компаній, чиєю спеціалізацією є збір даних. Єдина проблема зараз — твіттер, бо нещодавно Маск значно ускладнив2 роботу з ним: доступ до даних тепер коштує десятки тисяч доларів, і все працює з помилками.
Перед тим, як аналізувати дані, їх треба очистити та обробити. Адже переважна більшість інформації буде нерелевантною. Йдеться про сміття, спам, повтори, дублікати, рекламу тощо. Також треба прибрати помилки. Уявімо, що потрібно знайти інформацію про селище Залужне. Для цього ви, скажімо, збирали дані за ключовими словами. Але ваші пошукові боти зібрали все про Залужного, тобто не тільки селище, а й людину. І тепер у вас є нерелевантні дані, які не стосуються предмета аналізу. Такі контекстуальні питання, як «йдеться про людину чи про селище», дуже добре може розв’язувати штучний інтелект. Це хороший спосіб прибрати зайве і все правильно категоризувати.
На етапі обробки треба виділити два види сутностей. Ми їх називаємо «фізичні події» та «ментальні сигнали» (Фізичні події стосуються інформації, яка позначає явища у фізичному світі, наприклад, обстріл, аварію або затор на дорозі. Ментальні сигнали можуть не бути прямо пов’язані з фізичними подіями, часто вони спрямовані на зміну публічної думки, проте можливі й кореляції. Наприклад, спекуляції на тему розкрадання зброї, ядерної загрози, дискредитації української влади тощо — ред.). Виходить такий .
Уже після цього ми застосовуємо ШІ повною мірою. Тобто штучний інтелект з'являється ще на другому етапі, аби почистити дані, але серйозний аналіз відбувається на третьому етапі, коли в роботу вступає основний набір . Тут ми виявляємо наративи, локалізуємо події (якщо йдеться саме про фізичні події, то геолокації можна встановити на карті — ред.), ідентифікуємо потенційну дезінформацію, знаходимо техніки пропаганди й так далі. Модуль, який стосується дезінформації, ми називаємо Disinformation Detection Tool. Він може працювати автономно, коли нам, наприклад, треба зробити якесь дослідження з дезінформації й більше нічого, але він працює і як один із елементів у системі.
Як тренувати модель з розпізнавання дезінформації?
Ми довго думали, як працювати з такою моделлю. Вирішили, що найкращий спосіб — взяти фактчекерів, подивитися на їхній робочий процес, виокремити етапи, які ми можемо передати штучному інтелекту, та зрозуміти, які не можемо передати ШІ.
Потім треба розмітити дані за допомогою фактчекерів. Наприклад, ми взяли дописи й попросили їх оцінити за тією методологією, яку ці люди самі використовують. Так вони розмітили, умовно, 500+ дописів. Далі наше завдання — зробити, щоб машина мала такі самі результати на таких самих даних. Звичайно, машина завжди робить помилки, але наше завдання — аби на цих тестових даних результат був максимально близьким до професійних фактчекерів. Далі потрібно розширити кількість цих кейсів й постійно додавати нові, аби модель навчалася.
Як перевірити результативність продукту?
Збір даних, обробка, аналіз, репрезентація — на кожному з цих етапів різні метрики. Поговорімо саме про аналіз.
Насамперед це класичні метрики, які використовуються в NLP та LLM-моделях. Вони мають назви Precision, Recall, F1 тощо. Тобто це технічні метрики, які використовуються в індустрії, аби зрозуміти, чи модель добре працює.
Уявімо, що фактчекери промаркували набір даних з 500 одиниць за своєю системною оцінкою. Ці метрики визначають, наскільки те, що робить машина, відповідає тому, що роблять спеціалісти.
Друге — це внутрішні метрики. Тобто ті, які стосуються не так моделей, як методології. Наприклад, ми вирішили працювати з дезінформацією. А що взагалі таке дезінформація? Коли хлопець бреше дівчині, це дезінформація чи ні? Насправді це питання не таке тривіальне, тому що немає чітких визначень, які можна конвертувати у вимірювані й обчислювальні форми.
Наприклад, у нас є модель, яка займається пошуком пропагандистських технік. Для неї ми адаптували наукові роботи, які займаються ідентифікацією пропагандистських та маніпулятивних технік. Тобто вони виділяють слогани, посилання на авторитет, повтори, whataboutism (тобто коли я кажу, що росіяни вбили дитину в Одесі, а мені відповідають: «А що американці зробили в Іраку?») тощо. Тут наш підхід — це спиратися на експертні дослідження.
Хочеться наголосити на важливості цих метрик. Тому що автоматизувати й зробити класну модель з технічного боку можна яку завгодно, але важливо, аби вона спиралася на фахові дослідження. І якщо результати аналізу будуть обговорювати в суді (або в будь-якому іншому контексті, який впливатиме на ухвалення рішень), то кожна людина повинна бачити ланцюжок міркувань та висновків машини, вони мають бути переконливими. Це той момент, коли технологія перетинається з більшим суспільним контекстом.
І третій момент — це вимірювати ефективність з погляду клієнта. Так, у проєкті з РНБО, де ми займалися і займаємося моніторингом російських інформаційних кампаній, у нас була така метрика: чи їхні аналітики приймають наш звіт, який генерується автоматично щодня, без коментарів і правок? Спочатку рівень був близько 30%. Тобто в 70% випадків вони мали щось доправити. Десь за пів року інтенсивної роботи ми підняли планку з 30% до 80%.
Це залежить від завдання, звісно, але ми також дивимося, щоб клієнт був задоволений. Тому одна справа — коли це технологічно класно. Інша справа — коли це методологічно вивірено. А третя — щоб користувач, врешті-решт, був задоволений і мав від цього користь. Це три параметри ефективності.
Як ви розділяєте дезінформацію і пропаганду?
Структурно це різні моделі. У нас є етап аналізу, і на ньому одна модель займається ідентифікацією потенційної дезінформації, а друга — виявленням пропаганди.
Ми визначаємо пропаганду як набір маніпулятивних технік. І тут треба зробити важливе зауваження, що контент може бути й хорошим. Якщо ми візьмемо тренінг Тоні Роббінса або промову Вінстона Черчилля, це матеріали, перенасичені техніками впливу. Там будуть і слогани, й емоції — що завгодно. З технічного погляду, це буде пропаганда, тобто спроба вплинути на поведінку за допомогою виразів та слів. Проте тут не треба застосовувати модель. По-перше, люди знають, що вони слухають у цих випадках (вони дають вплинути на себе добровільно). По-друге, зрозуміти, що ці тексти мають на меті вплив, може кожна медіаграмотна людина. Виявлення пропаганди за допомогою ШІ важливе, коли у вас є тисячі одиниць контенту, великий потік.
Дезінформація — це інформація, яка є хибною і шкідливою. Згідно з визначенням, шкідливою за наміром. І тут виникають великі проблеми. Бо як ми можемо зрозуміти, що інформація шкідлива за наміром? Як зрозуміти, що інформація хибна? Наприклад, згадаймо час, коли ще не було офіційних повідомлень, але казали, що Залужного звільнили. Це хибна чи правдива інформація? Не знаю. І відповідно, ми можемо, згодовуючи штучному інтелекту все більше таких кейсів, навчити його бачити за цими кейсами якісь патерни, й за цими патернами визначати рівень підозрілості. Це не означає, що він завжди матиме слушність, але в більшості випадків він буде давати адекватну оцінку.
Пропаганда і дезінформація — це різні речі. І вони дають відповіді на різні питання. До того ж можна одночасно перевірити одну й ту саму інформацію з різних боків. І що більше у вас є думок, погляду на певну інформацію, то краща ваша база для ухвалення рішень.
Під час презентації свого проєкту на акселераторі Mediengeist ви згадували про навчання спільнотою. Чи вже впроваджена ця функція та хто і як може вплинути на навчання технології?
Уже впроваджена в закритому режимі, поки це роблять лише фактчекери. Надалі це так і буде. Тобто не потрібно навчати будь-якою спільнотою, треба навчати спеціалізованою. Нині це робить VoxCheck, але ми хочемо розширити навчання на загальну українську фактчекінгову спільноту, а потім — і міжнародну. Це важливий процес з будь-якою моделлю штучного інтелекту, її треба завжди навчати.
Як? Є два способи. Перша — це нові кейси. Наприклад, людина знайшла якийсь кейс, вона застосовує до нього модель і модель дає неправильний результат. Це вже добре, тому що це значить, що модель треба більше навчити.
Друга — це оцінювання старих кейсів. Оскільки це інструмент для індустрії і він має відповідати певним стандартам та потребам, то люди з індустрії мають сказати, що він виконує добре, а що — погано. Це можна робити на рівні «клієнт–виконавець», але можна і спільнотою. І тут ми хочемо також використати другий шлях.
Які мови може аналізувати технологія сьогодні?
Англійську, українську та російську. Чи буде ставати їх більше? Залежить від потреб. Якщо є конкретний запит і люди захочуть у це вкластися, то ми готові з цим попрацювати. Якщо треба швидкий аналіз, то завжди можна перекласти англійською і застосувати англійську.
Яка цільова аудиторія стартапу?
Ми почали з незвичного шляху для стартапу, з роботи з Радою національної безпеки й оборони. Після початку повномасштабного вторгнення група волонтерів сиділа в чаті AI/ML-спільноти, потім хтось знайшов контакт РНБО. У ті кілька місяців, пам’ятаю, можна було знайти чий завгодно телефон. Вони шукали тих, хто допоможе їм трошки розвантажити аналітику й допомогти інтегрувати дані в їхні внутрішні системи.
Згодом ми зрозуміли, що хочемо робити стартап, а не просто бути волонтерським проєктом. Так ми почали працювати з аналітичними центрами і трошки з медіа. Але наш цільовий клієнт — це корпоративний сектор, менеджмент ризиків для компаній.
Хто і як нині може скористатися вашою розробкою?
В ідеалі людина має заходити на платформу і робити все сама. Але наразі ми не надаємо платформу у відкритому доступі. Тому людина, яка хоче це зробити зараз, має приходити до нас, і ми будемо їй допомагати. Тому що ми досі працюємо над тим, аби платформа була надійною й давала необхідну цінність, щоб користувач міг працювати і самостійно, і без збоїв, і легально. Щоб почати працювати з Mantis Analytics наразі, треба почати зі спілкування з нами. Але наш план на рік — це вивід платформи на продуктові рейки, коли ми туди можемо заводити людей, щоб вони працювали самостійно. Комерційно це наша мета також. Адже одна справа — робити проєкти під замовлення, а інша справа — коли це платформа, яку людина сама використовує. Це різний рівень масштабованості з погляду бізнесу.
Яким ви бачите розвиток вашого проєкту?
Дуже просто, це три речі. Перше — фандрейзинг. Ми підіймаємо інвестиції на . Ми вже зібрали майже половину грошей від тих, яких потребуємо. Нам це важливо, тому що дозволить нам завершити роботу над платформи й почати продавати її. Друге — перші корпоративні контракти. Третє — це ринки. Наші ринки — це переважно Європа і США, тому для нас важливі контракти саме там.
