ReasonableС++ мощный, универсальный ЯП, на котором можно написать почти всё, однако для ИИ и НС более подходят ЯП типа Python и др. с развитой системой под ИИ, НС и МО Хотя кр. - с.т., чрезмерное использование аббревиатур не идёт на пользу читаемости текста. Что такое МО я думал где-то пару секунд.Для обучения нейросетей нужны библиотеки, работающие с графами вычислений (самостоятельное написание такой библиотеки с нуля поучительно, но не очень практично). Почти всё остальное - просто обёртка над ними: "библиотека, посчитай мне обратное распространение ошибки по вот такой вычислительной сети для вот таких данных". Ну, есть ещё превращение исходных данных в понимаемые библиотекой векторы.
Если вы хотите добавлять в такую библиотеку новые возможности (скажем, новые выражения регуляризации или новые функции активации), это надо делать на том языке, на котором написана данная библиотека. Если вы хотите её только
использовать - это можно делать на любом языке на котором к ней сделали API. Для TensorFlow набор языков
есть на их сайте, для других крупных библиотек скорее всего тоже.