Как сделать

Что такое алгоритмы и почему они делают людей неудобными?

Женщина сидит за столом и пишет код
Студия Африка

«Алгоритм» — это слово, которое часто используется. Но когда мы строим разговоры вокруг алгоритмов YouTube или Facebook, о чем мы на самом деле говорим? Что такое алгоритмы и почему люди так на них жалуются?

Алгоритмы — это инструкции для решения проблем

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

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

Что ж, в мире компьютерных наук алгоритм — это просто модное слово для кода. Любой набор инструкций, который говорит компьютеру, как решать проблемы, является алгоритмом, даже если задача очень проста. Когда вы включаете компьютер, он следует инструкциям «как включить». Это алгоритм на работе. Когда компьютер НАСА использует необработанные радиоволновые данные для визуализации фотографии космического пространства, это также алгоритм в работе.

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

Мужчина неловко смотрит на ноутбук
fizkes / Shutterstock

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

Если «алгоритм» является универсальным термином для вычислительных инструкций, то почему мы используем его почти исключительно для описания запутанных, магических и злых аспектов цифрового мира?

Большинство людей используют «алгоритмы» и «машинное обучение» взаимозаменяемо

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

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

Думайте об этом как о более практичной форме искусственного интеллекта. Если вы классифицируете достаточное количество писем вашего босса как спам, тогда ваш почтовый клиент начнет автоматически помещать все письма вашего босса в папку спама. Точно так же Google использует машинное обучение, чтобы убедиться, что результаты поиска YouTube остаются актуальными, а Amazon использует машинное обучение, чтобы предложить, какие продукты вам следует купить.

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

В прессе вы услышите о «алгоритме Google» для ранжирования результатов поиска, «алгоритме YouTube» для рекомендаций по видео и «алгоритме Facebook» для определения того, какие записи вы видите на своей временной шкале. Все это предметы споров и споров.

СВЯЗАННЫЙ: Проблема с ИИ: машины учат вещи, но не могут их понять

Почему алгоритмы противоречивы

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

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

Но другие приложения машинного обучения не имеют преимущества от «правильного» ответа. Именно поэтому алгоритмы стали постоянным предметом разговоров в СМИ.

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

Как мы должны использовать слово «алгоритм»?

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

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

Отец и ребенок читают что-то с ноутбука
Евгений Атаманенко / Shutterstock

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

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

Источники: Сланец , Википедия , GeeksforGeeks

Похожие посты
Как сделать

Как получить возмещение за покупки в iTunes или App Store

Как сделать

Поверхностное перо не работает? Вот как это исправить

Как сделать

Как настроить и использовать Fire TV Recast

Как сделать

Как изменить рингтон по умолчанию на вашем iPhone