Jump to content

Автозаполнение

(Перенаправлено с автозаполнения )
Пример частично набранного поискового запроса baby st автозаполнение до различных вариантов

Автозаполнение или завершение слов — это функция, с помощью которой приложение прогнозирует остальную часть слова, которое набирает пользователь. В Android и iOS [1] в смартфонах это называется интеллектуальный ввод текста . В графических пользовательских интерфейсах пользователи обычно могут нажать клавишу табуляции , чтобы принять предложение, или клавишу со стрелкой вниз , чтобы принять одно из нескольких.

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

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

Определение

[ редактировать ]

Исходная цель

[ редактировать ]

Первоначальная цель программного обеспечения для предсказания слов заключалась в том, чтобы помочь людям с ограниченными физическими возможностями увеличить скорость набора текста. [2] а также помочь им уменьшить количество нажатий клавиш, необходимых для завершения слова или предложения. [3] Необходимость увеличения скорости объясняется тем фактом, что люди, использующие речевые устройства, обычно производят речь со скоростью менее чем на 10% быстрее, чем люди, использующие устную речь. [4] Но эта функция также очень полезна для всех, кто пишет текст, особенно для людей, например врачей, которые часто используют длинную, сложную для написания терминологию, которая может быть технической или медицинской по своей природе.

Описание

[ редактировать ]

Автозаполнение или завершение слов работает так, что, когда автор пишет первую букву или буквы слова, программа прогнозирует одно или несколько возможных слов в качестве выбора. Если нужное слово включено в список, писатель может выбрать его, например, с помощью цифровых клавиш. Если слово, которое хочет пользователь, не предсказано, автор должен ввести следующую букву слова. В это время выбор слов изменяется таким образом, что предоставленные слова начинаются с тех же букв, что и те, которые были выбраны. Когда появляется слово, которое хочет пользователь, оно выделяется и слово вставляется в текст. [5] [6] В другой форме прогнозирования слов прогнозируются слова, которые с наибольшей вероятностью последуют за только что написанным, на основе последних использованных пар слов. [6] Прогнозирование слов использует языковое моделирование , при котором в пределах заданного словаря рассчитываются слова, которые с наибольшей вероятностью встречаются. [7] Наряду с языковым моделированием базовое предсказание слов на устройствах AAC часто сочетается с моделью частоты , где слова, которые пользователь AAC использовал недавно и часто, будут предсказаны с большей вероятностью. [4] Программное обеспечение для прогнозирования слов часто также позволяет пользователю вводить свои собственные слова в словари прогнозирования слов либо напрямую, либо путем «изучения» написанных слов. [5] [6] Некоторые результаты поиска, связанные с гениталиями или другими вульгарными терминами, часто опускаются из технологий автозаполнения, как и ненормальные термины. [8] [9]

Технология автозаполнения и прогнозирования текста была изобретена китайскими учеными и лингвистами в 1950-х годах для решения проблемы неэффективности ввода китайской пишущей машинки . [10] поскольку процесс набора текста включал поиск и выбор тысяч логотипографических символов на лотке, [11] резко замедляет скорость обработки текста. [12] [13]

В 1950-х годах машинистки начали менять раскладку символов со стандартной словарной раскладки на группы общих слов и фраз. [14] Китайские инженеры пишущих машинок разработали инновационные механизмы для доступа к обычным символам, доступным с максимально возможной скоростью, с помощью предсказания слов — метода, используемого сегодня в китайских методах ввода для компьютеров и в обмене текстовыми сообщениями на многих языках. По словам историка Стэнфордского университета Томаса Маллани, развитие современных китайских пишущих машинок в 1960-1970-х годах повлияло на развитие современных компьютерных текстовых процессоров и повлияло на развитие самих компьютеров. [15] [11] [14]

Типы инструментов автозаполнения

[ редактировать ]

Существуют автономные инструменты, которые добавляют функцию автозаполнения в существующие приложения. Эти программы отслеживают нажатия клавиш пользователем и предлагают список слов на основе первых набранных букв. Примеры: Typingaid и Letmetype. [16] [17] Бесплатная программа LetMeType больше не разрабатывается, автор опубликовал исходный код и позволяет любому продолжить разработку. Typingaid, также бесплатная программа, активно развивается. Intellicomplete, как бесплатная, так и платная версия, работает только в определенных программах, которые подключаются к серверной программе intellicomplete. [18] Многие программы автозаполнения также можно использовать для создания сокращенного списка. Исходным программным обеспечением для автозаполнения было Smartype, которое появилось в конце 1980-х годов и доступно до сих пор. Первоначально он был разработан для медицинских транскрипционистов, работающих в WordPerfect для MS/DOS, но теперь он работает для любого приложения в любой программе Windows или веб-программе.

стенография

[ редактировать ]

