Математика для информатики [закрыто]


Я прочитал несколько ответов на эту тему , но у меня все еще есть вопросы.. Есть много курсов математики, и я не знаю, какой из них взять в первую очередь. Какие математические классы должен принимать каждый компьютерный ученый? И какой класс должен быть первым и почему?

3 53

3 ответа:

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

  • Дискретная Математика является наиболее важным и основным классом для информатики, и по этой причине он обычно предлагается в отделах CS вместо математических отделов. Этот класс будет лежать в основе вашего вступления к алгоритмам класса и научить вас, как доказать вещи математически и дайте вам основы для анализа структур данных и алгоритмов.
  • анализ, хотя он и не используется непосредственно в классах информатики начального уровня, как правило, представляет собой последовательность курсов, предлагаемых вашим университетом, чтобы улучшить ваши математические навыки. Однако, когда вы начнете заниматься такими вещами, как численное программирование и машинное обучение, это окажется очень полезным. Это также требование для расширенной вероятности / статистики курсы.
  • вероятность обычно покрывается в некоторой степени в вашем классе дискретной математики, но вы хотите взять класс на непрерывных распределениях вероятностей и статистический вывод, вероятно, в отделе математики и статистики. Это даст вам лучшее понимание того, как делать численные вычисления и моделирование, и принципиально необходимо для машинное обучение, одно из самых важных применений компьютера наука.
  • Линейная Алгебра это класс, который вы найдете в первую очередь полезным для машинного обучения и (продвинутых) классов алгоритмов, но его важность в компьютерном зрении, компьютерной графике, машинном обучении и других количественных поддисциплинах имеет первостепенное значение.

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

помимо бакалавриата математики, математические курсы более высокого уровня полезны для некоторых теоретических областей информатики (например, алгоритмическая теория игр, которая пересекается с экономикой) и особенно в переходе от практики машинного обучения к разработке новых алгоритмов. Эти курсы включают в себя:

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

  • оптимизация, включая линейной оптимизации,выпуклой оптимизации,градиентного спуска и так далее. Во многих случаях "обучение" модели машинного обучения в основном сводится к оптимизации целевой функции, и свойства этой функции, такие как выпуклость, оказывают большое влияние на то, насколько легко ее оптимизировать.

  • численные методы: некоторые не считают это математике класс per se, но при переводе алгоритмов и теории в несовершенное представление математики с плавающей точкой, есть много практических проблем, которые необходимо решить. Например,log-sum-exp трюк.

  • для тех, кто будет в "data science" и смежных областях, advanced statistics и особенно причинно-следственной связи очень важно. Есть много вещей, чтобы знать, в основном потому, что имея доступ к большому количеству искушает данных проблема для непосвященных.

Так как вы указываете "компьютерный ученый", мы возьмем жесткий маршрут:

  1. анализ алгоритмов основан на исчислении, дифференциальных уравнениях и дискретной математике. (Многие рассматривают анализ алгоритмов как основной дифференциатор между информатикой и программной инженерией).
  2. компьютерная графика / научная визуализация требует инженерного анализа вид фона: численные методы, линейная алгебра, так далее.
  3. вычислительная геометрия
  4. аппроксимирующая функция
  5. теория множеств, логика первого порядка исчисление
  6. Вероятность / Статистика
  7. список можно продолжить:)