Введение в ИИ

Представьте себе такой сценарий:

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

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

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

Пять лет назад такие сценарии казались научной фантастикой, но теперь они — часть повседневной жизни. ИИ — не будущее; он уже встроен в продукты, которыми вы пользуетесь каждый день.

Появление ChatGPT в конце 2022 года стало переломным моментом:

  • До этого ИИ был делом программистов и исследователей.

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


Определение искусственного интеллекта

Простыми словами:Искусственный интеллект (сокращённо AI) — это технология, которая придаёт компьютерам интеллектуальное поведение, подобное человеческому.。

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

Английская аббревиатура AI произносится какA-I(читаются две буквы отдельно), полное название —Artificial Intelligence。

Что умеет AI

Следующие возможности уже довольно развиты в современном AI:

СпособностьТипичные примененияВы уже пользовались этим?
Понимание и генерация языкаПеревод, написание текстов, суммирование статей, ответы на вопросыChatGPT、Claude
Распознавание изображенийРазблокировка по лицу, сканирование документов, анализ медицинских изображенийСортировка альбомов в телефоне, турникеты на станции
Голосовое взаимодействиеПреобразование речи в текст, голосовые ассистентыSiri, Xiao Ai, голосовой ввод в методах ввода
Генерация контентаИИ-рисование, генерация видео, создание музыкиMidjourney、Suno
Помощь с кодомАвтодополнение кода, исправление ошибок, автоматическая генерация кодаGitHub Copilot、Cursor

Что ИИ не может делать

Знать границы ИИ важнее, чем знать его возможности.

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

У ИИ нет сознания, нет эмоций и нет собственных целей; он не хочет ничего делать.

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

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

Помните:ИИ — мощный помощник, а не надёжный авторитет。

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


Краткая история развития ИИ

ИИ не появился из ниоткуда; его история насчитывает более 70 лет и включает три крупных цикла подъёма и спада.

Первая волна: символьный ИИ (1950-е–1980-е)

В 1956 году группа учёных встретилась в Дартмутском колледже,искусственный интеллект— этот термин был официально предложен.

Господствовавшая в то время идея была проста: записать знания экспертов в набор правил, сохранить их в компьютере и делать выводы по правилам, когда возникает проблема. Этот подход назывался экспертными системами.

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

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

Более того, изменение правил крайне болезненно — добавление нового правила может конфликтовать с сотнями существующих.

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

Вторая волна: расцвет машинного обучения (1990-е–2010-е)

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

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

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

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

Третья волна: глубокое обучение и большие модели (2010-е – настоящее время)

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

Основным прорывом глубокого обучения стало:Даже признаки больше не требовали ручного проектирования — модель сама послойно обучалась на необработанных данных.。

В 2017 году Google опубликовала статью «Attention Is All You Need», предложив архитектуру Transformer.

В ноябре 2022 года OpenAI выпустила ChatGPT, который за два месяца преодолел отметку в сто миллионов пользователей, действительно сделав ИИ доступным для широкой публики.

С 2023 года по настоящее время такие большие модели, как GPT-4, Claude и Gemini, продолжают итеративно развиваться; постоянно появляются новые направления, такие как мультимодальный ИИ, ИИ-агенты и модели рассуждений.

Основная нить трёх волн, выраженная одним предложением:

ВолнаОсновная идеяКто выполняет работуХарактерное событие
Первая (1950-е–1980-е)Люди пишут правила, машины их исполняютПрограммисты пишут правилаДартмутская конференция 1956 года
Вторая (1990-е–2010-е)Машины учатся находить закономерности в данныхЛюди проектируют признаки, алгоритмы выявляют закономерностиВ 1997 году Deep Blue побеждает шахматного чемпиона
Третий (2010-е – настоящее время)Глубокие сети + огромные объёмы данных + огромные вычислительные мощностиМодели даже сами изучают признакиВыпуск ChatGPT в 2022 году

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

  • 1950-е: Люди задались вопросом — могут ли машины думать как люди?
  • 1960–1980-е: Предпринимались попытки закодировать знания и правила в машины (символизм, экспертные системы), но результаты были ограниченными.
  • 1990–2000-е: Вместо того чтобы вручную писать правила, машинам позволили учиться на данных (машинное обучение).
  • 2010-е: Глубокое обучение вышло на первый план, и нейронные сети совершили прорыв благодаря огромным данным и вычислительным мощностям.
  • 2020-е: Наступила эра больших моделей, и одна модель начала обладать возможностями общего назначения (общение, написание текстов, программирование, рассуждение).
  • Будущее: ИИ переходит от ответов на вопросы к автономному выполнению задач (Агент, AGI).