Сокращение , также называемое автозаменой, — это связанная функция, которая включает автоматическую замену определенной строки на другую, обычно более длинную и трудную для ввода, например «myname» на «Lee John Nikolai François Al Rahman». Это также может незаметно исправить простые ошибки ввода , такие как превращение « teh » в «the». Некоторые программы автозаполнения, автономные или встроенные в текстовые редакторы, основанные на списках слов, также включают функцию сокращения для часто используемых фраз. [ нужна ссылка ]

Завершение контекста

[ редактировать ]

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

Завершение строки — это тип завершения контекста, впервые представленный Юрайем Симловичем в TED Notepad в июле 2006 года. Контекстом завершения строки является текущая строка, а текущий документ представляет собой набор обучающих данных. Когда пользователь начинает строку, начинающуюся с часто употребляемой фразы, редактор автоматически дополняет ее до той позиции, где сходные строки расходятся, или предлагает список общих продолжений. [ нужна ссылка ]

Завершение действий в приложениях — это автономные инструменты, которые добавляют функцию автозаполнения к существующим приложениям или всем существующим приложениям ОС в зависимости от текущего контекста. Основным преимуществом завершения действия является возможность прогнозировать ожидаемые действия. Основным недостатком является необходимость набора данных. Наиболее распространенное использование завершения действий наблюдается в расширенных редакторах языков программирования и IDE . Но существуют также инструменты завершения действий, которые работают глобально, параллельно, во всех приложениях всего ПК, не (очень) препятствуя завершению действий соответствующих приложений. [ нужна ссылка ]

Интеграция программного обеспечения

[ редактировать ]

В веб-браузерах

[ редактировать ]
Автозаполнение поля поиска в Mozilla Firefox

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

В почтовых программах

[ редактировать ]

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

Например, Microsoft Outlook Express найдет адреса по имени, которое используется в адресной книге. Google Gmail будет искать адреса по любой строке , которая встречается в адресе или сохраненном имени. [ нужна ссылка ]

В поисковых системах

[ редактировать ]

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

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

В редакторах исходного кода

[ редактировать ]
Завершение кода в Qt Creator 5.0: программист вводит некоторый код, и когда программное обеспечение обнаруживает узнаваемую строку, такую ​​как идентификатор переменной или имя класса, оно представляет программисту меню, которое содержит полное имя идентифицированной переменной или методы, применимые к ней. обнаруженный класс, а программист делает выбор с помощью мыши или клавиш со стрелками на клавиатуре. Если программист продолжает печатать, не сделав выбора, то меню исчезает

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

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

В инструментах запросов к базе данных

[ редактировать ]

Автодополнение в инструментах запросов к базе данных позволяет пользователю автоматически заполнять имена таблиц в операторе SQL и имена столбцов таблиц, на которые ссылаются в операторе SQL. Когда текст вводится в редактор , контекст курсора в операторе SQL указывает, требуется ли пользователю завершение таблицы или завершение столбца таблицы. Заполнение таблицы предоставляет список таблиц, доступных на сервере базы данных, к которому подключен пользователь. Завершение столбца предоставляет список столбцов только для таблиц, на которые есть ссылки в операторе SQL. SQL Server Management Studio обеспечивает автозаполнение в инструментах запросов. [ нужна ссылка ]

В текстовых процессорах

[ редактировать ]

Во многих программах обработки текста автодополнение сокращает время, затрачиваемое на ввод повторяющихся слов и фраз. Исходный материал для автозаполнения собирается либо из остальной части текущего документа, либо из списка общих слов, определенного пользователем. В настоящее время Apache OpenOffice , Calligra Suite , KOffice , LibreOffice и Microsoft Office включают поддержку такого типа автодополнения, как и расширенные текстовые редакторы, такие как Emacs и Vim .

В интерпретаторах командной строки

[ редактировать ]
Завершение командной строки в PowerShell .

В интерпретаторе командной строки , таком как Unix в sh или bash , Windows в cmd.exe или PowerShell , или в аналогичных интерфейсах командной строки , автозаполнение имен команд и имен файлов может быть выполнено путем отслеживания всех возможных названия вещей, к которым пользователь может получить доступ. Здесь автозаполнение обычно выполняется нажатием кнопки Tab ↹ клавишу после ввода первых нескольких букв слова. Например, если единственный файл в текущем каталоге, который начинается с x, — это xLongFileName, пользователь может предпочесть ввести x и автоматически заполнить полное имя. Если бы в той же области существовало другое имя файла или команда, начинающаяся с x, пользователь вводил бы больше букв или несколько раз нажимал клавишу Tab, чтобы выбрать соответствующий текст.

Эффективность

[ редактировать ]

Исследовать

[ редактировать ]

