Изграждане на прост чатбот от нулата в Python (с помощта на NLTK) от Parul Pandey Planeta Chatbot

Gartner изчислява, че до 2020 г. чатботовете ще обработват 85 процента от взаимодействията с клиентите; Те вече обработват около 30 процента от транзакциите.

изграждане

Сигурен съм, че сте чували за Дуолинго - популярно приложение за изучаване на езици, което помага в процеса на изучаване на нов език. Този инструмент е доста популярен поради своите иновативни системи за преподаване на нов език. Концепцията е проста: пет до десет минути интерактивно обучение на ден са достатъчни за изучаване на език.

Въпреки това, въпреки че Duolingo позволява на хората да научат нов език, практикуващите са загрижени. Хората чувстваха, че пропускат да научат ценни разговорни умения, докато се учат сами. Хората също се тревожеха, че ще бъдат сдвоени с изучаващи други езици поради страх от срам. Това се оказа голямо пречка в плановете на Дуолинго. .

Така неговият екип реши този проблем, като създаде роден чатбот в приложението си, за да помогне на потребителите да усвоят разговорни умения и да практикуват наученото.

Тъй като ботовете са създадени да бъдат бъбриви и приятелски настроени, учениците на Duolingo могат да практикуват говорене по всяко време на деня, използвайки избраните от тях герои, докато не се почувстват достатъчно смели да практикуват новия си език с други говорители. Това реши проблем за потребителя и направи обучението чрез приложението много по-забавно.

Чат бот Това е софтуер с изкуствен интелект в устройство (Siri, Alexa, Google Assistant и др.), Приложение, уебсайт или други мрежи, които се опитват да измерват нуждите на потребителите и след това да им помогнат да изпълнят определена задача като например бизнес сделка. Хотелски резервации, подаване на формуляри и др. Днес почти всички компании разполагат с чатбот за взаимодействие с потребителите. Някои от начините, по които компаниите използват чат ботове, са:

За предоставяне на информация за полета.

· За да свържете клиентите и техните финанси.

Като поддръжка на клиенти.

Възможностите са почти неограничени.

Историята на чатботовете датира от 1966 г., когато Weizenbaum изобретява компютърна програма, наречена ELIZA. Имитирах езика на психотерапевт от само 200 реда код. Все още можете да разговаряте с него тук: Елиза .

Най-общо казано, има два варианта на chatbots: базирани на правила и самообучение.

1. В подход базирано на правила, бот отговаря на въпроси, базирани на някои правила, които преди това са били обучени. Дефинираните правила могат да бъдат много прости или много сложни. Ботовете могат да обработват прости заявки, но не успяват да се справят със сложни.

2. Самообучаващи се роботи Те са тези, които използват някои подходи, базирани на машинно обучение и определено са по-ефективни от роботи, базирани на правила. Тези ботове могат да бъдат от два други типа: базирани на възстановяване или генеративи.

i) В модели, базирани при възстановяване, chatbot използва определени евристики, за да избере отговор от библиотека с предварително дефинирани отговори. Chatbot използва съобщението и контекста на разговора, за да избере най-добрия отговор от предварително дефиниран списък със съобщения, които да даде. Контекстът може да включва текуща позиция в диалоговото дърво, всички предишни съобщения в разговора, предварително запазени променливи (например потребителско име). Евристиката за избор на отговор може да бъде проектирана по много различни начини, от условната логика, на която се основават правилата, или класификаторите на машинното обучение.

ii) Генеративни ботове те могат да генерират отговорите и не винаги отговарят с един от отговорите от набор от отговори. Това ги прави по-умни, тъй като те вземат дума по дума от заявката и генерират отговорите.

Предишни изисквания

Приема се работещо познание на scikit библиотека и NLTK. Ако обаче сте нов в NLP, пак можете да прочетете статията и след това да проверите ресурсите отново.

Областта на изследване, която се фокусира върху взаимодействията между човешкия език и компютрите, се нарича обработка на естествен език или накратко NLP. Той е на пресечната точка на компютърните науки, изкуствения интелект и изчислителната лингвистика [Wikipedia].

NLP е начин, по който компютрите анализират, разбират и извличат значение от човешкия език по интелигентен и полезен начин. Използвайки NLP, разработчиците могат да организират и структурират знания за изпълнение на задачи като автоматично обобщение, превод, разпознаване на име на обект, извличане на взаимоотношения, анализ на настроението, разпознаване на реч и сегментиране на теми.