Три легко путаемых понятия: AI, ML, DL

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

Сначала посмотрите на схему отношений:

AI、机器学习、深度学习三者包含关系图

Отношение включения: AI ⊃ ML ⊃ DL

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

  • Машинное обучение (ML) — это подмножество AI, а именно методы, которые автоматически обучаются на данных.

  • Глубокое обучение (DL) — это подмножество ML, а именно методы, основанные на многослойных нейронных сетях.

Не всё AI является ML, и не всё ML является DL.

Рассмотрим пример, чтобы прояснить различия между этими тремя понятиями

Предположим, мы хотим создать программу для определения, является ли письмо спамом. Три подхода соответствуют трём уровням:

Пример

# ============================================
# Подход 1: основанный на правилах (AI, но не ML)
# Программист вручную пишет правила; процесса «обучения» нет.
# ============================================

def is_spam_by_rules(email_text: str) -> bool:
    """Использовать правила по ключевым словам для определения спама — чисто ручные правила, без обучения."""
    # Если срабатывает любое из следующих ключевых слов, это считается спамом.
    spam_keywords = [
        "Поздравляем с выигрышем",
        "Получить бесплатно",
        "Нажмите, чтобы получить",
        "Ограниченное по времени предложение",
        "пример подарочного набора",   # Для тестирования; можно заменить в реальных сценариях.
    ]
    for keyword in spam_keywords:
        if keyword in email_text:
            return True
    return False


# Тест: письмо со следующим содержимым
test_email = "Поздравляем! Вы получили пример подарочного набора, нажмите, чтобы забрать!"
result = is_spam_by_rules(test_email)
print(f"Результат на основе правил: {'спам' if result else 'обычное письмо'}")
# Вывод: результат оценки на основе правил: спам

Преимущество метода на основе правил в том, что он прост и прямолинеен; недостаток в том, что правила невозможно полностью прописать или охватить всё. Если спам-письмо использует другую формулировку, например "Поздравляем, Ваше Превосходительство, с выигрышем главного приза", правило его пропустит.

Пример

# ============================================
# Подход 2: классическое машинное обучение (ML, но не DL)
# Автоматически изучать закономерности из исторических данных; не нужно писать правила вручную.
# ============================================

def train_simple_classifier(emails: list, labels: list):
    """Обучите простейший классификатор машинного обучения
Идея: подсчитать частоту каждого слова в спам-письмах и обычных письмах,
Использовать разницу частот, чтобы определять новые письма."""

    # Подсчитать, сколько раз каждое слово встречается в двух типах писем.
    spam_word_count = {}   # Общее количество раз, когда слово встречается в спаме.
    ham_word_count = {}    # Общее количество раз, когда слово встречается в обычных письмах.
    spam_total = 0         # Общее количество слов в спаме.
    ham_total = 0          # Общее количество слов в обычных письмах.

    for email_text, label in zip(emails, labels):
        words = email_text.split()
        for word in words:
            if label == "spam":
                spam_word_count[word] = spam_word_count.get(word, 0) + 1
                spam_total += 1
            else:
                ham_word_count[word] = ham_word_count.get(word, 0) + 1
                ham_total += 1

    # Возвращает обученную статистическую информацию (это "модель").
    return {
        "spam_word_count": spam_word_count,
        "ham_word_count": ham_word_count,
        "spam_total": spam_total,
        "ham_total": ham_total,
    }


