[작업중][번역][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 like verbs in a sentence. An intent represents actions the user wants to perform. It is 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 intents that correspond to actions users want to take in your application. A travel app may define an intent named "BookFlight", that LUIS extracts from theutterance "Book me a ticket to Paris".


intents 란? 문장에서 동사와 같다. intent는 사용자가 수행하기를 원하는 동작들을 나타낸다. 그것은 사용자 입력 내에서 표현되는 목적 또는 목표이다. 가령 비행기표 예매, 비용 지불, 또는 뉴스 기사 찾기 등에 해당한다. 당신은 사용자가 어플리케이션에서 하고자 하는 행동들에 해당하는 명명된 intents들을 정의한다.  여행 app은 아마 정의된


·       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.


entities란? 만약 intents가 동사와 같다면, entities 는 명사와 같다. entity는 사용자의 intent와 관련있는 객체 클래스의 인스턴스를 나타낸다. utterance인 "Book me a ticket to Paris"에서, "Paris"는 지역 형태의 entity이다. 사용자의 입력에서 언급된 entities로 인식함으로써, LUIS는 당신이 intent를 수행하기 위한 세부적인 행동들을 선택할 수 있도록 도움을 준다. LUIS가 제공하는 entities 타입에 대한 보다 상세한 정보는 Entities in LUIS를 보아라.

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:

Node.js

JavaScriptCopy

// 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));

C#

C#Copy

    // 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.

 


 


PyCharm Community 에서 Django 설치 (Install Django on PyCharm Community version) - Python

*PyCharm Community Edition Version 2016.3 기준 (Based on PyCharm Community Edition Ver 2016.3) 

1. PyCharm >> Configure >> Settings 이동( Move to Settings Menu)

2. Project Interpreter 선택 (Select Project Interpreter)

3. Project Interpreter 에서 VirtualEnv 선택 또는 우측 톱니바퀴 버튼 누르고 Create VirtualEnv 버튼 눌러서 신규 생성
(Select VirtualEnv in Project Interpreter list or Create VirtualEnv by clicking geat icon)

4. 녹색 + 버튼 클릭 (Click green + button)

5. 팝업에서 Django 검색 및 Install Package 클릭 (Searching "Django" and click "Install Package" at popup window)

6. OK 버튼 누르고 Settings 창 닫기 (Click Ok button and close Settings window)

7. Create New Project >> Location 설정, 앞서 만든 Interpreter 선택.
(Move to "Create New Project". Then type your new project's Location value, and select Interpreter you made it upper)

8. 상단 메뉴 중 View>>Tool Windows>>Terminal 선택 (Select View>>Tool Windows>>Terminal menu at top menu)

9. Termianl 창에 "django-admin startproject 프로젝트명 ."입력. 끝에 .(점) 빼먹지 말기
(In Terminal window, type command "django-admin startproject yourprojectname .".
You have to don't miss .(dot) at end of command)


10. 생성된 프로젝트에 django가 설치된 것 확인. 끝. (You can check new django project in your project location)







[SVN] VisualSVN svn 프로토콜 열기 (Open SVN protocol on VisualSVN) -E.T.C

VisualSVN 은 기본적으로 https 프로토콜만 지원한다.
(ex: https://localhost/SVNRepository)

하지만 종종 https가 아닌 SVN프로토콜이 필요할 때가 있다. 
이 경우는 직접 VisualSVN 이 설치된 경로 안에 있는 svnserve.exe를 구동시키고 등록시켜서 SVN프로토콜을 열어줘야 한다. 
(정확히는, 동일한 repository를 쓰는 SVN 두 개를 돌리는 거라고 생각하면 된다.)

방법은 아래와 같다.

1. CMD창을 키고 아래를 입력한다. 

sc create svnserve binpath= "\"C:\Program Files\VisualSVN Server\bin\svnserve.exe\" --service -r C:\repositories" displayname= "Subversion Server" depend= Tcpip start= auto



해당 내용은 svnserve.exe를 윈도우즈 서비스에 등록(sc create svnserve)하는 과정이다. 

(1)binpath= "\"C:\Program Files\VisualSVN Server\bin\svnserve.exe\"
VisualSVN이 설치된 경로 안의 svnserve.exe가 있는 경로를 넣어준다. 본인이 기본 위치 외 다른 곳에 VisualSVN을 설치했으면
해당 경로에 맞춰 넣어준다. 

(2) -r C:\repositories 
연결할 SVN repostories 경로를 넣어준다. VisualSVN과 동일한 곳을 연결해주려면, 앞서 VisualSVN에서 사용한 repository 경로를 넣어준다. 

(3)displayname= "Subversion Server"
윈도우 서비스에 표시될 이름

(4) depend= Tcpip 
Tcp/IP 서비스가 시작된 이후에 기동되게끔 설정

(5)start= auto
자동 시작 여부

2. net start svnserve (또는 서비스 창에서 시작)

등록된 서비스를 등록하는 과정이다. CMD창에서 net start svnserve 를 입력하거나,
windows service 창에서 구동시켜 준다. 

3. 정상구동확인
CMD 창에서 아래와 같이 입력하여 정상 구동 여부를 확인한다. 
아래와 같이 출력된다면 정상 구동

svn info svn://localhost/repository이름


4. 방화벽 설정
외부에서 접속하여 쓰게하기 위해선 해당 포트에 대해 방화벽을 열어줘야 한다. 
svn프로토콜의 기본 포트는 3690 포트 이며 다르게 설정해줬을 경우 해당 포트값에 대해 
윈도우 방화벽을 열어준다. 

제어판>windows방화벽>고급설정 메뉴로 들어가서 
"인바운드", "아웃바운드" 부분에 해당 정책 생성 후 "프로토콜 및 포트" 부분에서 해당 포트를 허용해줘야 한다. 





5. repository 접근 권한 설정

visualSVN에 있는 svnserve를 켰지만, 저장소 접근 권한은 visualSVN과 별도로 설정된다. 
c:\Repositories(저장소가 저장된 경로)\저장소이름\conf 안에 있는 아래의 파일을 수정해야 한다.

(1)passwd
사용자 접근 정보를 입력한다. 해당 파일을 열어 #주석 처리 된 내용과 동일한 구조로 입력한다. 
(해당 파일의 [users] 밑에 계정ID = 비밀번호 형태로 입력한다.)

(2)svnserve.conf
접근권한 정도를 수정한다. 
해당 파일을 열어 아래 부분을 찾아 주석을 제거(# 제거)하고 수정한다. 

anon-access : passwd파일 정의 안된 인원이 접근할 경우의 권한. 
                 none 은 아무것도 허용 안하는 것이며, read는 읽기 권한만, write는 read/write 권한이다. 
auth-access : passwd파일 안에 정의된 인원이 접근할 경우의 권한.내용 별 권한은 위와 동일하다. 

password-db = passwd : 사용자 정의 정보 설정. = 옆에 적힌 이름의 파일명과 동일한 파일 안의 내용을 적용한다.
                  우리는 passwd파일 안에 적었으므로 password-db = passwd로 놔둔다.

realm : 접속 시 보여질 저장소의 별칭 같은 것이다. 단, 두개의 저장소가 같은 realm 이름을 쓰면 반드시 동일한 password       
         database를 써야 한다.


위 5단계로 하면 visualSVN로 설치한 저장소에 대해 SVN으로 접근이 가능하다. 
http://해당 서버 IP:3690/저장소이름 으로 접근해보자.


--------------------------------------------------------------------------------
How to open SVN protocol on VisualSVN.

Normally, VisualSVN only support https protocol.
By you running "svnserve.exe" in VisualSVN folder, you can use SVN protocol on your VisualSVN repository.
(Actually, it's that running new svn server, not same VisualSVN server. So you have to set about svnserve after running it)

1. type under sentence on your Windows CMD console. (make windows service)

sc create svnserve binpath= "\"C:\Program Files\VisualSVN Server\bin\svnserve.exe\" --service -r C:\repositories" displayname= "Subversion Server" depend= Tcpip start= auto

2. running service you made

type "net start svnserve" on your cmd console, or
running windows service you made on "service" window.

3.check your svn server 

type "svn info svn://localhost/repository name" on your cmd console. then,
you can check your new svn server.

4. open your svn server port from windows firewall
Default svn sever port is "3690". you have to open it on your firewall.
Go to "windows firewall", move to advanced setting menu. And then setting your firewall's inbound/outbound for 
open your port.

5. Define new authentication roll.
Move to conf folder in your repositories. (ex: C:\repositories\dev\conf")
then input or modify passwd and svnserve.conf files.
input auth data in passwd file.(follow example in it).
Modify svnserve.conf like under(you can check how to modify this on this file's annotation).

anon-access :none 
auth-access : write
password-db = passwd 
realm : my repository






[JAVA] DAO, DTO, VO - Java

아래 림크 참고


http://choijaehyuk.com/128



[JAVA] CLOB --> java string - Java

오라클 CLOB 데이터를 java string으로 받을 때 처리

아래 링크 참고>

http://thebad.tistory.com/entry/HashMap-%EC%9D%84-%ED%86%B5%ED%95%98%EC%97%AC-Clob-%EB%A5%BC-%EB%B0%9B%EC%9D%84-%EA%B2%BD%EC%9A%B0-String-%EC%9C%BC%EB%A1%9C-%EB%B3%80%ED%99%98




1 2 3 4 5 6 7 8 9 10 다음


AD_1