Раньше я был уверенным в себе, оптимистичным, всемогущим программистом средней квалификации. Затем в жаркий и влажный летний день июля 2017 года я вырос. Теперь я был осведомлен о «революции машинного обучения». Сначала это сбивало с толку, но становилось все более и более интересным, когда я узнавал об этом больше. (Да, я использовал еще 3(а) в предложении; у всех нас есть свои демоны.)

Моим первым побуждением было сесть на экспресс AI/ML. Увы, я был «всего лишь» подающим надежды инженером-материаловедом, индийским инженером-материаловедом. Мастерство программирования казалось чем-то призрачным. Здесь нет неправильных впечатлений; У индийцев блестящие умы. Каждый человек должен быть помещен в среду, которая передает потребность изобретать, быть креативным, быть минималистом. Это может быть среда свободы или ограниченная; это не имеет значения. Это просто должно быть правильно. Большинство индийских инженерных программ, за исключением избранных элитных, не создают для нас столь благоприятных условий. В 2020 году многим индийским университетам еще предстоит догнать компьютерную революцию, не говоря уже о машинном обучении.

Я умел писать коды для решения простых задач и получал хорошие оценки на уроках компьютерного программирования. На этом мое знакомство с программированием закончилось. Остальные мои занятия включали зубрежку, много нажимания кнопок на калькуляторах и хороший почерк. Это был бакалавриат. Вступай в 2017 год, аспирантура — одна из тех избранных элитных.

Июль 2017. Машинное обучение. Разве C и C++ не самые популярные языки? Питон? Есть язык, названный в честь вида змей? Фотон тоже язык? О, вы имели в виду Фортран. Значит, второе «р» молчит? Численное дифференцирование и интегрирование используются случайно? Разве они не только для дорогих вещей? Ноябрь 2020 г .: инженерия вычислительных материалов - такая щедрая область. Есть возможности для разработки инструментов, основанных на богатой теоретической базе знаний в этой области. Я рад, что освоился с Python.

Время с июля 2017 года по ноябрь 2020 года было похоже на прикосновение к очень горячим и холодным предметам одновременно. Вы не знаете, что чувствовать. Вы теряете направление. Время от времени мои друзья (тоже инженеры-материаловеды) и я вспоминали о том, как мы были лучшими в классе по программированию для студентов, а иногда приходили в отчаяние из-за того, как сильно изменилась сцена программирования за такой короткий промежуток времени. Все время ссылаясь на машинное обучение. Позже мы стали свидетелями резкого роста предложений о работе, основанных на навыках искусственного интеллекта и машинного обучения, в ущерб традиционным инженерным навыкам или знаниям. Казалось, что все инженерные отрасли стали больше походить на внештатное образование, и только информатика должна была процветать в профессиональном плане. Мы были явно неправы, но я думаю, что «менталитет толпы» работает на поощрение скептицизма так же, как и на агрессию.

Нам понравилось программирование. Мы это ценили. Мы могли оценить его значение, возрастающее значение. Но дискомфорт от того, что вы недостаточно хороши, у вас нет времени балансировать между изучением традиционных инженерных тем и изучением программирования в соответствии с текущими стандартами, незнание того, как использовать мощь графических процессоров и т. д., будет «убывать и расти». В основном отлив.

В конце концов, я избавился от своих студенческих привычек и научился думать о традиционной инженерии и программировании в тандеме. Ведь это все была математика. Автоматизация простых повторяющихся задач с помощью BASH-скриптов, статистический анализ данных, числовой анализ в python помогли взобраться на гору неуверенности в себе. Я собирался туда.

Но не совсем!

Всегда появлялось что-то новое, будь то на Stack Overflow или на Reddit. У меня появилось чувство удовлетворения от того, что я узнал за последние несколько лет, но это последнее десятилетие было десятилетием программного обеспечения. Это все об услугах и мягких технологиях. Каково было мое знание сплавов и термодинамики на рынке? Лично я считаю, что нет ничего важнее знания термодинамики, бога всех наук, если можно. Но рынок! Деньги. Еда. Одежда. Дезинфицирующие средства для рук. Все необходимое в жизни.

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

Ноябрь 2020 г. Я пытался сопоставить нелинейные уравнения с некорректно работающим набором данных:

В течение нескольких часов я боролся с ошибками с плавающей запятой, ошибками деления на ноль, этой ошибкой значения и той. Это было неприятно. Я собирался вырвать волосы с головы. Было физически больно думать, что я не могу вписаться в кривую. Наконец, я начал сомневаться в самой теории. Я проверял и перепроверял и выдвигал гипотезы. Ничего не сработало. Я ни разу не сомневался в scipy.optimize.curve_fit. В термодинамической теории полувековой давности я сомневался, но не в питоне. Нет.

Решение было откровением. Теория была правильной. Уравнение, которое я набрал, было правильным. scipy тоже был прав. Это были первоначальные предполагаемые значения параметров подгонки, которые были дьяволом в темноте. Я не делал никаких первоначальных предположений, так как не знал, чего ожидать. scipy попробовал «1s», что привело к большинству этих ошибок. Простое предоставление лучшего начального значения предположения решило проблему. Инстинкт победил. Не тот алгоритм.

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