def predict(model: dict, email_text: str) -> str:
    """Используйте обученную модель для предсказания новых писем."""
    words = email_text.split()
    spam_score = 0.0   # Спам-оценка
    ham_score = 0.0    # Оценка обычного письма

    for word in words:
        # Вычислить вероятность появления этого слова в спаме (добавить сглаживание, чтобы избежать деления на ноль).
        spam_prob = (model["spam_word_count"].get(word, 0) + 1) / (model["spam_total"] + 1)
        ham_prob = (model["ham_word_count"].get(word, 0) + 1) / (model["ham_total"] + 1)
        spam_score += spam_prob
        ham_score += ham_prob

    return "spam" if spam_score > ham_score else "ham"


# Обучающие данные: 4 размеченных письма
emails = [
    "Поздравляем с выигрышем! Заберите бесплатный подарочный набор",           # спам
    "Ограниченное предложение. Нажмите, чтобы получить пример подарочного набора",       # спам
    "Встреча завтра, не забудьте принести отчёт",                # обычное
    "Встретимся на выходных, поедим. Ты свободен?",              # обычное
]
labels = ["spam", "spam", "ham", "ham"]

model = train_simple_classifier(emails, labels)

# Предсказать новое письмо
new_email = "Поздравляем с выигрышем главного приза! Спешите получить"
result = predict(model, new_email)
print(f"Результат определения метода ML: {'spam' if result == 'spam' else 'normal email'}")
# Вывод: результат определения метода ML: spam

Метод ML больше не требует написанных вручную правил; он автоматически учится на данных.

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

Пример

# ============================================
# Подход 3: глубокое обучение (DL, подмножество ML)
# Использовать многослойную нейронную сеть; пусть модель сама изучает признаки.
# Здесь для объяснения принципа используются псевдокод и комментарии, без привязки к какому-либо фреймворку.
# ============================================

# Идея классификации спама на основе глубокого обучения:
# 1. Преобразуйте каждое слово в вектор (последовательность чисел); этот шаг называется «встраивание слов».
# 2. Подайте эти векторы на вход многослойной нейронной сети.
# 3. Каждый слой сети автоматически извлекает всё более абстрактные признаки.
# 4. Последний слой выдаёт вероятность «спам» или «обычное».

# Ниже представлена концептуальная структура трёхслойной нейронной сети:

class SimpleNeuralNetwork:
    """Концептуальная демонстрация: структура трёхслойной нейронной сети (не включает логику обучения)."""

    def __init__(self, input_size: int, hidden_size: int, output_size: int):
        """Инициализация весов каждого слоя сети."""
        import random
        # Слой 1: вход → скрытый слой (применить нелинейное преобразование к входным признакам).
        self.w1 = [[random.random() for _ in range(hidden_size)]
                   for _ in range(input_size)]
        # Слой 2: Скрытый слой → Выходной слой (отображает абстрактные признаки в итоговую классификацию)
        self.w2 = [[random.random() for _ in range(output_size)]
                   for _ in range(hidden_size)]

    def forward(self, x: list) -> list:
        """Прямое распространение: входные данные проходят через сеть для получения выходных данных"""
        # Преобразование первого слоя
        hidden = [sum(x[i] * self.w1[i][j] for i in range(len(x)))
                  for j in range(len(self.w1[0]))]
        # Функция активации ReLU (отрицательные значения становятся 0, положительные значения остаются неизменными)
        hidden = [max(0, h) for h in hidden]
        # Преобразование второго слоя дает окончательный вывод
        output = [sum(hidden[i] * self.w2[i][j] for i in range(len(hidden)))
                  for j in range(len(self.w2[0]))]
        return output


# Предположим, каждое слово было преобразовано в 100-мерный вектор (выполняется автоматически слоем встраивания слов)
# Входной 100-мерный вектор → скрытый слой из 64 нейронов → выходные 2 значения (вероятность спама, вероятность нормального)
model = SimpleNeuralNetwork(input_size=100, hidden_size=64, output_size=2)
print("Создана структура трехслойной нейронной сети: 100 → 64 → 2")
# Вывод: Создана структура трехслойной нейронной сети: 100 → 64 → 2

