Для людей, возвращающихся к этой статье (игнорировать, если новая) - Перейти к содержанию

Небольшое примечание: пожалуйста, помогите мне поделиться этим ресурсом!

Прежде чем мы перейдем к содержанию, я был бы очень признателен, если бы вы поделились этой статьей везде, где сочтете нужным (Twitter, LinkedIn, Facebook и т. Д.). Моя цель - охватить как можно больше людей, чтобы помочь как можно большему количеству людей с помощью этого ресурса, и для этого мне нужна ваша помощь!

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

Вы можете использовать эту ссылку, чтобы поделиться статьей: https://link.medium.com/Mkq88OjJ65

Заранее благодарим за помощь в распространении этого ресурса!

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

Сегодня искусственный интеллект используется бесчисленным количеством успешных компаний, от Amazon до Netflix, Google и всего, что между ними. Каждая компания пытается заполучить ИИ, чтобы улучшать продукты, продвигать инновации и смотреть в будущее.

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

  • Текущие темпы роста ИИ означают, что с течением времени он становится экспоненциально более ценным. Это означает, что потраченное на это время сейчас принесет дивиденды позже. Чем раньше мы узнаем об этой эффективной технологии, тем скорее мы сможем оказать влияние на нее.
  • Общий объем мирового рынка ИИ в 2016 году составил 4,06 миллиарда долларов. Согласно прогнозам, в 2025 году он составит около 169 миллиардов долларов. Это серьезный рост.
  • У вас есть огромные возможности для создания решений с помощью этой технологии. Искусственный интеллект использовался в исследованиях рака, генной терапии, исследованиях интерфейса мозг-компьютер и во всем, что между ними.
  • Если вас не интересуют решения, есть другие мотивы. Среднестатистический разработчик машинного обучения зарабатывает около 114 121 долларов в год. Таким образом, эта работа входит в десятку самых высокооплачиваемых должностей по общей средней заработной плате.
  • Самое главное: когда ИИ у вас под рукой, у вас будет доступ ко многим возможностям изменить мир к лучшему или достичь своих личных целей, которых у вас не было бы раньше.

Конечно, это неисчерпаемый список, так что я не буду продолжать вечно.

Теперь вам может быть интересно, есть ли у нас способ узнать об искусственном интеллекте? Можем ли мы использовать его силу в своих целях? Можем ли мы создавать собственные сумасшедшие проекты, используя знания в наших руках?

Ответ на все эти вопросы должен быть утвердительным (???).

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

В чем проблема?

Проблема заключается в природе онлайн-ресурсов для изучения ИИ. Есть несколько трудностей, с которыми люди сталкиваются, пытаясь изучить эту тему, которые часто выступают в качестве основных препятствий:

  • Большую часть контента, доступного в Интернете, очень сложно понять. Люди объясняют концепции, используя много жаргона, и не тратят время на то, чтобы полностью детализировать, как концепции работают на базовом уровне. Из-за этого чрезвычайно сложно отсеивать ресурсы, чтобы самому научиться чему-то (без понимания этого уровня доктора философии).
  • Ни один из курсов не является полностью исчерпывающим. Это означает, что для получения широкого обзора любой темы вам нужно перейти к нескольким различным курсам, чтобы изучить одну тему целиком. Это может стать неэффективным и отнимать много времени (и часто приводит к потере мотивации).
  • Лучшее содержание стоит денег. Это большой барьер для входа. Если вы тот, кто пытается узнать об искусственном интеллекте из интереса, или вы не хотите тратить на это деньги, курсы за несколько сотен долларов могут стать препятствием. Есть несколько хороших бесплатных курсов (о которых я расскажу позже), но их часто бывает трудно найти.
  • Никто не говорит вам, как вам следует изучать ИИ. Это может быть самый важный. Научиться программировать и изучить искусственный интеллект совсем непросто. Одно дело - уметь копировать код и делать вид, что ты его понимаешь. Но на самом деле иметь фундаментальное понимание и уметь создавать что-то с нуля самостоятельно гораздо труднее, и требуется время, чтобы добраться до этого момента. Кроме того, никто не говорит вам, как туда добраться.

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

Но в этот момент вы можете подумать: «Что знает этот парень? почему я должен его слушать? » Это хороший вопрос. Итак, во-первых, почему бы мне не рассказать вам вкратце, кто я?

Я Адам Маджмудар, 17-летний разработчик машинного обучения-самоучки.

Вы можете связаться со мной в любом из этих мест (и я призываю вас сделать это, я всегда открыт для знакомства с новыми людьми!):

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

Кроме того, я помог и продолжаю помогать нескольким компаниям внедрять AI-решения (скоро я буду работать стажером в Dovetale, крупнейшей в мире маркетинговой платформе влиятельных лиц, работая над моделями машинного обучения, наукой о данных и т. Д.). Наконец, я также создал несколько проектов по увлечению искусственным интеллектом независимо (вы можете ознакомиться с некоторыми из моих работ здесь).

За все время, которое я потратил на исследования AI / ML, у меня было немало трудностей, испытаний и препятствий, которые мне приходилось преодолевать. Я просмотрел большую часть онлайн-ресурсов по искусственному интеллекту и методом проб и ошибок выяснил, какой контент лучше всего подходит для изучения.

В результате я решил объединить весь свой опыт, мысли и советы в одно большое Окончательное руководство по тому, как стать экспертом в области искусственного интеллекта. Моя цель здесь - сделать все знания в этой области легко доступными для всех, чтобы больше людей могло узнать о технологии (и, возможно, использовать ее, чтобы изменить ситуацию и внести изменения в будущем).

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

Что это за ресурс и как он поможет

В этом ресурсе есть несколько вещей, которые я намеренно сделал, чтобы сделать его максимально ценным.

  1. Предназначен для начинающих. Я написал все, думая о своей аудитории. Я постарался объяснить все на уровне, который мог бы понять любой, независимо от вашего опыта.
  2. Понятное содержание: я попытался сделать все максимально понятным, избегая жаргона, когда я могу, или полностью объясняя сложные термины, прежде чем я их использую. Моя цель - сделать весь этот контент доступным и легким для изучения.
  3. Основы, ориентированные на контент: я предоставляю подробное руководство, чтобы понять, как ИИ, как он работает и для чего его можно использовать.
  4. Контент, ориентированный на создание: я предоставляю подробное руководство, чтобы научиться создавать искусственный интеллект самостоятельно (вникая в подробности обучения программированию + обучение машинному обучению).
  5. Мой опыт и советы. Я даю советы и наблюдения, основанные на моем опыте работы с искусственным интеллектом.
  6. Высококачественные ресурсы и руководство. Я предоставляю бесчисленное количество высококачественных учебных ресурсов, доступных в Интернете, которые помогут вам эффективно учиться. При необходимости я также даю рекомендации о том, как наилучшим образом использовать эти ресурсы для эффективного обучения. Я также не пытаюсь перегружать вас внешними ресурсами и предоставляю только контент, который я считаю действительно ценным.
  7. Все вместе и всеобъемлющие: Одно из основных преимуществ этого ресурса - то, что вся информация собрана вместе в удобном месте. Вам не нужно искать в Интернете миллион различных веб-сайтов, чтобы найти нужный контент. Все, что вам понадобится, находится здесь или по ссылке, на которую вы можете ссылаться.
  8. Бесплатно (в основном): Практически все на этом ресурсе бесплатно. Конечно, сама эта статья совершенно бесплатна. Практически все ресурсы, которые я порекомендую, также бесплатны. Есть несколько (очень мало), которые стоят денег, но они не нужны и просто удобны для тех, кто готов заплатить небольшую сумму (я также дам советы, как получить их по самым низким ценам, если вы действительно захотели купить их).

