[작업중][번역][How to use]Learn about Language Understanding Intelligent Service (LUIS) -LUIS(MS AI서비스)

*해당 번역은 MS LUIS 공식 페이지 내 DOCS를 번역한 내용이며, 글쓴이의 영어실력에 따라 잘못된 번역이 있을 수 있습니다. 
(This translate is from MS LUIS DOCS. Maybe you can find some wrong translations because my bad english skills)
*해당 글의 원본은 LUIS 공식 사이트(https://www.luis.ai/home/help#luis-help)에서 확인 가능합니다.
(You can read original docs at https://www.luis.ai/home/help#luis-help)
*해당 글 내용의 출처는 MS LUIS 공식 사이트 입니다.
(Every contents's sources in this are on MS LUIS official sitehttps://www.luis.ai)

*해당 글의 번역은 지속적으로 작업하여 갱신 중이며, 원본 글 챕터에 맞춰 등록됩니다. 

Learn about Language Understanding Intelligent Service(LUIS)
LUIS에 대해 배우기.

One of the key problems in human-computer interactions is theability of the computer to understand what a person wants. LanguageUnderstanding Intelligent Service (LUIS) enables developers to build smartapplications that can understand human language and react accordingly to userrequests. LUIS uses the power of machine learning to solve the difficultproblem of extracting meaning from natural language input, so that your applicationdoesn't have to. Any client application that converses with users, like adialog system or a chat bot, can pass user input to a LUIS app and receiveresults that provide natural language understanding.

사람과 컴퓨터간의 상호작용에서 주된 문제점 중 하나는 컴퓨터가 사람이 무엇을 원하는 가를 이해하는 능력이다. Language UnderstandingIntelligent Service (이하 LUIS)는 사용자 요청에 따라 사람의 말과 반응을 이행할 수 있는 똑똑한 어플리케이션들을개발자가 만들수 있도록 한다. LUIS는 머신러닝기술(머신러닝의힘)을 이용하여 자연어 입력으로부터 의미를 추출해내는 어려운 문제를 해결하며, 이를 통해 당신의 어플리케이션이 그 부분을 구현할 필요가 없도록 한다(sothat your application doesn’t have to). 사용자와 이야기 할 수 있는 어떠한 어플리케이션(다이얼로그 시스템 또는 챗봇 같은)들은 사용자의 입력을 LUIS app에 전달하여 자연어 이해처리 결과를 받을 수 있다.

What is a LUIS app?
LUIS app

A LUIS app is a place for a developer to define a custom languagemodel. The output of a LUIS app is a web service with an HTTP endpoint that youreference from your client application to add natural language understanding toit. A LUIS app takes a user utterance and extracts intents and entities thatcorrespond to activities in the client application’s logic. Your clientapplication can then take appropriate action based on the user intentions thatLUIS recognizes.

LUIS app은 개발자들이 사용자 언어 모델(acustom language model)을 정의할 수 있는 장소(공간)이다. LUIS app의 출력(output)HTTP endpoint 웹서비스이다. 당신은 당신의 클라이언트어플리케이션(client application)에서 자연어 처리를 위하여 그 HTTP Endpoint를 참조한다(refenrence).  LUIS app은 사용자의 표현을 취하여 클라이언트 어플리케이션의 로직내에서 activities(활동, 동작)와 일치하는(해당하는) intents(의도)entities(실체)를추출한다. 이후 당신의 클라이언트 어플리케이션은 LUIS가인지한 사용자의 의도(intentions)에 기반하는 적합한 동작을 취할 수 있다.

Key concepts
주요 컨셉

·       What is an utterance? An utterance is thetextual input from the user, that your app needs to interpret. It may be asentence, like "Book me a ticket to Paris", or a fragment of asentence, like "Booking" or "Paris flight." Utterancesaren't always well-formed, and there can be many utterance variations for aparticular intent. See Add example utterances for information ontraining a LUIS app to understand user utterances.

utterance이란 무엇인가?
utterance는 사용자로부터 당신의 앱에서 해석 해야 하는 텍스트 입력값이다. 그것은“Book me a ticket to Paris(파리로 가는 티켓을 예매해줘)” 같은 문장일수도 있고, “예약또는 파리행 티켓같은 문장의 일부분(파편) 일수도 있다. Utterances(발화)는 항상 잘 구성된 형태가 아니며, 특정 의도를 위한 많은 utterance변형이 있을 수 있다. 사용자 utterances이해를위한  LUIS app 트레이닝정보를 확인하기 위해선Add example utterances 를 참고하라.

·       What are intents? Intents are likeverbs in a sentence. An intent represents actions the user wants to perform. Itis a purpose or goal expressed in a user's input, such as booking a flight,paying a bill, or finding a news article. You define a set of named intentsthat correspond to actions users want to take in your application. A travel appmay define an intent named "BookFlight", that LUIS extracts from theutterance "Book me a ticket to Paris".

·       What are entities? If intents areverbs, then entities are nouns. An entity represents an instance of a class ofobject that is relevant to a user’s intent. In the utterance "Book me aticket to Paris", "Paris" is an entity of type location. Byrecognizing the entities that are mentioned in the user’s input, LUIS helps youchoose the specific actions to take to fulfill an intent. See Entities in LUIS for more detail on thetypes of entities that LUIS provides.

Plan your LUIS app

Before you start creating it in the LUIS web interface, planyour LUIS app by preparing an outline or schema to describe intents andentities in your application. Generally, you create an intent to trigger anaction in a client application or bot and create an entity to model someparameters required to execute an action. For example, a "BookFlight"intent could trigger an API call to an external service for booking a planeticket, which requires entities like the travel destination, date, and airline.See Plan your app for examples and guidanceon how to choose intents and entities to reflect the functions andrelationships in an app.

Build and train a LUISapp

Once you have determined which intents and entities you wantyour app to recognize, you can start adding them to your LUIS app. See create a new LUIS app, for a quick walkthroughof creating a LUIS app. For more detail about the steps in configuringyour LUIS app, see the following articles:

1.  Add intents

2.  Add utterances

3.  Add entities

4.  Improve performance using features

5.  Train and test

6.  Use active learning

7.  Publish

You can also watch a basic video tutorial on these steps.

Improve performance usingactive learning

Once your application is deployed and traffic starts to flowinto the system, LUIS uses active learning to improve itself. In the activelearning process, LUIS identifies the utterances that it is relatively unsureof, and asks you to label them according to intent and entities. This processhas tremendous advantages. LUIS knows what it is unsure of, and asks for yourhelp in the cases that lead to the maximum improvement in system performance.LUIS learns quicker, and takes the minimum amount of your time and effort. Thisis active machine learning at its best. See Label suggested utterances for anexplanation of how to implement active learning using the LUIS web interface.

Configure LUISprogrammatically

LUIS offers a set of programmatic REST APIs that can be used bydevelopers to automate the application creation process. These APIs allow youto author, train, and publish your application.

·       LUIS Programmatic API.

Integrate LUIS with a bot

It's easy to use a LUIS app from a bot built using the BotFramework, which provides the Bot Builder SDK for Node.js or .NET.You simply reference the LUIS app as shown in the following examples:



// Add a global LUIS recognizer to your bot using theendpoint URL of your LUIS app var model = 'https://westus.api.cognitive.microsoft.com/luis/v2.0/apps/2c2afc3e-5f39-4b6f-b8ad-c47ce1b98d8a?subscription-key=9823b65a8c9045f8bce7fee87a5e1fbc'; bot.recognizer(new builder.LuisRecognizer(model));



    // The LuisModel attribute specifies your LUISapp ID and your LUIS subscription key     [LuisModel("2c2afc3e-5f39-4b6f-b8ad-c47ce1b98d8a","9823b65a8c9045f8bce7fee87a5e1fbc")]     [Serializable]     public class TravelGuidDialog : LuisDialog<object>     {       // ...

The Bot Builder SDK provides classes that automatically handlethe intents and entities returned from the LUIS app. For code that demonstratehow to use these classes, see the following samples:

·       LUIS demo bot (C#)

·       LUIS demo bot (Node.js)

Integrate LUIS withSpeech

Your LUIS endpoints work seamlessly with Microsoft CognitiveService's speech recognition service. In the C# SDK for Microsoft CognitiveServices Speech API, you can add the LUIS application ID and LUIS subscriptionkey, and the speech recognition result is sent for interpretation.

See Microsoft Cognitive Services Speech API Overview.




댓글 입력 영역