«Лучший способ предсказать будущее — создать его». — Питер Друкер

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

ИИ, он же искусственный интеллект

Это человек или машина? Так ли умны и эффективно работают компьютерные программы, как человеческий мозг?

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

Машинное обучение отделяется от ИИ

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

История машинного обучения

Он восходит к середине 20-го века, когда были разработаны ранние концепции и алгоритмы, которые заложили основу для современного машинного обучения.

1950s-1960s:

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

1970s-1980s:

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

1990s-2000s:

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

2010s-2020s:

  • Прорывы в области глубокого обучения, в частности сверточных нейронных сетей (CNN) для распознавания изображений и рекуррентных нейронных сетей (RNN) для последовательной обработки данных.
  • Достижения в области обработки естественного языка (NLP) включают встраивание слов, рекуррентные нейронные сети (RNN) и модели преобразования, такие как BERT и GPT-3.
  • Рост больших данных и разработка масштабируемых сред машинного обучения, таких как Apache Spark и TensorFlow.
  • Повышенное внимание к этическим соображениям в машинном обучении, включая справедливость, прозрачность и подотчетность.

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

Неконтролируемое обучение:

Основное внимание уделяется происшедшему.

  1. Неразмеченные данные
  2. Поиск закономерностей
  3. Обнаружение аномалий
  4. Извлечение признаков
  5. Нет наземной правды
  6. Уменьшение размерности

Относительные ссылки:
https://www.javatpoint.com/unsupervised-machine-learning

Обучение под наблюдением:

Основное внимание уделяется что произойдет.

  1. Помеченные данные
  2. Предиктивный анализ
  3. Классификация и регрессия
  4. Прямая обратная связь
  5. Оценка модели
  6. Выбор модели и настройка

Относительные ссылки:
https://www.javatpoint.com/supervised-machine-learning

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

Основное внимание уделяется как это сделать.

  1. Разведка и эксплуатация
  2. Учимся на обратной связи
  3. Функция вознаграждения
  4. Обучение методом проб и ошибок
  5. Последовательное принятие решений
  6. Марковский процесс принятия решений

Относительное обучение:
https://www.geeksforgeeks.org/what-is-reinforcement-learning/

Машинное обучение и человек с улицы

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

Требования к машинному обучению

Python (https://www.python.org/), последняя версия 3.11.2, является популярным языком программирования благодаря обширным библиотекам, простоте использования и широкой поддержке сообщества.

Библиотеки:

Он имеет богатую экосистему библиотек машинного обучения, таких как TensorFlow, Keras, PyTorch, Scikit-Learn и NumPy, которые предоставляют мощные инструменты для построения моделей машинного обучения, обработки данных и оценки производительности моделей.

Полезные редакторы:

Начало работы с блокнотом Jupyter

Самый простой способ для новичка начать работу с Jupyter Notebooks — установить Anaconda.

Anaconda является наиболее широко используемым дистрибутивом Python для обработки данных и поставляется со всеми предустановленными самыми популярными библиотеками и инструментами.

Чтобы получить Anaconda, просто:

  1. Скачать последнюю версию Anaconda for Python последней версии.
  2. Установите Anaconda, следуя инструкциям на странице загрузки и/или в исполняемом файле.
  3. Откройте Jupyter с помощью ярлыка Anaconda.

4. Перейдите к папке, в которой вы хотите создать свой первый блокнот, нажмите кнопку раскрывающегося списка «Создать» в правом верхнем углу и выберите «Python 3»:

5. Интерфейс ноутбука

Есть два довольно важных термина: ячейки и ядра, которые являются ключевыми для понимания Jupyter.

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

Введите print('Hello World!') в ячейку и нажмите кнопку запуска.

Ура !! у вас есть готовый первый код Python.

Для получения дополнительной информации и ознакомления с Jupyter: https://jupyter-notebook.readthedocs.io/en/latest/

Книги, на которые стоит обратить внимание:

  1. «Распознавание образов и машинное обучение» Кристофера Бишопа: охватывает основы машинного обучения, включая различные модели, такие как линейная регрессия, логистическая регрессия, деревья решений, машины опорных векторов, нейронные сети и многое другое. Он также содержит подробные объяснения ключевых концепций и практических методов реализации. — Мой личный фаворит.
  2. «Практическое машинное обучение с помощью Scikit-Learn, Keras и TensorFlow» Орельена Жерона:
  3. «Глубокое обучение» Яна Гудфеллоу, Йошуа Бенджио и Аарона Курвилля
  4. «Машинное обучение Python» Себастьяна Рашка и Вахида Мирджалили:
  5. «Прикладное машинное обучение» Келлехера, Мак Нами и Д'Арси

Надеюсь, это поможет вам в вашем путешествии по ML.

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

Следите за обновлениями.