Наконец, я хочу подчеркнуть этот момент:

Чтобы начать работу с этим ресурсом, вам не нужно уметь программировать или разбираться в искусственном интеллекте. Однако, если вы уже знаете эти вещи, вам еще есть чему поучиться.

Теперь, когда у нас есть все, что нужно, мы можем перейти к содержанию!

Оглавление

Раздел 1. Основные сведения об искусственном интеллекте и машинном обучении

Раздел 2: Как самому создать искусственный интеллект

Раздел 3. Глубокое погружение в машинное обучение и глубокое обучение

Куда идти дальше

Краткое заключение

Свяжитесь со мной - не стесняйтесь обращаться ко мне, если у вас есть какие-либо вопросы, комментарии или что-нибудь, что вы хотите мне сказать в целом!

Раздел 1. Основные сведения об искусственном интеллекте и машинном обучении

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

Основы в первую очередь

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

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

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

Перед тем, как приступить к практическому применению, важно иметь четкое понимание основ, особенно в этой области, чтобы вы могли сосредоточиться на чем-то одном. Изучение того, как что-то работает, и ЗАТЕМ научиться его кодировать, а не пытаться понять и то, и другое одновременно, - это совершенно разные опыты. Последнее часто будет менее эффективной стратегией в долгосрочной перспективе.

Что такое искусственный интеллект?

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

При выборе этого термина важно помнить об этом: ИИ применяется к большому количеству различных областей и исследований и НЕ относится к одному конкретному алгоритму или стратегии.

При этом мы можем обобщить весь ИИ до определенного определения, которое применяется ко всему, что помечено этим термином:

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

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

