Допустим, вы инвестор-финансист, покупающий государственные облигации банановой республики или акции компании по выращиванию и поставке бананов или даже правитель бананового рая – всегда необходимо учитывать не только финансовые, но и политические риски в развитии страны. Представим, что наша основная задача - оценить риски. Просто, цинично в стиле real politic без всякой душеспасительности.
Для начала попробуем отказаться от догматической приверженности той или иной теории, идеологии (они всегда способствуют замыливанию взора и эффекту «тоннельного видения»), а также признать имеющую место быть случайность в политических, экономических и финансовых процессах и согласиться на менее строгий «вероятностный» вывод вместо жесткого причинно-следственно.
Такие «черные лебеди» как кризисы конца девяностых XX и нулевых годов XXI века часть аналитиков уже научилась предсказывать, а некоторые даже зарабатывать на этом. С политическими страновыми рисками дело обстоит иначе. Устойчивость политических систем из-за идеологических предубеждений как правило существенно недооценивают или наоборот переоценивают.
Разумеется, существует достаточно много «теорий революции», «теорий кризисов». Однако публичная их часть является скорее конгломератами политических нарративов.
Серьезные работы как правило мало известны широкой публике, и имена наподобие Джека Голдстоуна или Питера Турчина не несут содержательной информации для читателя в большинстве случаев. Пока, как в ситуации с Нассимом Талебом или тем же Питером Турчиным, они не окажутся в нужное время в нужном месте со сбывшимся предсказанием в нужной аудитории, дав соответствующее интервью. Что также является скорее вероятностным событием, чем закономерным, детерминированным. Так же, как и на самом деле большинство «успехов» финансистов, политиков или артистов - реализованных «не благодаря, но вопреки». Оценка деятельности, которых искажена благодаря «эффекту выжившего» и другим когнитивным парадоксам мышления – достаточно вспомнить известную шутку про многочисленное племя обезьян за печатными машинками, одна из которых (теоретически) может напечатать «Войну и мир».
С увеличением темпа социальных, политических и экономических изменений потребность обобщения принимает крайне острую форму: чтобы не только осмыслить события прошлого, но и прогнозировать будущее. Ускоренный темп жизни может привести к тому, что традиционные политологические теории, претендующие на выявление причинно-следственных связей , будут устаревать сразу после их публикации, а возможно и до. Наступит та самая «теоретическая сингулярность», коллапс. Но только для самих теорий.
Отчасти снять остроту данной проблемы может переход от установления жестких причинно-следственных зависимостей к вероятностным выводам. 85%-вероятность политического кризиса, революции или иной ситуации нестабильности – это такой же повод принять необходимые меры. И даже 50%, 25% вероятностный вывод – не повод расслабляться. Особенно финансистам, рассчитывающим страновые и региональные риски для капитала. Не говоря уже о специалистах сферы политического управления, да и некоторым политикам – тоже, чтобы не оказаться в ситуации «прячущегося в турбине самолета», если что-то пойдет не по сценарию и против воли режиссера.
И именно здесь как теоретическому исследователю, так и практику может помочь машинное обучение. Алгоритм или модель не дает жестко детерминированного вывода, но лишь вероятностный.
Сама политическая система может быть уподоблена масштабной модели принятия решений, со своими метриками эффективности, результативности, производительности, критериями точности принимаемых решений. И вовсе не означает, что нужны радикальные преобразования для повышения ее эффективности – достаточно провести ту самую «настройку гиперпараметров».
Для иллюстрации идеи прогнозирования политических кризисов максимально упростим задачу: мы не будем предсказывать вероятность наступления того или иного события в будущем, но попробуем определить его наступление на исторических данных (в произвольный момент времени в прошлом).
Не будем использовать временной лаг между факторами, характеризующими ситуацию в стране и произошедшими событиями и другие ограничения, так же остановимся на самой простой двухфакорной классификации.
Источник данных и их предобработка
В нашем случае, алгоритм, обученный на 70%-тренинговой выборке, будет проверяться на 30%-тестовой (более сложны предиктивные должны будут применять механизмы кросс-валидации и ряд других методов).
Единственный «фокус», который мы используем, - это оверсемплинг, генерацию синтетических данных для тренинговой выборки для выравнивания баланса классов. Все-таки так же революция или ее попытка – это довольно редкое событие. Впрочем, ни разу не уникальное. А потому для нас подходит метод классификации, а не выявления аномалий.
Мы будем использовать базу данных The Cross National Time Series (CNTS), которая содержит годовые значения около 200 переменных для более чем 200 стран, начиная с 1815 г. за исключением периодов двух мировых войн 1914–1918 и 1939–1945 гг. База структурирована по разделам и включает статистические данные по территории и населению страны, информацию по использованию технологий, экономические и электоральные данные, информацию по внутренним конфликтам, использованию энергии, промышленной статистике, по военным расходам, международной торговле, урбанизации, образованию, занятности, деятельности законодательных органов и т.п.
Для проверки предположения используем выборку данных с 1991 по 2019 год, поскольку этот период достаточно близкий к нам для понимания, но в то же время еще не наступили события «ревущих двадцатых» XXI века, начавшиеся с пандемии COVID-19 и характеризующиеся существенным уровнем геополитического противостояния, которое предполагает искажение фактов и событий в угоду политических нарративов или наличие «множественной правды» в зависимости от политических пристрастий и интерпретаций.
В исходной базе данных под прогнозируемыми событиями подразумевается «любое незаконное или насильственное изменение в высшей правительственной элите, любая попытка такого изменения или любое успешное или неудачное вооруженное восстание, целью которого является независимость от центрального правительства (сепаратизм)» (категория - domestic7
) То есть объем понятия не совпадает с тем, что мы подразумеваем, когда говорим про слово Революция с большой буквы, будь то Октябрьская революция 1917 года или Французская буржуазная революция. В указанный объем входят так же сепаратистские выступления, в том числе и неудавшиеся. Так же «за кадром» остаётся факт внешней инициации кризисных событий. Модель с учетом действий транснациональных корпораций в «банановых республиках» или мировых гегемонов будет носить более сложный характер.
Всего на данный период времени насчитывается 588 кризисных эпизодов или 10,34% от общего количества наблюдений, сгруппированных по принципу одна страна – один год (5686 наблюдений).
Модель исследования
Перед нами стоит исследовательская задача – выяснить, можно ли предсказать возможность кризиса, основываясь на наборах статистических данных по годам. Причем сделать это мы должны лучше, чем с коэффициентом 0.5 – соответствующему случайному гаданию!
Пока мы оцениваем только возможность. Но в идеальном случае, нам хотелось бы видеть и вероятность реализации подобного сценария, а также факторы, которые ему будут способствовать.
И данную задачу мы принципиально будем решать «в лоб» без опоры на какие-либо политические теории и предварительные выводы. Или, если использовать язык науки о данных, мы не будем использовать «предобученные модели».
Все что у нас есть – это размеченные исторические данные, свидетельствующие о том, что в определённой стране в определенный год событие было (1) или его не было (0).
Сформированный датасет из 5686 записей в 151 клонках-признаках мы трансформируем, уберем пропуски, заполнив их единым значением (9999). Пропуски в данных – это всегда плохо, они снижают итоговую точность, но в данном случаем мы вынуждены с этим смириться – в реальной жизни приходится действовать ситуации с еще большей неопределенностью.
Далее мы разделим весь набор данных на тренинговый (70% или 3980 записей) и тестовый (30% или 1706 записей). Для выравнивания классов с помощью RandomOverSampler
из раздела модуля imblearn.over_sampling
мы преобразуем тренинговую выборку для выравнивания баланса классов (тестовую, естественно, мы не трогаем), увеличив ее до 7118.
Далее, чтобы сразу получить более значимый результат мы используем ансамблевые модели машинного обучения вместо базовых, таких как например «логистическая регрессия» или машина опорных векторов». Модели будет использоваться в базовой настройке для оценки их исходных метрик и скорости. В их числе: AdaBoostClassifier, BaggingClassifier, ExtraTreesClassifier, GradientBoostingClassifier, RandomForestClassifier, StackingClassifier, VotingClassifier, HistGradientBoostingClassifier, CatBoostClassifier, lgb.LGBMClassifier, xgb.XGBClassifier.
Метрики оценки моделей - стандартные:
Accuracy – доля правильных предсказаний (истинно положительных и истинно отрицательных) от общего числа предсказаний.
Precision – доля истинно положительных результатов среди всех предсказанных положительных. Показывает, насколько положительные предсказания верны.
Recall – доля истинно положительных результатов среди всех реальных положительных. Показывает, насколько хорошо модель находит положительные примеры.
F1_score – гармоническое среднее Precision и Recall. Используется для балансировки между ними, особенно в случае несбалансированных классов.
ROC_AUC – (Площадь под ROC-кривой): мера качества модели, показывает, насколько хорошо модель различает положительный и отрицательный классы. AUC (Area Under the Curve) равен 1 для идеальной модели и 0.5 для случайного гадания.
Промежуточные итоги
Первый вывод, который мы получили – революции и кризисы предсказывать можно на имеющихся данных. Все модели показали ROC_AUC больше 0.5, что соответственно выше уровня «случайного гадания». Гипотеза предсказуемости - подиверждена. Точность (accuracy) в 0.92-0.93 была бы достаточна для принятия решений, если бы мы говорили о событиях, происходящих/не происходящих с примерной одинаковой частотой. Но в случае с исходным дисбалансом классов этой метрики будет мало.
Апгрейд и тюнинг модели
Возьмем для дальнейшей работы lgb.LGBMClassifier.
Он достаточно быстр для решения задачи, достаточно удобно «тюнингуется» для повышения метрик качества. Хотя, не исключено, что применение других методик может добиться более высоких результатов при правильной настройке. Но для скорости обработки данных мы выбрали один из самых быстрых методов. Для принятие политических решений, отметим, скорость – это очень важный фактор. И иногда можно пожертвовать точностью и другими характеристиками, чтобы получить максимально полезный результат за минимально необходимое время.
Оптимизировать гиперпараметры lgb.LGBMClassifier
мы будем с помощью модуля Optuna
сначала в целях повышения общей точности (accuracy) и других метрик.
Тюнинг модели
# Оптимизационная функция для Optuna
def objective(trial):
# Подбор гиперпараметров
param = {
'objective': 'binary',
'metric': 'binary_logloss',
'verbosity': -1,
'boosting_type': trial.suggest_categorical('boosting_type', ['gbdt', 'dart', 'goss']),
'num_leaves': trial.suggest_int('num_leaves', 20, 150),
'max_depth': trial.suggest_int('max_depth', -1, 20),
'learning_rate': trial.suggest_loguniform('learning_rate', 1e-4, 1),
'n_estimators': trial.suggest_int('n_estimators', 50, 500),
'subsample': trial.suggest_float('subsample', 0.5, 1.0),
'colsample_bytree': trial.suggest_float('colsample_bytree', 0.5, 1.0)
}
# Создание и обучение модели
model = lgb.LGBMClassifier(**param)
model.fit(X_train, y_train)
# Предсказания и оценка
y_pred = model.predict(X_test)
y_prob = model.predict_proba(X_test)[:, 1] # Получаем вероятности для положительного класса
recall = recall_score(y_test, y_pred)
precision = precision_score(y_test, y_pred)
accuracy = accuracy_score(y_test, y_pred)
roc_auc = roc_auc_score(y_test, y_prob)
f1 = f1_score(y_test, y_pred)
return f1
# Создание исследования Optuna
study = optuna.create_study(direction='maximize')
study.optimize(objective, n_trials=100)
На подобранных гиперпараметрах (boosting_type='goss', colsample_bytree=0.6236844468401513, learning_rate=0.16015584113549294, max_depth=16, n_estimators=433, num_leaves=36, random_state=42, subsample=0.84971655916001)
модели lgb.LGBMClassifier
мы получили следующие результаты:
Таблица 1. Метрики оценки LGBMClassifier после оптимизации гиперпараметров под accuracy
precision |
recall |
f1-score |
support |
|
0 |
0.945860 |
0.980198 |
0.962723 |
1515 |
1 |
0.779412 |
0.554974 |
0.648318 |
191 |
accuracy |
|
|
|
0.932591 |
macro_avg |
0.862636 |
0.767586 |
0.805520 |
1706 |
weighted_avg |
0.927225 |
0.932591 |
0.927523 |
1706 |
Для наглядности оценим наши ошибки – см. матрицу ошибок. Всего у нас было 1706 тестовых случаев (страны за период времени). Мы верно определили, что в 1485 случаев кризиса не будет и только в 30 ошиблись - и здесь и нашему гипотетическому правителю из «банановой республики» все же пришлось познакомиться с «турбиной самолета». Находясь в самолете или нет – тут уже как повезло.
Важен так же тот факт, что мы верно определили кризис в 106 случаев, а в 85 – «проглядели». в 1485 - сделали верный вывод об отсутствии и в 30 случаев - ошиблись, "подули на воду" Хотя для условного правителя из банановой республики это не так важно: ради сохранения власти он так и так перестраховывается, и предпринимает необходимые меры.
Важен тот факт, что «тюнингованная модель» принятия решении дала нам прирост метрики ROC_AUC до 0.93. И если исходить из того, что политическая система – это в первую очередь модель принятия решений, то теоретически возможен ее «апгрейд» за счет подбора и настройки ее гиперпараметров. А значит появляется возможность избавиться от большинства внутренних кризисов и успешно противостоять внешним.
И, если наш условный «банановый правитель» является прагматичным сторонником эффективности и результативности, то на определенный (ограниченный) период времени его государство по качеству принимаемых политических решений может даже обогнать по эффективности самую передовую демократию. Особенно, если ее настройки, мягко скажем, могут не соответствовать изменившейся ситуации, а искажения и аномалии в данных и вовсе пускают процесс прогнозирования и планирования под откос.
С учетом дисбаланса классов было бы правильно использовать при настройке гиперпараметров метрику f1 (среднее гармоническое между Precision и Recall). Поэтому при оптимизации модели LGBMClassifier(boosting_type='goss', colsample_bytree=0.6722209119830994, learning_rate=0.034639181156243586, max_depth=5, n_estimators=287, num_leaves=124, random_state=42, subsample=0.967460261273091)
мы получим несколько другие значения.
Таблица 1. Метрики оценки LGBMClassifier после оптимизации гиперпараметров под f1
precision |
recall |
f1-score |
support |
|
0 |
0.958388 |
0.957756 |
0.958072 |
1515 |
1 |
0.666667 |
0.670157 |
0.668407 |
191 |
accuracy |
0.925557 |
0.925557 |
0.925557 |
0.925557 |
macro avg |
0.812528 |
0.813956 |
0.813240 |
1706 |
weighted avg |
0.925728 |
0.925557 |
0.925642 |
1706 |
И здесь мы видим, что несмотря набольшее количество ошибок в прогнозировании (мы проглядели 63 кризисных события) и "дули на воду" в 64 случаях, но зато точно определили истинно положительный класс (те самые наступившие кризисные события целых 128 из 191).
Еще раз отметим, что наш условный «банановый правитель» как и внешний инвестор, который бы хотел вложиться в выращивание бананов и финансист, который бы инвестировал в государственные облигации банановой республики и покупал акции совместного бананового предприятия должны руководствоваться не только фактами. Из алгоритма так же можно вытащить вероятности не наступления/наступления прогнозируемого события.
Чем ближе показатель в левом столбце к единице – тем больше вероятность, что кризисное событие не произойдет, чем ближе к единице показатель в правом столбце – тем больше вероятность, что негативное событие произойдет. Хотя и для «бананового диктатора» и внешнего инвестора даже значение в районе 0,5 и немного ниже в правом столбце должны бы стать поводами для беспокойства.
Располагая всем объемом выборки можно определить вклад каждого показателя (из перечня в 151 позиции). С тем условием, чтобы впоследствии убрать малозначимые признаки, определить механизм влияния каждого из них, искать примеры взаимной корреляции.
Приведем часть этого списка с выявленными весами признаков. Отметим, что конкретный механизм влияния каждого признака на реализацию/не реализацию события нуждается в дополнительном уточнении – и связь «чем показатель больше», тем вероятность выше – является слишком большим упрощением. Зависимость может иметь и более сложный характер. И здесь мы сталкиваемся с одной из самых важных фундаментальных проблем применения машинного обучения и глубокого обучения – не все алгоритмы и модели одинаково хорошо подаются интерпретации. Большинство сложных нейросетей представляют для исследователя «черные ящики», и не всегда можно раскрыть, что находится «под капотом» той или иной модели.
В нашем случае дело чуть проще. С помощью feature_importance
мы можем получить веса модели и определить, чем она руководствовалась при принятии решения.
Веса модели (основные)
№ |
Feature |
Importance |
% |
Расшифровка |
52 |
energy4 |
353 |
1.84% |
Потребление энергии в килограммах нефтяного эквивалента на душу населения |
71 |
legis07 |
336 |
1.75% |
Размер законодательного органа/количество мест, крупнейшая партия (Масштаб: 0,01) |
18 |
delta15 |
330 |
1.72% |
% годового прироста: количество телефонов на душу населения (масштаб: 0,01) |
43 |
economics6 |
312 |
1.63% |
Официальный/основной обменный курс, местная валюта/доллар США (Масштаб: 0,01) |
8 |
delta01 |
310 |
1.62% |
% годового прироста: население (масштаб: 0,01) |
26 |
delta23 |
291 |
1.52% |
Ежегодный прирост в %: потребление энергии в килограммах на душу населения (масштаб: 0,01) |
90 |
phone4 |
283 |
1.48% |
Телефоны, исключая сотовую связь на душу населения (масштаб: 0,00001) |
110 |
pop2 |
281 |
1.46% |
Плотность населения (Масштаб: 0,1) |
33 |
delta33 |
276 |
1.44% |
% годового прироста: валовой национальный продукт на душу населения (масштаб: 0,01) |
15 |
delta08 |
274 |
1.43% |
% годового прироста: экспорт на душу населения (масштаб: 0,01) |
109 |
pop1 |
272 |
1.42% |
Население (масштаб: 1000) |
131 |
trade2 |
267 |
1.39% |
Импорт на душу населения (Масштаб: 0,01) |
54 |
indprod2 |
262 |
1.37% |
Производство электроэнергии (кВтч) на душу населения (масштаб 0,1) |
32 |
delta32 |
255 |
1.33% |
% годового прироста: валовой внутренний продукт на душу населения (масштаб: 0,01) |
14 |
delta07 |
252 |
1.31% |
% годового прироста: импорт на душу населения (масштаб: 0,01) |
5 |
computer4 |
251 |
1.31% |
Число интернет-пользователей на душу населения: (0,000001) |
119 |
school02 |
250 |
1.30% |
Охват начальным образованием на душу населения (масштаб: 0,0001) |
86 |
military2 |
250 |
1.30% |
Расходы на национальную оборону на душу населения (масштаб: 0,01) |
65 |
legis01 |
247 |
1.29% |
Количество мест, крупнейшая партия в законодательном органе |
41 |
economics2 |
246 |
1.28% |
Валовой внутренний продукт на душу населения (факторная стоимость) |
25 |
delta22 |
244 |
1.27% |
Ежегодный прирост в %: производство энергии в килограммах на душу населения (масштаб: 0,01) |
123 |
school06 |
241 |
1.26% |
Охват начальным и средним образованием на душу населения (шкала: 0,0001) |
133 |
trade4 |
236 |
1.23% |
Экспорт на душу населения (Масштаб: 0,01) |
129 |
school12 |
234 |
1.22% |
Процент грамотных (масштаб: 0,1) |
31 |
delta31 |
234 |
1.22% |
% годового прироста: врачей на душу населения (масштаб: 0,01) |
Выводы
Результат нашего поверхностного экскурса в предиктивную политическую аналитику:
Мы выяснили, что революции и политические кризисы можно прогнозировать. И качество прогнозов гораздо выше пресловутых "50 на 50". Даже на базовых настройках ml-алгоритмов. На самой простой модели.
Небольшое улучшение по метрикам качества дает настройка прогностической модели (настройка гиперпараметров).
Можно определить также вероятность наступления (и не наступления) искомого события.
Можно определить факторы, влияющие на наступление/не наступление искомого события (интерпретировать модель).
Пока мы не выяснили механизм влияния каждого фактора на событие, тип зависимости. Так же у нас отсутствует временной фактор, связанный с действием того или иного условия, т.е. мы не рассчитывали временной лаг, связанный с достижением определённой границы (значения) признака и временем наступлением события.
Более сложная прогностическая модель должна предусматривать смещение прогнозируемых событий на временной лаг по сравнению с оценкой признаков за период, учитывать влияние других политических систем, некоммерческих организаций «мягкой силы», а также транснациональных корпораций. Но подобное исследование требует несколько больших усилий и комбинации разных источников данных.
Файл ноутбука находятся в репозитории, исходные базы данных - в процитированном источнике.
Комментарии (13)
novoselov
21.10.2024 16:17Осталось спрогнозировать "черных лебедей" на следущие 25 лет вперед и проверить.
Antony_Rain Автор
21.10.2024 16:17На 25 лет - навряд ли, предлагаемый метод максимум на 3-5 лет. Но если пошаманить/скрестить ML и DL с обучением с подкреплением и все-таки сделать самообучающуюся предиктивную модель - то вполне возможно. Не "психоистория", конечно. Но к "пятой" генерации теории революций (если "четвертую" считать от Джека Голдстоуна) может привести. Надо больше факторов по демографическим процессам и социальным институтам.
novoselov
21.10.2024 16:17Ну так покажите результаты хотя бы на 3-5 лет :)
А для предсказания на больший срок можно добавить падение точности в зависимости от времени
CrazyElf
21.10.2024 16:17Для сложных моделей оверсемплинг по идее не нужен, он ничего им не даёт.
За 200 лет многие параметры должны были кардинально поменяться, тут обязательно надо изучать что это за данные, как они предобрабатывались.
Опять же, смешивать вместе характеристики 200 совершенно разных стран, не изучая данные, просто как "чёрный ящик" - ну, такое.
Кросс-валидацию типа
TimeSeriesSplit
хотелось бы побенчмаркать, да.Странно, что важность фич такая маленькая и почти одинаковая. У меня сильное подозрение, что модель тупо переобучается. Хотя скор на отложенной выборке эту гипотезу вроде как опровергает, но у меня всё-равно сильное подозрение на переобучение и/или утечку данных при обработке фич. Я бы в качестве "sanity check" попробовал добавить фичу, заполненную рандомными данными и посмотрел на её
importance
. Есть такая методика. Всё, что окажется ниже этой фичи поimportance
- это мусор.Хотелось бы видеть анализ ошибок. Где они концентрируются - на определённых годах, на определённых странах? Возможно, это дало бы какую-то информацию как можно улучшить модель.
Antony_Rain Автор
21.10.2024 16:17По итогам экспериментов со SMOTE, RandomOverSampler, ADASYN установлено, что оверсемплинг улучшает recall ряда моделей. Voting, не работает без балансировки классов "в базе". Прирост есть, он небольшой и иногда за счет других метрик.
Метрики для различных моделей (в натуральную, без синтетики)
Модель Accuracy Precision Recall F1_score
AdaBoost 0.9074 0.6486 0.3770 0.4768
Bagging 0.9127 0.6944 0.3927 0.5017
ExtraTrees 0.9226 0.7658 0.4450 0.5629
GradientBoosting 0.9174 0.7273 0.4188 0.5316
RandomForest 0.9191 0.7677 0.3979 0.5241
Stacking 0.9215 0.7568 0.4398 0.5563
Voting 0.8880 0.0000 0.0000 0.0000
HistGradientBoosting 0.9244 0.7627 0.4712 0.5825
CatBoost 0.9238 0.7798 0.4450 0.5667
lightgbm 0.9261 0.7876 0.4660 0.5855
xgboost 0.9302 0.7812 0.5236 0.6270
Antony_Rain Автор
21.10.2024 16:17С оверсэмплингом рассказал. Тюнингованная модель F1-score: 0.683 - с оверсэмплингом, 0.64 - без. Прирост метрик есть.
Classification Report: precision recall f1-score support 0 0.938608 0.978878 0.958320 1515 1 0.746032 0.492147 0.593060 191 accuracy 0.924385 macro avg 0.842320 0.735512 0.775690 1706 weighted avg 0.917047 0.924385 0.917426 1706
Не 200 лет. Выборка с 1991 по 2019 годы. В ней 151 признак. "Устаревшие" - исключены.
Следующая модель будет с кросс-валидацией. (в другой публикации по киношкам будет три выборки - trein, test и val (на новых данных, которые машина не видела на train-test). Чуть позже и
TimeSeriesSplit
Важность фич перепроверим на другой модели. CatBoost или HistGradientBoosting. Возможна скорее ошибка в формуле подсчета.
Следующий этап - еще немного затюним модель, еще раз перепроверим признаки. И разберем сами факты и события. Как раз и теоретически обобщим.
5. "Черный ящик" - да, пока такая модель.
Ответить
LavaLava
21.10.2024 16:17Это типа предсказания результатов шахматных партий на основе уже сыгранных?
Antony_Rain Автор
21.10.2024 16:17это скорее о статистически не редких событиях, когда шахматисты бьют друг друга ... игровыми досками.
ioleynikov
21.10.2024 16:17наука синергетика давно и успешно занимается теорией катастроф, исследованием закономерностей социальных и исторических процессов. По уму интегрировать усилия в области машинного обучения с методами самоорганизации синергетики. Это может быть очень перспективным направлением.
Antony_Rain Автор
21.10.2024 16:17Есть еще и клиодинамика, и в России неплохая школа количественных исследований. И есть ряд профессиональных научных публикаций по теме прогнозирования революций и кризисов. Сделаем обзор в ближайшее время. Рекомендую.
ciiz
Подскажите неумехе, я так понял доступ к самим данным в библиотеке только по подписке? Бесплатно их (данные) как то можно получить. Очень интересно.
Antony_Rain Автор
Попробуйте попросить у них старую (триальную) версию за ограниченный период - для обучения. Труд авторов датасетов нужно уважать. Они работают для истории и для будущего.