Хотя исследования показали, что программное обеспечение для предсказания слов действительно уменьшает количество необходимых нажатий клавиш и повышает продуктивность письма у детей с ограниченными возможностями, [2] Есть неоднозначные результаты относительно того, действительно ли предсказание слов увеличивает скорость вывода. [20] [21] Считается, что причина, по которой предсказание слов не всегда увеличивает скорость ввода текста, заключается в повышенной когнитивной нагрузке и необходимости переводить взгляд с клавиатуры на монитор. [2]

Чтобы уменьшить эту когнитивную нагрузку, можно использовать такие параметры, как сокращение списка до пяти вероятных слов и вертикальное расположение этих слов. [2] Вертикальная компоновка призвана свести к минимуму движения головы и глаз, а также дает дополнительные визуальные подсказки, поскольку длина слова становится очевидной. [22] Хотя многие разработчики программного обеспечения считают, что если список предсказанных слов следует за курсором , это уменьшит движения глаз, [2] в исследовании детей с расщелиной позвоночника , проведенном Тэмом, Ридом, О'Кифом и Науманом (2002), было показано, что набор текста был более точным, и что дети также предпочитали, когда список появлялся у нижнего края экрана, в верхней части экрана. средняя линия. Несколько исследований показали, что эффективность и удовлетворенность предсказанием слов повышаются, когда список слов находится ближе к клавиатуре, из-за меньшего количества необходимых движений глаз. [23]

Программное обеспечение с предсказанием слов производится несколькими производителями. Программное обеспечение можно приобрести как дополнение к обычным программам, таким как Microsoft Word (например, WordQ+SpeakQ , Typing Assistant, [24] Со: Писатель, [ нужна ссылка ] Вивик, [ нужна ссылка ] Готит Дислексия), [ нужна ссылка ] или как одна из многих функций устройства AAC (PRC Pathfinder, [ нужна ссылка ] Динавокс Системы, [ нужна ссылка ] Продукты ChatPC от Saltillo [ нужна ссылка ] ). Некоторые известные программы: Intellicomplete, [ нужна ссылка ] который доступен как в бесплатной, так и в платной версии, но работает только с программами, предназначенными для работы с ним. Дайте мне тип [ нужна ссылка ] и Typingaid [ нужна ссылка ] обе бесплатные программы, которые работают в любом текстовом редакторе.

Ранняя версия автозаполнения была описана в 1967 году Х. Кристофером Лонге-Хиггинсом в его «Пишущей машинке с компьютером» (CAT), [25] «такие слова, как «НАЧАЛО» или «ПРОЦЕДУРА», или идентификаторы, введенные программистом, будут автоматически завершены CAT после того, как программист наберет только один или два символа».

См. также