В целом, люди склонны рассматривать развитие ИИ в три этапа (которые полезно знать в контексте контекста):

  1. Узкий интеллект: к этому типу ИИ относится почти каждый (если не каждый) алгоритм ИИ, существующий сегодня. Узкий интеллект относится к ИИ, который предназначен для выполнения одной конкретной задачи (независимо от того, насколько сложна эта задача. ИИ, задача которых - разговаривать с людьми, получать информацию из Интернета или играть в настольную игру. все являются примерами узкого интеллекта.
  2. Общий интеллект: этот тип ИИ в настоящее время еще не существует (и, возможно, никогда не будет). Это относится к ИИ, которые могут выполнять широкий спектр задач. Фактически, они могут выполнять любые задачи, на которые способен человек. Это, очевидно, требует гораздо более разнообразного интеллекта, и добиться этого гораздо труднее. Это может даже потребовать, чтобы ИИ был разумным (осознающим и осознающим себя). Однако пока это не что иное, как научная фантастика и надежда на будущее.
  3. Суперинтеллект: это термин, придуманный Ником Бостромом, автором известной книги по ИИ под названием Суперинтеллект. Он определяет суперинтеллект как «любой интеллект, который значительно превосходит когнитивные способности люди практически во всех областях, представляющих интерес ». Думайте что-то вроде SkyNet от терминатора. Люди часто любят обсуждать эту тему вместе с этическими вопросами об ИИ, но, как и общий интеллект, на данный момент это не что иное, как научная фантастика.

Информация об этих трех видах ИИ может быть полезна при чтении или обсуждении ИИ в различных условиях. Часто всплывает много из этих концепций, и полезно знать, что собой представляет каждая из них, чтобы вы могли извлечь пользу из разговора / статьи.

Как можно использовать искусственный интеллект?

Теперь, когда у нас есть общее и базовое понимание того, что такое ИИ в целом, давайте посмотрим, для чего он полезен. В конце концов, нет смысла тратить время на изучение этого вопроса, если это не поможет, верно?

Как я вкратце упоминал ранее, ИИ можно использовать для решения множества проблем в самых разных областях.

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

Пример 1. Alexa от Amazon

Alexa (похожий на Apple Siri или Microsoft Cortana, если вы слышали о них) - это голосовой помощник, с которым люди могут разговаривать. Alexa может помочь вам с множеством разных вещей, от определения погоды до решения, в какой ресторан пойти, до покупок в Интернете и многого другого.

Самое крутое в Алексе то, что она (если мы можем назвать алгоритм ИИ) понимает человеческую речь и отвечает вам человеческим голосом. Вам не нужно печатать или делать что-то еще, вы можете просто говорить вслух, и Алекса поймет!

Alexa использует разные стратегии, такие как распознавание голоса и обработка естественного языка (мы поговорим об этом позже), чтобы распознавать и преобразовывать человеческие голосовые команды в понятные утверждения. Все это формы искусственного интеллекта (они соответствуют нашему определению использования машин для выполнения задач, которые традиционно выполняются людьми).

Пример 2: рекомендации Netflix

У Netflix есть система рекомендаций, которую мы не всегда можем учитывать при прокрутке наших любимых телешоу и фильмов на платформе.

Netflix отслеживает то, что каждый смотрит и любит, и пытается рекомендовать другие медиа, которые люди хотели бы видеть, исходя из их тенденций просмотра. Они сказали, что около 75% средств массовой информации, которые люди смотрят на Netflix, являются результатом рекомендаций, сделанных алгоритмом рекомендаций Netflix.

За этим алгоритмом стоят различные формы машинного обучения (часть ИИ, о которой мы скоро поговорим), чтобы определить, что показывает, что людям было бы интересно, на основе того, что они обычно любят смотреть. Они предназначены для того, чтобы помочь пользователям найти для себя нужный контент в огромном море контента на платформе и, в конечном итоге, сделать его удобнее для всех зрителей. Такой тип технологий был бы невозможен без искусственного интеллекта.

Пример 3: Facebook

Facebook, огромная платформа социальных сетей, которую используют миллиарды людей по всему миру, использует ИИ по-разному. Я остановлюсь на двух наиболее примечательных.

Во-первых, Facebook использует ИИ для распознавания лиц. Часто, когда вы публикуете изображение на Facebook, он предлагает вам предположить, чьи лица изображены на нем. Это делается с помощью ИИ распознавания лиц (об этом мы поговорим гораздо позже). Во-вторых, Facebook делает рекламу, используя ИИ, для нацеливания рекламы на лучшую аудиторию. Конкретные рекламные объявления предназначены для определенной аудитории (подумайте о рекламе детской одежды для мам), и Facebook использует искусственный интеллект, чтобы выяснить, каким людям лучше всего показывать конкретную рекламу.

Пример 4. ИИ для обнаружения рака

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

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

Очевидно, что это чрезвычайно эффективный вариант использования ИИ, поскольку он может повлиять на миллионы людей и спасти жизни. Этот пример должен дать вам представление о той огромной силе, которая может привести к положительным изменениям, которые ИИ может иметь при правильном использовании.

Пример 5: ИИ для борьбы с коронавирусом

Во время кризиса, который мы переживаем во всем мире на момент написания этой статьи (примерно в апреле / ​​мае 2020 года), искусственный интеллект используется для поиска лекарства от коронавируса. Сейчас это пытается сделать бесчисленное количество компаний. Вот хороший ресурс, если вы хотите узнать больше о том, как ИИ используется в борьбе с коронавирусом. Вот конкретный пример компании, использующей ИИ для борьбы с коронавирусом.

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

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

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

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

Обзор искусственного интеллекта и машинного обучения

В этот раздел нужно включить приличный объем информации. К счастью для всех нас, есть ОТЛИЧНОЕ видео, которое очень подробно освещает эту тему. Это будет первая официальная рекомендация ресурса, которая у меня есть для вас:

Курс Edureka по искусственному интеллекту (видео можно посмотреть здесь): Этот курс охватывает все основы искусственного интеллекта, включая все основные типы искусственного интеллекта, машинного обучения и преподавания. все, что вам нужно знать об основах алгоритмов машинного обучения. НАСТОЯТЕЛЬНО РЕКОМЕНДУЮ вам посмотреть это видео (оно длинное, но того стоит). Я также резюмирую некоторые из наиболее важных тем из этого видео, и я также разместил свои заметки на видео, когда я для вашего удобства увидел это впервые.

Советы для этого ресурса. Некоторые части этого видео содержат краткую ссылку на код. Не беспокойтесь об этих частях прямо сейчас (это нормально, если вы их не понимаете). Моя цель в этом видео - чтобы вы просто поняли концепции, поэтому не торопитесь с ними и убедитесь, что вы понимаете каждую деталь. Если вас интересует кодирование, вы можете вернуться к этому видео после того, как научитесь программировать.

Цель: я хочу, чтобы вы в основном сосредоточились на ранних частях видео, особенно на первых 2 часах 50 минутах. Моя цель для этого видео - чтобы вы получили четкое представление об основах машинного обучения. Не беспокойтесь о специфике обучения с подкреплением, глубокого обучения или обработки естественного языка, если вы их не понимаете. поскольку мы более подробно рассмотрим эти темы позже.

Мои заметки из курса искусственного интеллекта Edureka: это заметки, которые я сделал, когда впервые посмотрел это видео. Если они полезны для справки или для быстрого обращения к ним, определенно не стесняйтесь использовать их / ссылаться на них, когда захотите.

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

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

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

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

Определения машинного обучения:

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

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

Процесс машинного обучения:

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

  1. Определите свою цель: что вы пытаетесь предсказать? Каковы целевые функции? Какие входные данные? С какой проблемой вы столкнулись?
  2. Сбор данных: какие данные необходимы для решения проблемы? Доступны ли эти данные? Как получить эти данные?
  3. Подготовка данных: очистка данных включает в себя устранение несоответствий в наборе данных, чтобы сделать его пригодным для вычислений. Вы преобразовываете данные в желаемый формат
  4. Исследовательский анализ данных: понимание закономерностей и тенденций в данных. На этом этапе понимаются все полезные сведения о данных и корреляциях. Этот этап очень важен в процессе машинного обучения.
  5. Построение модели машинного обучения: разделение данных на данные для обучения и тестирования для обучения алгоритму. Вы можете выбрать один из множества алгоритмов машинного обучения в зависимости от того, что лучше всего подходит для вашей задачи.
  6. Оценка и оптимизация модели: тестирование точности вашей модели, а затем настройка модели и ее оптимизация, чтобы она могла точно предсказать то, что вы хотите. После того, как вы протестируете свою модель, вам нужно определить точность вашего алгоритма.
  7. Прогнозы: это шаг, на котором вы используете свой алгоритм, который уже обучен, чтобы делать ценные выводы.

Типы машинного обучения

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

Типы проблем, решаемых с помощью машинного обучения:

  • Регрессия: используется для прогнозирования, когда выходные данные представляют собой непрерывное значение (например, число). Например, прогнозирование цены на что-либо может быть проблемой регрессии.
  • Классификация: используется для прогнозов, когда выходными являются категориальные значения. Это просто означает, что вы предсказываете, к какой категории принадлежит что-то. Например, определение того, является ли изображение собакой или кошкой, будет проблемой классификации.
  • Кластеризация: используется для группировки похожих объектов или точек данных в кластеры. Это все равно, что получить кучу фотографий кошек и собак и сгруппировать кошек и собак вместе (алгоритму не нужно распознавать, какие изображения - кошки, а какие - собаки, ему просто нужно распознать, какие изображения совпадают. Тип животных, как друг друга.Это может показаться схожим с классификацией, но есть небольшая разница.

Базовые алгоритмы машинного обучения:

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

  • Линейная регрессия (регрессия)
  • Логистическая регрессия (Классификация - странно, правда… почему она называется регрессией, а на самом деле является классификацией ??)
  • Дерево решений (классификация)
  • Случайный лес (классификация)
  • Наивный Байес (классификация)
  • K-ближайший сосед (классификация)
  • Машины опорных векторов (классификация и регрессия)
  • Кластеризация K-средних (кластеризация)

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

Что такое нейронные сети (глубокое обучение)?

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

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

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

Нейронные сети развивались и стали одной из самых важных частей области искусственного интеллекта, известной как глубокое обучение. Это, вероятно, самая сложная часть ИИ для понимания, поэтому не торопитесь, изучая их, и наберитесь терпения. Чтобы понять это, может потребоваться время, но когда вы это сделаете, вы, возможно, преодолеете одно из самых серьезных препятствий на пути к изучению ИИ.

Изучение основ нейронных сетей:

На мой взгляд, лучший способ получить фундаментальное представление о том, как работают нейронные сети, - это посмотреть видеоролики YouTuber 3Blue1Brown по этой теме. В этих видео 3Blue1Brown дает отличное и интуитивно понятное объяснение того, как они работают.

Этот сериал состоит из четырех частей, но вам действительно НУЖНО посмотреть только первую часть, и я бы рекомендовал посмотреть и вторую часть. Третья и четвертая части более подробно (и усложняются), а четвертая часть даже ссылается на исчисление и некоторые простые аспекты линейной алгебры, поэтому они не являются абсолютно ненужными. Если вам интересно, я бы посоветовал вам попробовать посмотреть, сколько частей вы способны, и если вы не можете понять более поздние части, это совершенно нормально.

А что такое нейронная сеть? | Глубокое обучение, глава 1 : На мой взгляд, это лучшее вводное видео по нейронным сетям, которое свободно доступно в Интернете (я видел довольно много, но ничто и близко не подошло). Прекрасное интуитивно понятное объяснение действительно помогает сделать тему понятной для всех.

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

Градиентный спуск, как обучаются нейронные сети | Глубокое обучение, глава 2 : Просмотр этого видео не является абсолютно необходимым, но я очень рекомендую его. Градиентный спуск - важная концепция в изучении глубокого обучения, и твердое понимание этого вопроса на раннем этапе будет полезно для вас.

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

Что на самом деле делает обратное распространение? | Глубокое обучение, глава 3 : Это видео становится намного сложнее. Здесь пока нет особо сложных математических расчетов, так что вы все равно сможете следить за ними, если захотите. Я бы порекомендовал кратко просмотреть это видео, чтобы получить общее представление об обратном распространении. Если в этом нет смысла, не волнуйтесь!

Советы для этого ресурса. См. мои советы для первого видео. Кроме того, если вы не разбираетесь в этой теме, убедитесь, что у вас есть общее представление о том, что такое обратное распространение и как оно входит в процесс нейронной сети (вам не нужно знать все подробности).

Расчет обратного распространения ошибки | Глубокое обучение, глава 4 : Это видео становится очень сложным, и в нем рассматриваются вычисления, стоящие за обратным распространением. Это совсем не обязательно смотреть.

Советы для этого ресурса: Я бы не рекомендовал это видео, если вы уже не занимались расчетом или не хорошо разбираетесь в предмете и не интересуетесь этой темой. Видео по-прежнему сделано очень хорошо, но смотреть его нет необходимости. При этом, если вам любопытно и вы ищете вызов, определенно посмотрите на него!

Просматривая эти видеоролики (сколько бы вы ни считали нужным посмотреть, по крайней мере, включая первое), вы теперь должны иметь твердое концептуальное представление о нейронных сетях.

Если вы прочитали всю эту статью выше этого пункта, я рад сообщить вам, что ваше фундаментальное понимание искусственного интеллекта, машинного обучения и глубокого обучения сейчас намного выше среднего, поздравляем!

Теперь, когда мы изучили основы, пришло время перейти к действительно интересной части, к той части, где мы собственноручно создаем и используем ИИ!

Раздел 2. Как самостоятельно создать искусственный интеллект

В этом разделе мы поговорим о шагах, которые необходимо предпринять, чтобы начать создавать алгоритмы искусственного интеллекта / машинного обучения самостоятельно. Имейте в виду, что я разработал это без каких-либо предварительных условий (вам не нужно уже знать, как кодировать, я расскажу об этом). Если случайно вы уже хорошо умеете программировать на Python, то можете пропустить первые несколько частей этого раздела.

Введение в программирование

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

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

Лично я настоятельно рекомендую изучить Python как ваш первый язык программирования. Причина этого в том, что большая часть контента о машинном обучении, доступного сегодня в Интернете, написана на Python, поэтому у вас будет так много онлайн-ресурсов, с которыми можно работать. Кроме того, если у вас есть общая проблема, есть вероятность, что вы можете выполнить поиск в Интернете, и результаты появятся там, где у кого-то была такая же проблема, просто из-за того, насколько популярен этот язык сегодня.

Python также, как правило, очень удобный для начинающих язык программирования из-за простоты синтаксиса (слов, которые вы используете для кода, и того, как код выглядит структурно). Однако, хотя Python очень удобен для новичков, он также чрезвычайно мощный (Python - это язык программирования, который используют такие крупные компании, как Google, Facebook, Amazon, Netflix и многие другие).

Даже если вы уже знаете другой язык программирования, я все равно предлагаю изучить Python, поскольку сегодня он является отраслевым стандартом в области искусственного интеллекта. Кроме того, если вы уже знаете язык программирования, изучение этого языка будет намного быстрее.

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

Я скоро расскажу подробнее о том, как начать изучать Python, так что держитесь.

Цели обучения программированию

Обучение правильному программированию состоит из двух основных частей, и важно, чтобы вы осознали оба этих аспекта, прежде чем начать:

  1. Понимание и способность использовать синтаксис, который в основном представляет собой словарь определенного языка программирования, который вы используете для кодирования.
  2. Умение применять логику и критическое мышление для решения проблемы.

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

Вот почему важно сосредоточиться на истинном понимании того, что все делает, когда вы учитесь программировать и уметь самостоятельно решать проблемы. Чем дальше вы углубляетесь в программирование, тем важнее становятся навыки критического мышления.

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

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

Образ мышления программиста: полезные фигурки (ВАЖНО!)

ЭТОТ РАЗДЕЛ ВАЖНО ПРОЧИТАЙТЕ ВНИМАТЕЛЬНО!

Идея разобраться во всем - одна из самых важных частей сильного программиста, а также один из самых ценных навыков, которые вы получите от того, чтобы стать программистом (помимо огромной ценности вещи, которые вы, конечно, сможете создать).

Когда вы учитесь программировать, вы, несомненно, будете бороться со многими вещами. Когда вы создаете сложные проекты, ваш код почти никогда не будет работать с первого раза. Это не указывает на отсутствие у вас навыков программиста. Более того, самые опытные разработчики ВСЕГДА совершают ошибки.

Ключ к тому, чтобы стать лучше в программировании, - это знать, как понять, в чем проблема с вашим кодом, а затем выяснить, как ее решить. Ключевым моментом здесь является не расстраиваться и не работать над решением каких-либо проблем.

Очень важно уметь разбираться в вещах, когда что-то не работает. Один из лучших способов сделать это - просто отправить свои проблемы в Google. Скорее всего, если у вас есть проблема с кодом, кто-то уже сталкивался с этой проблемой раньше и писал об этом в Интернете.

Еще один замечательный ресурс для выяснения вещей, связанных с программированием (это могут быть проблемы, которые у вас возникли, или просто какие-либо общие вопросы о конкретном синтаксисе или программировании в целом), - это Stack Overflow. Этот веб-сайт является форумом вопросов и ответов для разработчиков. Если вам нужно, вы можете задать вопрос о переполнении стека, и многие люди, скорее всего, свяжутся с вами своевременно.

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

Советы для этого ресурса: Я бы посоветовал создать учетную запись для удобства (это бесплатно). Кроме того, убедитесь, что перед тем, как задать вопрос, вы исследуете веб-сайт, чтобы убедиться, что тот же или подобный вопрос не задавался раньше, потому что, если вы публикуете вопрос, на который уже был дан ответ, это просто зря тратят время. При этом, если вы действительно не можете что-то найти (чему я был бы удивлен), то непременно задайте свой вопрос.

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

Итак, чтобы подвести итог, вот два основных способа, которыми вы будете разбираться, когда учитесь программировать:

  1. Найдите это в Google.
  2. Выполните поиск в Stack Overflow, и если вы не можете найти ничего по своему вопросу, вы можете задать вопрос самостоятельно.

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

Начало работы с Python: пошаговый подход

Мое личное предложение для изучения Python - сначала пройти курс по Python (о котором я скоро расскажу), чтобы изучить основы языка, а затем набраться опыта, создав свой собственный проект и пытаясь разобраться во всем с нуля.

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

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

Шаг 1. Изучите синтаксис Python с помощью курса

В Интернете доступно несколько курсов Python, которые очень эффективны для изучения языка. В настоящее время существует два типа Python: Python 2 и Python 3. Python 3 более широко используется и сегодня является стандартным, поэтому наиболее оптимальным путем для вас будет изучение Python 3. К сожалению, лучший Python 3 онлайн-курс стоит денег, но не волнуйтесь, если вы хотите учиться бесплатно, у меня есть решение.

Вот альтернативы из двух блюд, которые я бы предложил (в зависимости от того, хотите ли вы пойти бесплатно или за плату).

Опция 1:

  • Курс Codecademy Python 3 (Pro) - Если вы готовы платить за удобство изучения Python 3, то непременно сделайте это. Однако есть бесплатная альтернатива (которая немного менее удобна, но все же эффективна).

Вариант 2:

  • Курс Codecademy Python 2 (бесплатно) - Вы также можете пройти этот курс по Python 2. Особенность Python 2 в том, что он почти ТОЧНО такой же, как Python 3, за исключением нескольких ключевых отличий. Поэтому, если вы пройдете этот курс, вы можете прочитать следующую статью:
  • Различия между Python 2 и Python 3 - вы можете прочитать эту статью, чтобы узнать о различиях между Python 2 и Python 3. Таким образом, с небольшими изменениями синтаксиса, который вы используете, вы будете знать, как программировать на Python 3.

Советы по использованию этих ресурсов (курсы Codecademy Python): есть ряд вещей, которые вы можете сделать, чтобы сделать эти курсы более ценными / интересными для вас. Во-первых, я бы посоветовал, когда вы проходите эти курсы, вы как можно больше возитесь с кодом, чтобы попытаться разобраться. Если вам интересно, что что-то делает, попробуйте и убедитесь сами. Я призываю вас пробовать что-то новое, потому что так вы научитесь быстрее использовать синтаксис и самостоятельно рассуждать, не руководствуясь учебными пособиями.

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

Шаг 2. Ознакомьтесь с Google Colab

Еще в 2017 году Google выпустила собственный инструмент Python под названием Google Colaboratory. До того, как появился этот инструмент, вам приходилось загружать на свой компьютер много различного программного обеспечения, чтобы начать работу с Python (и некоторые из них были не самыми простыми в использовании). Однако теперь любой, у кого есть учетная запись Google, может использовать Python и все его функции бесплатно.

Если у вас еще нет учетной записи Google, я бы посоветовал создать ее, это совершенно бесплатно. (Вы можете создать новую учетную запись Google здесь).

После создания учетной записи Google вы можете приступить к созданию записных книжек Python с помощью Google colab. Вот краткое руководство о том, как перейти к созданию записной книжки Colab из вашей учетной записи Google. Вот краткое введение в Google colab. Я бы посоветовал прочитать оба этих инструмента, прежде чем продолжить.

Попытайтесь понять, как использовать Google Colab и что-то там делать. Если можете, попробуйте выяснить, как на самом деле записать код в Google Colab и запустить его. Вы можете попробовать запустить код из руководств Codecademy в записной книжке Colab и посмотреть, работает ли он (если вы все сделаете правильно, он должен). Это хорошее время, чтобы научить это умонастроению.

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

Шаг 3. Придумайте идею для вашего первого проекта Python в Colab

Теперь, когда вы познакомились с Google Colab, вы сможете делать все свои проекты Python там, а остальное время изучать искусственный интеллект (я бы посоветовал вам использовать его даже после этого, это действительно ценный инструмент. с возможностью обмена, и я до сих пор использую colab).

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

Поначалу поиск хорошей идеи для проекта может показаться сложной задачей. Однако именно здесь вы сможете и дальше тренировать свой образ мышления. Я рекомендую вам изучить несколько хороших проектных идей для начинающих на Python (попробуйте поискать в Google) и посмотреть, что вам кажется интересным. Оттуда вы можете попробовать создавать вещи самостоятельно. Я намеренно оставлю вас без ресурсов в этом разделе, чтобы вы могли разобраться во всем самостоятельно.

Это важно. Если вам действительно нужно руководство, вы можете свободно связаться со мной, но я настоятельно рекомендую вам попытаться разобраться в этом самостоятельно, потому что вы получите НАМНОГО больше от этого опыта. Кроме того, в Интернете так много мест, где можно найти по-настоящему крутые идеи для проектов.

Шаг 4. Создайте свой проект: советы по созданию проектов и отладке кода

Как только у вас возникла идея для проекта, вы можете начать погружаться в программирование. Эта часть может быть трудной временами, поэтому я дам вам несколько советов, которые помогут вам в этом процессе. Однако важно отметить, что на этом этапе вы все равно должны попытаться выяснить как можно больше. Если есть какой-то новый синтаксис, который вам нужно изучить, или если вы хотите знать, существует ли он, поищите его. Используйте ресурсы, которые я предоставил вам ранее (особенно Stack Overflow). Это то, как вы собираетесь узнать больше всего.

Совет 1. Когда вы работаете над первоначальным созданием своего проекта или когда сталкиваетесь с трудностями при написании кода, может быть полезно написать псевдокод на бумаге. Это может помочь вам спланировать общую логику того, что вы пытаетесь создать. Вам не нужно записывать каждую последнюю конкретную букву, но это может помочь записать основные концепции вашего кода перед тем, как погрузиться в фактическое программирование, чтобы вы знали, чего вы обычно пытаетесь достичь с каждой строкой кода.

Совет 2. Если ваш код не работает должным образом, вы получите сообщение об ошибке. Процесс попытки исправить подобные ошибки называется отладкой (имеет смысл, верно? Избавление от ошибок = отладка). Хорошие навыки отладки - еще один важнейший навык, на котором нужно сосредоточиться при кодировании. У меня есть один совет, который поможет вам отладить ваш код: скопируйте сообщение об ошибке, которое вы получаете из своего кода, и вставьте его в Google. Если вы сделаете это, вы почти всегда получите результат, который вам поможет.

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

Совет 4. Это последний совет по отладке кода. Это больше для тех случаев, когда ваш код начинает увеличиваться с разными разделами. По сути, это способ проверить, правильно ли выполняются ваши условные операторы (операторы if, циклы for и т. Д.). Совет состоит в том, чтобы использовать инструкцию print.

Например, предположим, что ваш код должен перейти к точке внутри оператора if, чтобы активировать другой код. Вы можете проверить, проходит ли ваш код даже после оператора «if», написав что-то вроде print («привет») внутри оператора «if». Затем, когда вы запустите свой код, вы узнаете, попал ли он в оператор «if».

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

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

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

Главное - не останавливаться на достигнутом. Не думайте, что только потому, что вы выполнили один или два проекта, у вас все в порядке, и вам не нужно выполнять больше проектов. Y Вы всегда можете узнать больше из проектов, особенно из первых 3–5.

Начните учиться кодировать искусственный интеллект и машинное обучение

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

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

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

Советы по обучению кодированию из онлайн-контента:

Совет 1. Когда вы учитесь программировать с помощью руководств, нигде в Интернете нет ничего, что бы подробно объяснило вам каждую деталь и помогло бы вам пройти весь процесс. Это слишком утомительно и не существует. Однако по-прежнему важно понимать каждую мелочь в коде, потому что, когда вам придет время создавать свои собственные проекты (если вы хотите), вам нужно будет воспроизвести эти детали. Таким образом, я бы посоветовал найти каждый бит синтаксиса, который вы не понимаете в Интернете (вы можете найти хорошую информацию о переполнении стека, как правило, или документацию для самих библиотек) и убедиться, что вы понимаете, что каждую строчку кода.

Совет 2: Как и мое предложение из раздела о прохождении курса Codecademy, я бы посоветовал вам почаще пытаться изменить что-то с помощью кода, просто чтобы поэкспериментировать и посмотреть, что они делают. Иногда вы даже узнаете что-то новое о синтаксисе и о том, что с ним делать. Особенно, когда вы сталкиваетесь с новой функцией или синтаксисом, которых раньше не видели, поиграйте со значениями и посмотрите, что произойдет. Вот как вы научитесь.

На этом этапе я порекомендую вам несколько вариантов дальнейших шагов. Цель этой части вашего обучения - начать изучение того, как кодировать различные алгоритмы машинного обучения, а также простые нейронные сети (более сложные формы глубокого обучения / машинного обучения будут рассмотрены позже).

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

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

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

Советы по покупке. Курс в настоящее время стоит 120 долларов на сайте Udemy на момент написания этой статьи. Это недешево. Когда я купил курс, цена листинга составляла около 200 долларов. Однако не волнуйтесь, если вы все сделаете правильно, вам не придется платить и близко к этой сумме. Особенность Udemy в том, что они часто завышают цены, но на самом деле у них получается масса распродаж со скидками, например, 80–90% или даже больше. Вы можете просто дождаться одного из них (они, как правило, случаются довольно часто, Удеми говорит, что они происходят не менее 9 раз в год, я думаю, что на самом деле их еще больше) и получить курс с огромной скидкой. Я купил курс за 7 долларов по одной из этих скидок, поэтому я бы порекомендовал дождаться его, если вы хотите сэкономить.

Что делать, если у вас нет денег: если вы - взрослый человек, у которого есть деньги на покупку этого курса, я бы порекомендовал сделать это, если вы хотите эффективно прогрессировать (и вложения, скорее всего, окупятся в долгосрочной перспективе, если вы захотите продолжить работу / учебу в машинном обучении). Однако, если у вас нет доступа к деньгам (и вам приходится полагаться на родителей или опекунов), я бы посоветовал рассказать им, почему вы так увлечены этим и хотите пройти курс. Очевидно, что это очень хорошее вложение (вы не тратите деньги на видеоигры или что-то в этом роде, это продуктивное обучение).

Советы для этого ресурса. Вначале, когда они устанавливают Anaconda (пакет Python) и начинают что-то с ним делать, вы НЕ ДОЛЖНЫ этого делать. Вы можете выполнить весь необходимый код в Google Colab. Однако вам нужно будет выяснить, как делать все, что они делают на своем экране, в colab (на самом деле это не так уж сложно), поэтому, если вы не хотите с этим сталкиваться, вы можете следовать их руководствам и получить Anaconda. В целом остальные курсы хорошо объяснены, и я продолжу применять стратегию, пытаясь понять, что все означает для вас самих.

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

Опять же, я настоятельно рекомендую пройти курс, указанный выше (используя советы, которые я предложил), потому что вложение того стоит. При этом, если вы действительно не можете или не хотите, я предложу вам несколько альтернатив (эти альтернативы также действительно хороши и по-прежнему являются одними из лучших курсов. Вы все равно многому научитесь у них. . Преимущество вышеупомянутого курса заключается в том, насколько он удобен / сколько времени он вам сэкономит. Но не волнуйтесь, вы все равно сможете выучить большую часть того, что вам нужно, если вы не сможете это получить. ).

Введение в машинное обучение Udacity (Вы можете получить доступ к актуальному содержанию курса здесь): Этот курс полностью бесплатный и дает отличные руководства о том, как программировать различные алгоритмы машинного обучения на Python. . В нем также есть много контента, который вы можете изучить, и он охватывает множество важных тем в области машинного обучения, плюс вы выйдете из курса с несколькими классными проектами. На мой взгляд, это лучший бесплатный онлайн-курс по машинному обучению (и он лучше, чем многие другие, которые тоже стоят денег!)

Советы для этого ресурса: весь код, которому они учат, делается с помощью видео. Поэтому я бы посоветовал часто приостанавливать видео, когда вы пишете код, чтобы попытаться понять код. Кроме того, обязательно следуйте инструкциям и создайте код самостоятельно в Google Colab!

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

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

Введение Udacity в TensorFlow для глубокого обучения (Вы можете получить доступ к актуальному содержанию курса здесь): Этот бесплатный курс научит вас использовать знаменитую библиотеку глубокого обучения Python под названием TensorFlow (это в значительной степени отраслевой стандарт глубокого обучения), так что это очень ценно. Содержание также хорошо объяснено, и вы получите ценные знания и навыки из этого курса.

Советы для этого ресурса: См. советы для предыдущего курса (Введение в машинное обучение Udacity). Кроме того, этот курс выходит за рамки и рассказывает о более сложных темах, таких как сверточные нейронные сети (CNN) и рекуррентные нейронные сети (RNN). Не стесняйтесь выполнять эти уроки, поскольку они хорошо сделаны, но не волнуйтесь, если вы не совсем понимаете их, я расскажу о них позже.

Цель: В этом курсе ваша основная задача должна состоять в том, чтобы просто познакомиться с TensorFlow и как его использовать / что он делает, а затем научиться создавать простую нейронную сеть на Python. и понимание всего, что входит в этот процесс.

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

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

Раздел 3. Подробное описание машинного обучения и глубокого обучения

Этот раздел будет в большей степени открытым учебным ресурсом, в котором вы можете свободно изучать. По большей части эти темы не зависят друг от друга (хотя некоторые могут кратко ссылаться друг на друга, и в этом случае вы можете сначала обратиться к другим разделам). Вы можете свободно исследовать эти разделы, исходя из своих интересов. В этих разделах я также буду предлагать менее целенаправленное руководство, поскольку я буду предлагать вам намеченный путь (потому что вам лучше учиться непосредственно у преподавателей по этим более сложным темам).

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

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

Подсказка: в этом разделе я дам ссылку на пару статей о Medium. Когда вы нажимаете на некоторые из них, это может означать, что вы не можете их просмотреть, потому что вы просмотрели максимальное количество статей Medium за месяц. Вы можете пройти этот платный доступ, просто скопировав ссылку на статью и вставив ее во вкладку инкогнито, если это произойдет с вами.

Обработка естественного языка (NLP)

Обработка естественного языка, или NLP, используется для преобразования словесных данных в формат, понятный машинам (а затем часто они могут использоваться с базовыми алгоритмами машинного обучения / нейронными сетями). Причина, по которой NLP так мощно, заключается в том, что оно позволяет использовать такие технологии, как распознавание речи и голоса, чат-боты, анализ текстовых данных в Интернете и многие другие полезные приложения.

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

Теперь, когда у вас есть очень поверхностное понимание НЛП, вот несколько ресурсов, чтобы вы могли глубже погрузиться в предмет:

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

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

Sentdex NLP with Python Series: эта потрясающая серия по обработке естественного языка, созданная YouTube Sentdex (кстати, у этого парня есть потрясающие учебные пособия по множеству тем, связанных с искусственным интеллектом, и его канал стоит check out) рассказывает, как кодировать почти все, что вы хотели бы знать об основах НЛП. Курс исчерпывающий, и все объясняется легко для понимания.

Обучение с подкреплением

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

Эта область искусственного интеллекта чрезвычайно мощна, потому что это означает, что алгоритмы могут самостоятельно разобраться во всем с нуля. Это может дать действительно сумасшедшие и впечатляющие результаты. Посмотрите на приведенный ниже пример обучения с подкреплением, который оказался одним из самых крутых экспериментов с ИИ, проведенных OpenAI (подразделение Google по ИИ).

Теперь, когда мы вкратце коснулись того, что такое обучение с подкреплением, вот несколько ресурсов, чтобы вы могли глубже погрузиться в предмет:

Введение в матрицы Академии Хана: это видео научит вас основам матриц. Вам нужно будет знать эти основы, чтобы узнать об обучении с подкреплением, потому что эта тема включает умножение матриц. На самом деле эта тема относительно проста, и Салман Хан хорошо разбирается в ней в этом видео.

Видео об искусственном интеллекте Edureka: Сейчас хорошее время, чтобы вернуться к этому видео и посмотреть раздел, посвященный обучению с подкреплением (концепции объяснены довольно хорошо). Раздел находится на 2:56:40 минуте видео (ссылка должна привести вас к нужному времени).

Краткое введение в обучение с подкреплением: В этой статье более подробно рассматриваются некоторые технические детали обучения с подкреплением, включая функции вознаграждения и некоторые другие, немного более сложные темы. Однако это все еще относительно просто и легко понять.

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

Обучение с подкреплением с нуля в Python с OpenAI Gym: В этом руководстве снова обсуждаются все основы обучения с подкреплением, а затем рассматривается конкретный пример с кодом с использованием библиотеки Python, созданной Google OpenAI. называется OpenAI Gym.

Серии обучения с подкреплением Sentdex: Эта серия видео начинается с основ обучения с подкреплением, а затем подробно рассматривается более сложных стратегий, таких как Deep Q-Learning, при этом дается учебное пособие по программированию. путь. Вы расскажете о простом обучении с подкреплением с использованием Q-Learning, а также о более сложном обучении с подкреплением с использованием нейронных сетей.

Примечание. Чтобы выполнить вторую часть этих руководств по Deep Q-Learning, будет полезно, если вы уже прошли курсы, которые я рекомендовал на TensorFlow, и у вас есть твердое понимание. как программировать нейронные сети.

Сверточные нейронные сети (CNN)

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

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

Введение в матрицы Академии Хана: это видео научит вас основам матриц. Вам нужно будет знать эти основы, чтобы узнать о сверточных нейронных сетях, потому что эта тема включает умножение матриц. На самом деле эта тема относительно проста, и Салман Хан хорошо разбирается в ней в этом видео.

Простое введение в сверточные нейронные сети: Это хорошее начальное введение в CNN. Это даст вам хорошее представление о том, что они собой представляют и чего вы пытаетесь с их помощью достичь.

Советы для этого ресурса: Сосредоточьтесь больше на понимании того, что такое CNN и для чего они предназначены, а затем на особенностях того, как они работают. Следующее видео будет очень хорошо объяснять детали, поэтому моя цель в этой статье - просто познакомить вас с этой темой.

Дружественное введение в сверточные нейронные сети: высококачественное видеообъяснение и визуализация CNN. Это даст вам хорошее понимание темы, и я настоятельно рекомендую посмотреть его, если вы хотите узнать больше о CNN. В целом этот создатель видео (Луис Серрано) создает действительно высококачественный контент (вы увидите, что я также ссылаюсь на его видео на RNN).

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

Сверточные нейронные сети для начинающих с Python и Keras: в этой статье снова подробно рассматриваются особенности CNN в контексте конкретного примера (набор данных чисел MNIST). Если хотите, можете просмотреть эту часть бегло, так как это в основном освежение того, что вы уже узнали. Часть кода, которая будет вам полезна, находится в нижней половине статьи. Здесь вы хотите взглянуть на код и увидеть, что все делает.

Учебное пособие по сверточной нейронной сети Sentdex: в этом видео Sentdex (создатель высококачественного контента YouTube для ИИ) проведет вас через конкретный пример сверточной нейронной сети и объяснит все код. Имейте в виду, что вы должны знать TensorFlow, прежде чем переходить к этому видео.

Рекуррентные нейронные сети (RNN)

Рекуррентные нейронные сети, или RNN, - это нейронные сети, используемые в основном для любых проблем или ситуаций, связанных с временными данными (данные, которые зависят от времени или каким-то образом связаны со временем, одним из примеров временных данных может быть запас цены, которые меняются с течением времени. Графики цен акций также представлены отдельными точками, которые связывают данную цену акции с определенным временем).

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

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

Дружественное введение в рекуррентные нейронные сети: это видео Луиса Серрано дает отличное понимание и интуитивное понимание RNN, не вдаваясь в чрезмерную сложность и не вдаваясь в конкретные математические детали. Это отличное вводное видео по теме.

Простое и интуитивно понятное руководство по RNN: это руководство дает понимание RNN на более подробном и математическом уровне (в некоторых случаях оно ссылается на исчисление). Если вы не освоили этот уровень математики, не о чем беспокоиться, потому что вам не нужно знать все особенности, чтобы самому составить RNN.

Теперь, когда у вас есть фундаментальное представление о RNN, вы можете самостоятельно создавать их на Python.

Изучите рекуррентные сети на примере в Python: это дает как твердое объяснение RNN, так и пример, который вы можете воссоздать самостоятельно, используя Python. Я бы посоветовал сначала немного узнать об обработке естественного языка (НЛП - я расскажу о другом разделе ниже), но прежде чем углубляться в это, поскольку вкратце используется НЛП.

Учебное пособие по рекуррентным нейронным сетям Sentdex: Как и ожидалось, в завершение этого раздела мы получили учебное пособие по Sentdex по созданию RNN с помощью Python. Как всегда высокого качества (какой был бы раздел без Sentdex?)

Автоэнкодеры

Эти нейронные сети очень похожи на сверточные нейронные сети в том, что они также в основном работают с изображениями. Основное отличие состоит в том, что CNN обычно принимают целые изображения в качестве входных данных, а затем делают прогнозы в качестве выходных (прогнозы о самих изображениях, например, какие изображения являются изображениями или особенностями изображения), тогда как автокодеры принимают изображения в качестве входных и выходных данных. изображения тоже. Это может показаться запутанным, но вскоре будет объяснено.

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

Теперь, когда у вас есть поверхностное понимание того, что такое автокодировщик, вот несколько ресурсов для более глубокого погружения в тему:

Что такое автоэнкодер?: Это короткое видео дает хорошее общее представление о том, что такое автоэнкодер и какова его цель. Это поверхностный уровень и чисто вводный.

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

Теперь, когда у вас есть более глубокое фундаментальное понимание того, что такое автоэнкодеры, вы можете начать создавать их самостоятельно на Python.

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

Учебное пособие по автоэнкодеру: машинное обучение с помощью Keras: Вот еще одно руководство по созданию автоэнкодеров с помощью Keras. Это видео, поэтому оно может помочь некоторым людям, которые лучше учатся, когда кто-то может что-то объяснить. В видео также есть несколько визуальных элементов, которые помогут вам понять код. Следует отметить, что человек на видео не объясняет весь код в деталях, поэтому я бы попытался выяснить, что все делает, чтобы попробовать и проверить себя (поначалу это может быть сложно!)

Генеративные состязательные сети (GAN)

Генеративные состязательные сети или GAN - одна из последних разработок в области искусственного интеллекта (они были представлены человеком по имени Ян Гудфеллоу в 2014 году).

На мой взгляд, они также являются одной из самых крутых частей ИИ. Сети GAN в основном позволяют ИИ создавать совершенно новые творения в различных областях, и они использовались для создания уникальных музыкальных произведений, произведений искусства и даже для создания человеческих лиц людей, которых никогда раньше не было (см. рисунок выше!).

Теперь, когда у вас есть поверхностное понимание того, что такое GAN и что он делает, вот несколько ресурсов для более глубокого изучения темы:

Что такое GAN: это короткое четырехминутное видео дает краткое введение в технологию и ее полезность. Это все еще поверхностный уровень, но это хорошее введение

Сети GAN - как и почему они работают: В этом видео используется отличная аналогия, упрощающая концептуальное представление о том, как работают сети GAN. Он также хорошо объясняет важные термины и дает хорошее фундаментальное понимание.

Теперь, когда у вас есть более глубокое фундаментальное понимание GAN, вы можете создавать свои собственные с помощью Python.

Создание генерирующей состязательной сети с помощью Python: В этом руководстве показано, как создать GAN как с дискриминатором, так и с фальшивомонетчиком. Вы будете использовать базу данных номеров MNIST, и цель GAN будет заключаться в генерировании чисел, которые выглядят так, как будто они были написаны от руки. Это длинное руководство по Python, поэтому не торопитесь и старайтесь понять, что происходит на каждом этапе.

Sentdex экспериментирует с генеративным ИИ: Вот еще одно видео Sentdex, где он экспериментирует с GAN. Это не столько прямое руководство, но, безусловно, интересно посмотреть, что он придумывает. Это может быть не так полезно для фактического изучения части программирования, но все же полезно понимать, что именно происходит и какова цель.

Куда пойти отсюда

Если вы ознакомились со всем приведенным выше содержанием, которое вас интересует, и у вас есть четкое представление о том, как работает каждая тема и как ее создать на Python (не обманывайте себя в этом, убедитесь, что вы действительно все понимаете), вы теперь готовы перейти к самостоятельному обучению.

Информация на этом ресурсе ни в коем случае не является исчерпывающим списком всех важных тем в области ИИ. Фактически, это больше похоже на руководство по созданию прочных фундаментальных знаний в данной области, чтобы вы могли выйти и узнать больше о конкретных темах, которые вам интересны (в этой области регулярно делается так много революционных разработок. основы).

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

Прежде чем мы закончим, я дам вам несколько советов, которые помогут вам продолжить изучение ИИ самостоятельно:

Совет №1. При самостоятельном обучении, если вы пытаетесь изучить основы новой темы, по возможности избегайте длинных исследовательских работ. Они имеют тенденцию быть очень техничными и часто скучными. Вместо этого используйте источники, которые дают более простое описание концепций и являются более краткими. Их тоже часто интереснее читать.

Совет № 2. Если вы действительно хотите погрузиться в более сложный и технический контент, то исследовательские работы, вероятно, будут вашим лучшим вариантом. Не торопитесь и постарайтесь понять все, что происходит. Не читайте контент просто ради того, чтобы его просмотреть, подумайте о том, что вы из него извлекаете / получаете.

Совет №3. Иногда основным препятствием для изучения более сложных тем являются термины, которые не имеют смысла или сбивают с толку. Вот почему я бы посоветовал выработать привычку останавливаться каждый раз, когда вы видите слово, которое не понимаете, и искать его, чтобы выяснить, что оно означает, и убедиться, что вы его понимаете.

Совет №4. Каждый раз, когда вы изучаете новую тему, старайтесь найти проект, над которым вы будете работать, чтобы укрепить свое понимание. Когда вы изучаете ИИ / изучаете, как реализовать различные алгоритмы с помощью кода, трудно фактически сохранить информацию, пока вы не примените ее на практике. Даже если вы полностью понимаете что-то концептуально, включение этого в код - совершенно другой и не менее важный опыт.

Поскольку теперь у вас есть четкое понимание ИИ (намного лучше, чем в среднем), у вас есть несколько вариантов, на которые вы можете пойти дальше.

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

1. Погрузитесь глубже в технические темы

Если вам интересно узнать больше о технических аспектах искусственного интеллекта, есть еще много тем, которые нужно изучить, и гораздо больше глубины и технических деталей, о которых нужно узнать. Есть так много тем, которые мы еще не затронули, но которые стоит изучить (например, GRU, LSTMS, вариационные автоэнкодеры, трансферное обучение и многое другое).

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

В прошлом году один студент из Общества Знаний (той же программы человеческого акселератора, что и я в этом году) решил применить этот подход и решил читать по одной исследовательской работе каждый день в течение месяца. Ниже приведены ссылки на все ресурсы, которые он прочитал, и его советы по эффективному чтению исследовательских работ по ИИ:

Работа Лиама Хинзмана в день: В этом ресурсе Лиам Хинзман, студент и высококвалифицированный разработчик машинного обучения, подробно описывает некоторые из лучших стратегий, позволяющих проработать и понять сложные исследовательские работы. Кроме того, он ссылается на все исследовательские работы, которые он прочитал за месяц, читая исследования по ИИ, так что вы также можете их прочитать (если вы хотите прочитать некоторые из них).

2. Сосредоточьтесь на создании контента

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

Есть много новых тем, о которых можно узнать и создать проекты, а также в Интернете есть хорошие списки потенциальных проектов искусственного интеллекта, над созданием которых можно поработать.

Если вам нужно вдохновение для работы над некоторыми проектами, я бы посоветовал исследовать различные потенциальные проекты ИИ, создавать проекты на основе новых тем, которые вы изучаете (возможно, даже из тем, которые вы узнали с помощью метода 1), или проверять некоторые из ИИ. создатели контента на YouTube.

Sentdex: У Sentdex есть множество проектов и руководств по искусственному интеллекту и НЛП, которые можно просмотреть на своем канале YouTube, чтобы воссоздать их или почерпнуть вдохновение. Он также отлично объясняет, и его канал определенно стоит изучить.

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

3. Узнайте о пересечении ИИ и другого поля

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

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

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

Заметка для быстрого закрытия

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

Если вы считаете, что этот ресурс был полезен для вас, или думаете, что кто-то может извлечь из него пользу, я призываю вас поделиться им с другими и помочь им узнать об этой мощной технологии. Я был бы очень признателен, если бы вы могли поделиться этим в любой сети (Twitter, LinkedIn, Facebook и т. д.) или просто поделиться им с несколькими людьми!

Вот ссылка, которую вы можете использовать, чтобы поделиться этой статьей, чтобы гарантировать, что она будет бесплатной для всех, кто ее просматривает: https://link.medium.com/Mkq88OjJ65

Прежде чем закончить, я хочу поблагодарить Аарона Льюиса, Сабиха Хассани и Веда Бхаттарам за помощь в редактировании этот ресурс и убедитесь, что он настолько ценен, насколько это возможно. Они помогли мне адаптировать контент и определить, как структурировать этот ресурс, и я благодарен за их помощь!

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

Свяжитесь со мной

Если вы хотите связаться со мной по какой-либо причине (вопросы, комментарии, проблемы или просто для связи), вот вся моя контактная информация для вашего использования:

  • Свяжитесь со мной в LinkedIn: Мой LinkedIn
  • Свяжитесь со мной в Твиттере: Мой Твиттер
  • Следуйте за мной и смотрите другие мои статьи на Medium: My Medium
  • Отправьте мне письмо по электронной почте: [email protected]