Сравнение трех подходов:

ПодходКто выполняет работуКатегорияПлюсы и минусы
Метод на основе правилПрограммисты вручную пишут правилаИИ (не ML)Просто и прямо, но правил бесконечно много, и их трудно поддерживать
Классический MLАлгоритмы учатся находить закономерности в данных; признаки проектируются людьмиML (не DL)Хорошо работает с небольшим объёмом данных, высокая интерпретируемость
Глубокое обучениеДаже признаки изучаются самой модельюDLХорошо работает с огромными объёмами данных, но требует больших вычислительных ресурсов

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


Слабый ИИ, Сильный ИИ, Сверх-ИИ

Помимо классификации ИИ по техническому подходу, ИИ также можно разделить на три уровня по «уровню интеллекта».

Слабый ИИ (узкий ИИ) — уже реализован

Может хорошо справляться только с конкретными задачами; переключишь задачу — и он теряется.

AlphaGo может обыграть чемпионов мира в го, но попросите его написать стихотворение — и он не сможет.

ChatGPT отлично умеет болтать, но дайте ему медицинский снимок для диагностики — и он не сможет.

Все доступные нам сегодня ИИ-продукты — это слабый ИИ.

«Слабый» не означает слабые возможности; это означает узкую сферу — он преуспевает только в одной или нескольких конкретных областях.

Сильный ИИ (AGI, общий искусственный интеллект) — ещё не реализован

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

AGI — конечная цель таких компаний, как OpenAI, Anthropic и Google DeepMind.

Общепризнанного AGI пока не появилось. Когда он будет реализован? Оптимистичные оценки — 5-10 лет, пессимистичные — более 50 лет; никто не может сказать наверняка.

Супер ИИ (ASI, сверхинтеллект) — чисто теоретический

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

Это распространённый сюжет научной фантастики, но он всё ещё очень далёк от реальности.

Связь между тремя уровнями:

УровеньСфера возможностейТекущее состояниеПримеры
Слабый ИИОдна областьУже широко распространёнChatGPT, распознавание лиц, AlphaGo
Сильный ИИ (AGI)Общая область, сопоставим с человекомПока не достигнуто—
Супер-ИИ (ASI)Всесторонне превосходит людейЧисто теоретическая концепция—

Исправление распространённых заблуждений

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

Заблуждение 1: ИИ обладает сознанием

У ИИ нет сознания.

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

Когда вы общаетесь с ChatGPT и он говорит "Я чувствую" или "Я думаю", никакого "чувства" или "мышления" на самом деле не происходит.

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

Например: вы вводите "今天天气true" (сегодня погода действительно), он предсказывает, что следующий символ — "OK" (хорошо) с вероятностью 85%, "热" (жарко) с 8%, "冷" (холодно) с 5%, а затем выбирает "OK". Далее на основе "今天天气trueOK" (сегодня погода действительно хорошая) он предсказывает, что следующий символ — "啊" (ах)... генерируя символ за символом таким образом.

У всего этого процесса нет ни субъективного опыта, ни самосознания, ни намерения; он лишь имитирует распределение вероятностей человеческого языка.

Заблуждение 2: ИИ заменит людей

Более точное утверждение:ИИ не заменит людей, но люди, использующие ИИ, заменят людей, которые не используют ИИ。

История неоднократно подтверждала эту закономерность:

  • После появления калькулятора операторы счётов исчезли, но производительность труда математиков и инженеров выросла в десять раз.

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

  • С ИИ всё обстоит так же: повторяющаяся, основанная на правилах работа будет заменена, но работа, требующая суждения, творчества и межличностного сотрудничества, будет усилена.

Для отдельного человека самое важное — не бояться ИИ, анаучиться сотрудничать с ИИ。

Другие расширения