README.md 8.17 KB
Newer Older
TAE HWAN KIM's avatar
TAE HWAN KIM committed
# KSB AI Framework (ver.19.03)

## 소개

![개념도](images/images_conceptual_illustration.jpg)

#### 개념 및 구조
- KSB 인공지능 프레임워크(이하 <b>BeeAI</b>)는 <b>IoT, 빅데이터, 기계학습 및 도메인 지식</b>을 융합하여 다양한 인공지능 서비스 구축에 필요한 공통기능을 제공하는 인공지능 프레임워크입니다. BeeAI는 분산병렬 인프라를 기반으로, 다양한 데이터 소스의 수집으로부터 도메인 응용서비스 제공까지의 전주기적 솔루션을 지향합니다.
- BeeAI는 <b>멀티모달 데이터처리, 멀티모델 동시학습 및 추론, 자동기계학습, 분산병렬학습 및 추론, 학습모델 및 도메인지식의 탑재·연동</b> 등의 기능을 제공합니다. 각각의 기능들은, <b>워크플로우를 이용하여 선택·조합·실행·서빙 및 재활용</b>이 가능하도록 설계되었습니다.

#### 특장점
- <b>지속성</b> : SW/Data/Analytics/경험 등 기업의 데이터를 활용한 인공지능 기술력 내재화 가능
- <b>다양성</b> : SW 컴퍼넌트들의 조합으로 다양한 응용 서비스 시스템 구성 가능
- <b>재활용성</b> : 워크플로우 재활용 및 공유 기능 제공
- <b>확장성</b> : 개발자 API를 이용한 3rd Party 컴퍼넌트 개발 및 등록 인터페이스 제공
- <b>편의성</b> : (1) 웹 기반 DIY 워크플로우 저작도구 및 모니터링/실행/제어 인터페이스제공, (2) Stand-alone 실행환경과 웹툴킷 저작 환경을 포함한 컨테이너 기반 툴박스 제공, (3) 모델 학습과 서빙 프로세스 일원화


# 
# KSB AI Framework (ver.19.03) 다운로드를 위한 회원 가입절차


### ETRI 외부 클라우드 저장소 회원가입

- <https://etrioss.kr/> 접속 후 "외부 클라우드 저장소" 클릭 (아래 그림 참조)

![ETRI 오픈소스포털](images/images_oss.etri.re.kr.png)

- 외부 클라우드 저장소 회원가입 (아래 그림 참조). 회원 가입시의 "Full name"과 "Username"은 아래 "<b>권한요청 Email 발송</b>"에서 필요함.

![ETRI 외부 클라우드 저장소 가입](images/images_etri.external.git.png)

### 권한요청 Email 발송


가입시의 "Full name"과 "Username"을 포함하는 메일을 작성하여 발송합니다 (아래 참조).

- Email 제목: KSB KAF Git Repository 접근승인요청
- Email 수신처: kanghj@etri.re.kr
- 내용: 반드시  "Full name"과 "Username"을 포함하여야 하며, 기타 내용은 자유양식으로 작성

담장자 (kanghj@etri.re.kr) 부재시, 추가 Email 수신처는 아래와 같습니다.

- leeyh@etri.re.kr

발송된 권한요청 Email은 담당자에 의해 수동으로 확인됩니다. 담당자가 부재 중이 아닐 경우, 빠른 확인 후 권한요청 승인에 대한 답변이 이메일로 발송됩니다.

### 다운로드

권한요청 승인 답메일을 받은 후에는, 아래의 명령어를 이용하여 KSB AI Framework를 다운로드할 수 있습니다.
<pre>
  <code>git clone https://etrioss.kr/ksb/kaf</code>
</pre>
처음으로 다운로드할 경우, 가입시 이용한 사용자 ID ("Username")와 암호 ("Password")를 입력합니다.

### 업데이트

KSB AI Framework 가 업데이트된 경우, 아래 명령어를 이용해 업데이트된 파일만 받을 수 있습니다.
<pre>
  <code>git pull https://etrioss.kr/ksb/kaf</code>
</pre>

# 매뉴얼 


<table width="200" cellpadding="5" cellspacing="2" border="1" align="center" style="table-layout:fixed;word-break:break-all;">

<tr>
<th>  </th> <th> 목차 </th> <th> 설명 </th> <th> 링크 </th>
</tr>

  
<tr>
    <td> 1 </td>    
    <td width="150px" nowrap> 시작하기 </td>
    <td>KSB 인공지능 프레임워크를 빠르게 시작할 수 있는 1) docker image 와 고객의 환경에 맞게 구성하여 설치할 수 있는 2) 오픈소스 및 바이너리 파일 을 제공합니다.</td>
    <td> https://etrioss.kr/thkimetri/ksb19.03-manual/blob/master/manual1903/startGuide.md </td>
</tr>