[ редактировать ]
  1. ^ «Как использовать автокоррекцию и интеллектуальный ввод текста на iPhone, iPad или iPod touch» . Поддержка Apple . Яблоко.
  2. ^ Перейти обратно: а б с д и Тэм, Синтия; Уэллс, Дэвид (2009). «Оценка преимуществ отображения списков прогнозируемых слов на личном цифровом помощнике на уровне клавиатуры». Вспомогательная технология . 21 (3): 105–114. дои : 10.1080/10400430903175473 . ПМИД   19908678 . S2CID   23183632 .
  3. ^ Энсон, Д.; Мойст, П.; Пшивара, М.; Уэллс, Х.; Сэйлор, Х.; Максим, Х. (2006). «Влияние завершения слов и прогнозирования слов на скорость набора текста с помощью экранной клавиатуры» . Вспомогательная технология . 18 (2): 146–154. дои : 10.1080/10400435.2006.10131913 . ПМИД   17236473 . S2CID   11193172 .
  4. ^ Перейти обратно: а б Трнка, К.; Яррингтон, Дж. М.; Маккой, К.Ф. (2007). «Влияние прогнозирования слов на скорость связи для AAC». NAACL-Short '07: Человеческие языковые технологии 2007: Конференция североамериканского отделения Ассоциации компьютерной лингвистики . Том. Сопутствующий том, короткие статьи. Ассоциация компьютерной лингвистики. стр. 173–6. CiteSeerX   10.1.1.363.2416 .
  5. ^ Перейти обратно: а б Бойкельман, доктор медицинских наук; Миренда, П. (2005). Дополняющая и альтернативная коммуникация: поддержка детей и взрослых со сложными коммуникативными потребностями (3-е изд.). Балтимор, Мэриленд: Брукс. п. 77. ИСБН  9781557666840 . OCLC   254228982 .
  6. ^ Перейти обратно: а б с Виттен, Айдахо; Дарра, Джон Дж. (1992). Реактивная клавиатура . Издательство Кембриджского университета. стр. 43–44. ISBN  978-0-521-40375-7 .
  7. ^ Елинек, Ф. (1990). «Моделирование самоорганизующегося языка для распознавания речи» . В Вайбель, А.; Ли, Кай-Фу (ред.). Чтения по распознаванию речи . Морган Кауфманн. п. 450. ИСБН  9781558601246 .
  8. ^ Остер, Ян (2015). «Коммуникация, клевета и ответственность посредников». Юридические исследования . 35 (2): 348–368. дои : 10.1111/lest.12064 . S2CID   143005665 .
  9. ^ Маккалок, Гретхен (11 февраля 2019 г.). «Автозаполнение представляет лучшую версию вас» . Проводной . Проверено 11 февраля 2019 г.
  10. ^ Макклюр, Макс (12 ноября 2012 г.). «Китайская пишущая машинка предвосхищала предсказывающий текст, находит историк» .
  11. ^ Перейти обратно: а б Соррел, Чарли (23 февраля 2009 г.). «Как это работает: китайская пишущая машинка» . Проводной .
  12. ^ Гринвуд, Вероника (14 декабря 2016 г.). «Почему интеллектуальный ввод текста заставляет вас забыть, как писать» . Новый учёный .
  13. ^ О'Донован, Кэролайн (16 августа 2016 г.). «Как эта десятилетняя технология привела к появлению интеллектуального текста» . Баззфид .
  14. ^ Перейти обратно: а б Маллани, Томас С. (16 июля 2018 г.). «90 000 символов на 1 клавиатуре» . Внешняя политика . Проверено 25 апреля 2020 г.
  15. ^ Рекомендуемое исследование - первая в мире история китайской пишущей машинки , Гуманитарные науки в Стэнфорде, 2 января 2010 г.
  16. ^ «[AHK 1.1]TypingAid v2.22.0 — Утилита автодополнения слов» . Автохоткей. 2010.
  17. ^ Класом, Карстен (2011). «LetMeType» . Архивировано из оригинала 27 мая 2012 г. Проверено 9 мая 2012 г.
  18. ^ «Программное обеспечение для медицинской транскрипции — IntelliComplete» . ФлэшПик. 2014.
  19. ^ Дэвидс, Нил (3 июня 2015 г.). «Изменение поисковых предложений автозаполнения» . Станция Репутация . Проверено 19 июня 2015 г.
  20. ^ Даббаг, Х.Х.; Дампер, Род-Айленд (1985). «Средняя длина и время выбора как факторы, определяющие скорость связи». В Брубейкере, К.; Хобсон, Д.А. (ред.). Технология, мост к независимости: материалы восьмой ежегодной конференции по реабилитационным технологиям, Мемфис, Теннесси, 24–28 июня 1985 г. Общество реабилитационных инженеров Северной Америки. стр. 404–6. OCLC   15055289 . 80177b42-e668-4ed5-a256-49b9440bdfa5.
  21. ^ Гуденаф-Трепанье, К.; Розен, MJ (1988). «Прогнозная оценка назначения средств связи: максимальная скорость связи, определяемая двигателем». В Бернштейне, Л.Е. (ред.). Люди с нарушениями голоса: Клиническая практика и исследования . Филадельфия: Грюн и Страттон. стр. 165–185. ISBN  9780808919087 . OCLC   567938402 . как указано в Tam & Wells 2009.
  22. ^ Суиффин, Алабама; Арнотт, Дж.Л.; Пикеринг, Дж.А.; Ньюэлл, А.Ф. (1987). «Адаптивные и прогнозирующие методы в коммуникационном протезе». Дополняющая и альтернативная коммуникация . 3 (4): 181–191. дои : 10.1080/07434618712331274499 . как указано в Tam & Wells 2009.
  23. ^ Тэм, К.; Рид, Д.; Науманн, С.; О'Киф, Б. (2002). «Ощущаемые преимущества вмешательства в предсказание слов на письменную продуктивность у детей с расщелиной позвоночника и гидроцефалией» . Международная профессиональная терапия . 9 (3): 237–255. дои : 10.1002/оти.167 . ПМИД   12374999 . как указано в Tam & Wells 2009 .
  24. ^ Сумитское программное обеспечение (2010). «Помощник по набору текста — новое поколение программного обеспечения для предсказания слов» . PRLog: Распространение пресс-релизов.
  25. ^ Лонге-Хиггинс, ХК; Ортони, А. (1968). «Адаптивное запоминание последовательностей» . Машинный интеллект 3, Труды третьего ежегодного семинара по машинному интеллекту, Эдинбургский университет, сентябрь 1967 г. Издательство Эдинбургского университета. стр. 311–322.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: bbdadbbbcbadaef2d4f9fca93dd33f36__1708521540
URL1:https://arc.ask3.ru/arc/aa/bb/36/bbdadbbbcbadaef2d4f9fca93dd33f36.html
Заголовок, (Title) документа по адресу, URL1:
Autocomplete - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)