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

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

Они решают проблемы.

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

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

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

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

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

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

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

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

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

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