<tr>
    <td> 2 </td>    
    <td  width="150px" nowrap  >사용자 가이드</td>
    <td> KSB 인공지능 프레임워크를 이용하여 인공지능 서비스를 만드는 방법을 설명한 사용자 매뉴얼입니다. KSB 웹툴킷을 이용하여 인공지능 서비스와 관련된 워크플로우를 만들고 실행하거나 제어하는 방법을 설명합니다. 또한 워크플로우를 쉽게 개발할 수 있도록 KSB 웹툴킷 기반의 다양한 워크플로우 개발 예제를 소개합니다. </td>
    <td> https://etrioss.kr/thkimetri/ksb19.03-manual/blob/master/manual1903/userGuide.md </td>
</tr>


<tr>
    <td> 3 </td>    
    <td width="150px" nowrap  > 개발자 가이드</td>
    <td> KSB 인공지능 프레임워크의 신규 컴퍼넌트를 개발하고자 하는 SW 개발자를 위한 매뉴얼입니다. </td>
    <td> https://etrioss.kr/thkimetri/ksb19.03-manual/blob/master/manual1903/developerGuide.md </td>
</tr>

<tr>
    <td> 4 </td>    
    <td width="150px" nowrap  > API  레퍼런스 </td>
    <td> KSB 인공지능 프레임워크는 Scala 를  사용하여 다양한 응용서비스를 개발할 수 있는 공통 API를 제공합니다. </td>
    <td> https://etrioss.kr/thkimetri/ksb19.03-manual/blob/master/manual1903/apiReference.md </td>
</tr>



</table>




# 교육 동영상 


<table width="200" cellpadding="5" cellspacing="2" border="1" align="center" style="table-layout:fixed;word-break:break-all;"  vertical-align="middle;" >

<tr>
<th>  </th> <th> 제목 </th> <th> 링크  </th> 
</tr>

  
<tr>
    <td> 1 </td>    
    <td width="600px" nowrap> BeeAI 웹툴킷 개요 및 사용법 </td>
    <td>  https://youtu.be/rurcGkgMY5E  </td>
</tr>

<tr>
    <td> 2 </td>    
    <td  width="150px" nowrap  > [1단계] 데이터 수집 및 적재하기

- Part 1. 스트림데이터를 배치로 적재하기 실습
- Part 2. 스트림데이터를 스트림 형태로 적재하기 실습
- Part 3. 배치데이터를 배치 형태로 적재하기 실습    
    

    </td>
    <td> https://youtu.be/hRcDs2f3Zz8  </td>
</tr>


<tr>
    <td> 3 </td>    
    <td width="150px" nowrap  > [2단계] 데이터 처리하기 
    
- Part 1. 데이터 배치 처리하기 

</td>
    <td> https://youtu.be/R-S1ZcmX6CQ  </td>
</tr>

<tr>
    <td> 4 </td>    
    <td width="150px" nowrap  > [2단계] 데이터 처리 하기 
    
- Part 2. 스트림 데이터 처리하기(이론) 


</td>
<td> https://youtu.be/X2YIogKwnWE </td>
</tr>


<tr>
    <td> 5 </td>    
    <td width="150px" nowrap  > [2단계] 데이터 처리 하기 
    
- Part 2. 스트림 데이터 처리하기(실습) 

</td>
    <td> https://youtu.be/JuNcjpaZ5EI </td>
</tr>


<tr>
    <td> 6 </td>    
    <td width="150px" nowrap  > [2단계] 데이터 처리 하기
    
- Part 3. Python 사용자 정의 함수(UDF)를 만들어서 데이터 처리하기 

</td>
    <td>  https://youtu.be/OCYET0rw-1E  </td>
</tr>


<tr>
    <td> 7 </td>    
    <td width="150px" nowrap  > [3단계] BeeAI에서 학습 모델 생성하기 

- Part 1. SparkML과 AutoML 을 이용한 머신러닝 모델 학습
- Part 2. 텐서플로우를 이용한 딥러닝 모델 학습
    
    </td>
    <td>  https://youtu.be/1mLCnIwaj6w   </td>
</tr>


<tr>
    <td> 8 </td>    
    <td width="150px" nowrap  > [4단계] BeeAI에서 모델 서빙하기
    
-  Part 1. 머신러닝 모델 스트림 서빙 실습

-  Part 2. 텐서플로우 서빙과 BeeAI 서빙

-  Part 3. 사전학습된 텐서플로우 딥러닝 모델 서빙하기

  </td>
    <td>   https://youtu.be/ttZlaDULmrs   </td>
</tr>

<tr>
    <td> 9 </td>    
    <td width="150px" nowrap  > [4단계] BeeAI에서 모델서빙하기
     
- Part 4. 딥러닝 모델 온디맨드 서빙/ 스트림 서빙 실습 
- Part 5. 융합 서빙 

    </td>
    <td>   https://youtu.be/cU2GAJh171w    </td>
</tr>


<tr>
    <td> 10 </td>    
    <td width="150px" nowrap  > 전주기 개발실습 </td>
    <td>   https://youtu.be/10YF75jVZj0    </td>
</tr>



</table>


## KSB AI Framework 관련 웹사이트
- KSB AI Framework 다운로드 사이트 
  - <https://etrioss.kr/ksb/kaf>
- KSB AI Framework 네이버 카페
  - <https://cafe.naver.com/ksbeeai>
- KSB AI Framework 오픈소스포털
  - <https://oss.etri.re.kr/>