Commit be5a1be0 authored by TAE HWAN KIM's avatar TAE HWAN KIM
Browse files

Update README.md

parent 2d619d0a
Pipeline #810 canceled with stages
# ksb19.03-manual
# BeeAI: KSB 인공지능 프레임워크
## 소개
![개념도](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) 모델 학습과 서빙 프로세스 일원화
BeeAI에 대한 보다 자세한 설명은 아래 문서를 참조하세요.
<https://csleoss.etri.re.kr/kor/sub01_05.do>
## 가입절차
BeeAI를 다운받기 위한 절차는 다음과 같습니다.
#### ETRI 외부 클라우드 저장소 회원가입
- <https://oss.etri.re.kr/> 접속 후 "외부 클라우드 저장소" 클릭 (아래 그림 참조)
![ETRI 오픈소스포털](images/oss.etri.re.kr.png)
- 외부 클라우드 저장소 회원가입 (아래 그림 참조). 회원 가입시의 "Full name"과 "Username"은 아래 "<b>권한요청 Email 발송</b>"에서 필요함.
![ETRI 외부 클라우드 저장소 가입](images/etri.external.git.png)
#### 권한요청 Email 발송
가입시의 "Full name"과 "Username"을 포함하는 메일을 작성하여 발송합니다 (아래 참조).
- Email 제목: KSB KAF Git Repository 접근승인요청
- Email 수신처: dwk@etri.re.kr
- 내용: 반드시 "Full name"과 "Username"을 포함하여야 하며, 기타 내용은 자유양식으로 작성
담장자 (dwk@etri.re.kr) 부재시, 추가 Email 수신처는 아래와 같습니다.
- kanghj@etri.re.kr
- leeyh@etri.re.kr
발송된 권한요청 Email은 담당자에 의해 수동으로 확인됩니다. 담당자가 부재 중이 아닐 경우, 빠른 확인 후 권한요청 승인에 대한 답변이 이메일로 발송됩니다.
#### 다운로드
권한요청 승인 답메일을 받은 후에는, 아래의 명령어를 이용하여 BeeAI를 다운로드할 수 있습니다.
<pre>
<code>git clone http://211.43.13.21/ksb/kaf</code>
</pre>
처음으로 다운로드할 경우, 가입시 이용한 사용자 ID ("Username")와 암호 ("Password")를 입력합니다.
#### 업데이트
BeeAI가 업데이트된 경우, 아래 명령어를 이용해 업데이트된 파일만 받을 수 있습니다.
<pre>
<code>git pull http://211.43.13.21/ksb/kaf</code>
</pre>
#### 참고
동일한 BeeAI를 <https://csleoss.etri.re.kr/kor/sub02_04.do> 사이트에서 별도의 회원 가입 후, "2. KSB 인공지능 프레임워크 (오픈소스 및 바이너리 파일)"를 통해서도 다운로드 받을 수 있습니다. <b>주의</b>: 이 방법으로 다운을 받으면, BeeAI가 업데이트 되었을 경우 전체파일을 새로 받아야 합니다.
## 설치
다운받은 BeeAI를 설치하기 위해서는 다음과 같은 과정이 필요합니다.
- BeeAI 설치
- [csle 사용자 계정 생성하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-csle-%EC%82%AC%EC%9A%A9%EC%9E%90-%EA%B3%84%EC%A0%95%EA%B6%8C%ED%95%9C-administrator-%EC%83%9D%EC%84%B1%ED%95%98%EA%B8%B0)
- [hostname을 csle1으로 변경하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-hostname%EC%9D%84-csle1%EC%9C%BC%EB%A1%9C-%EB%B3%80%EA%B2%BD%ED%95%98%EA%B8%B0)
- [/etc/hosts 수정하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-etchosts-%EC%88%98%EC%A0%95%ED%95%98%EA%B8%B0)
- [openjdk-8 설치하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-openjdk-8-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0)
- [KSB 관련 프로그램 설치하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-ksb-%EA%B4%80%EB%A0%A8-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0)
- [SSH port 변경 및 SSHD config 수정하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-ssh-port-%EB%B3%80%EA%B2%BD-%EB%B0%8F-root-%EB%A1%9C%EA%B7%B8%EC%9D%B8-%EA%B0%80%EB%8A%A5%ED%95%98%EB%8F%84%EB%A1%9D-sshd-config-%EC%88%98%EC%A0%95%ED%95%98%EA%B8%B0)
- [SSH config 수정하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-ssh-config-%EC%88%98%EC%A0%95%ED%95%98%EA%B8%B0-known_hosts%EC%97%90-%ED%98%B8%EC%8A%A4%ED%8A%B8-%EC%A0%80%EC%9E%A5-%EC%A7%88%EB%AC%B8%EC%9D%84-%ED%95%98%EC%A7%80-%EC%95%8A%EB%8F%84%EB%A1%9D-%EC%84%A4%EC%A0%95)
- [Hadoop 2.7.3 설치하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-hadoop-273-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0)
- [spark-2.3.0-bin-hadoop2.7 설치하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-spark-230-bin-hadoop27-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0)
- [hbase 1.2.4 (optional) 설치하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-hbase-124optional-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0)
- [kafka 2.11-0.10.0.1 (optional) 설치하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-kafka-211-01001optional-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0)
- [zookeeper 3.4.9 (optional) 설치하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-zookeeper-349optional-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0)
- [bashrc 설정 추가하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-bashrc-%EC%84%A4%EC%A0%95-%EC%B6%94%EA%B0%80%ED%95%98%EA%B8%B0)
- [Anaconda3 설치하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-anaconda3-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0)
- [기타 라이브러리 설치하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-%EA%B8%B0%ED%83%80-%EB%9D%BC%EC%9D%B4%EB%B8%8C%EB%9F%AC%EB%A6%AC-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0)
- [tensorflow 설치하기 (cpu 버전)](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-tensorflow-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0-cpu%EB%B2%84%EC%A0%84)
- [KSB 툴박스 파일 설치하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-ksb-%ED%88%B4%EB%B0%95%EC%8A%A4-%ED%8C%8C%EC%9D%BC-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0)
- [ksb-csle config 파일 설정하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-ksb-csle-config-%ED%8C%8C%EC%9D%BC-%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0)
- [startService.<span/>sh, stopService.<span/>sh 생성하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-startservicesh-stopservicesh-%EC%83%9D%EC%84%B1%ED%95%98%EA%B8%B0)
- [SSH 키 복사하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-ksb-%ED%88%B4%EB%B0%95%EC%8A%A4-docker-%EC%9D%B4%EB%AF%B8%EC%A7%80%EB%82%B4-ssh-%ED%82%A4%EB%A5%BC-host-pc%EC%97%90-%EB%B3%B5%EC%82%AC%ED%95%98%EA%B8%B0)
- [Hadoop Hdfs 사용자 계정 추가하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-ksb-%ED%88%B4%EB%B0%95%EC%8A%A4-docker-%EC%9D%B4%EB%AF%B8%EC%A7%80%EB%82%B4-ssh-%ED%82%A4%EB%A5%BC-host-pc%EC%97%90-%EB%B3%B5%EC%82%AC%ED%95%98%EA%B8%B0)
- [KSB 지식베이스 엔진 설치하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html#host-pc-ksb-%ED%88%B4%EB%B0%95%EC%8A%A4-docker-%EC%9D%B4%EB%AF%B8%EC%A7%80%EB%82%B4-ssh-%ED%82%A4%EB%A5%BC-host-pc%EC%97%90-%EB%B3%B5%EC%82%AC%ED%95%98%EA%B8%B0)
- 웹툴킷 설치
- [DBMS 설치하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.4.HowToInstallKsbWebToolkit-1903.html#ksb-%EC%9D%B8%EA%B3%B5%EC%A7%80%EB%8A%A5-%ED%94%84%EB%A0%88%EC%9E%84%EC%9B%8C%ED%81%AC-dbms-postgresql-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0)
- [Apache Tomcat 설치하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.4.HowToInstallKsbWebToolkit-1903.html#apache-tomcat-%EB%8B%A4%EC%9A%B4%EB%A1%9C%EB%93%9C)
- [Google Chrome 설치하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.4.HowToInstallKsbWebToolkit-1903.html#%EA%B5%AC%EA%B8%80-chrome-%EB%B8%8C%EB%9D%BC%EC%9A%B0%EC%A0%80-%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0)
- [BeeAI 구동](https://csleoss.etri.re.kr/images/contents/manual_1903/1.4.HowToInstallKsbWebToolkit-1903.html#ksb-%EC%9D%B8%EA%B3%B5%EC%A7%80%EB%8A%A5-%ED%94%84%EB%A0%88%EC%9E%84%EC%9B%8C%ED%81%AC-%EA%B5%AC%EB%8F%99)
- [웹툴킷 설정 업데이트](https://csleoss.etri.re.kr/images/contents/manual_1903/1.4.HowToInstallKsbWebToolkit-1903.html#ksb-%EC%9B%B9%ED%88%B4%ED%82%B7-%EC%84%A4%EC%A0%95-%EC%97%85%EB%8D%B0%EC%9D%B4%ED%8A%B8)
- [Google Chrome 캐시 제거](https://csleoss.etri.re.kr/images/contents/manual_1903/1.4.HowToInstallKsbWebToolkit-1903.html#%EA%B5%AC%EA%B8%80-chrome-%EB%B8%8C%EB%9D%BC%EC%9A%B0%EC%A0%80%EC%97%90%EC%84%9C-%EC%BA%90%EC%8B%9C-%EC%A0%9C%EA%B1%B0)
- [회원 가입 기능 활성화](https://csleoss.etri.re.kr/images/contents/manual_1903/1.4.HowToInstallKsbWebToolkit-1903.html#ksb-%EC%9B%B9%ED%88%B4%ED%82%B7-%ED%9A%8C%EC%9B%90-%EA%B0%80%EC%9E%85-%EA%B8%B0%EB%8A%A5-%ED%99%9C%EC%84%B1%ED%99%94%EB%A5%BC-%EC%9C%84%ED%95%9C-%EC%84%A4%EC%A0%95)
#### 참고 문서
- BeeAI 설치
- <https://csleoss.etri.re.kr/images/contents/manual_1903/1.3.HowToInstallKsbFrameWork-1903.html>
- 웹툴킷 설치
- <https://csleoss.etri.re.kr/images/contents/manual_1903/1.4.HowToInstallKsbWebToolkit-1903.html>
## 처음 실행하기
BeeAI를 실행하기 위해 아래의 절차가 필요합니다.
- [툴박스 docker 컨테이너 실행하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.5.HowToRunFirst-1903.html#host-pc-ksb-%ED%88%B4%EB%B0%95%EC%8A%A4-docker-%EC%BB%A8%ED%85%8C%EC%9D%B4%EB%84%88-%EC%8B%A4%ED%96%89%ED%95%98%EA%B8%B0)
- [툴박스 docker 컨테이너 초기화하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.5.HowToRunFirst-1903.html#docker-%EC%BB%A8%ED%85%8C%EC%9D%B4%EB%84%88-ksb-%ED%88%B4%EB%B0%95%EC%8A%A4-docker-%EC%BB%A8%ED%85%8C%EC%9D%B4%EB%84%88-%EC%B4%88%EA%B8%B0%ED%99%94%ED%95%98%EA%B8%B0)
- [Ontology 로드하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.5.HowToRunFirst-1903.html#docker-%EC%BB%A8%ED%85%8C%EC%9D%B4%EB%84%88-ksb-base-ontology-%EB%A1%9C%EB%93%9C%ED%95%98%EA%B8%B0)
- [프레임워크 구동하기](https://csleoss.etri.re.kr/images/contents/manual_1903/1.5.HowToRunFirst-1903.html#docker-%EC%BB%A8%ED%85%8C%EC%9D%B4%EB%84%88-ksb-%EC%9D%B8%EA%B3%B5%EC%A7%80%EB%8A%A5-%ED%94%84%EB%A0%88%EC%9E%84%EC%9B%8C%ED%81%AC-%EA%B5%AC%EB%8F%99%ED%95%98%EA%B8%B0)
#### 참고 문서
https://csleoss.etri.re.kr/images/contents/manual_1903/1.5.HowToRunFirst-1903.html
## 예제실행
BeeAI가 제대로 작동하는지 확인하기 위해 "배치방식으로 데이터 처리하기" 예제를 실행해 봅니다.
##### 배치방식으로 데이터 처리하기 (KMeansExample)
이 예제에서는 KMeans를 이용하여 입력자료를 분류합니다. 실행절차는 아래와 같습니다.
- [입력 데이터 준비하기](https://csleoss.etri.re.kr/images/contents/manual_1.0/2.5.2.KMeansExample.html#%EC%9E%85%EB%A0%A5-%EB%8D%B0%EC%9D%B4%ED%84%B0-%EC%A4%80%EB%B9%84%ED%95%98%EA%B8%B0)
- [워크플로우 생성하기](https://csleoss.etri.re.kr/images/contents/manual_1.0/2.5.2.KMeansExample.html#%EC%9B%8C%ED%81%AC%ED%94%8C%EB%A1%9C%EC%9A%B0-%EC%83%9D%EC%84%B1%ED%95%98%EA%B8%B0)
- [엔진선택](https://csleoss.etri.re.kr/images/contents/manual_1.0/2.5.2.KMeansExample.html#%EC%97%94%EC%A7%84-%EC%84%A0%ED%83%9D)
- [Reader](https://csleoss.etri.re.kr/images/contents/manual_1.0/2.5.2.KMeansExample.html#reader)
- [Writer](https://csleoss.etri.re.kr/images/contents/manual_1.0/2.5.2.KMeansExample.html#writer)
- [Controller](https://csleoss.etri.re.kr/images/contents/manual_1.0/2.5.2.KMeansExample.html#controller)
- [Runner](https://csleoss.etri.re.kr/images/contents/manual_1.0/2.5.2.KMeansExample.html#runner)
- [Operator](https://csleoss.etri.re.kr/images/contents/manual_1.0/2.5.2.KMeansExample.html#operator)
- [워트플로우 실행하기](https://csleoss.etri.re.kr/images/contents/manual_1.0/2.5.2.KMeansExample.html#%EC%9B%8C%ED%81%AC%ED%94%8C%EB%A1%9C%EC%9A%B0-%EC%8B%A4%ED%96%89%ED%95%98%EA%B8%B0)
- [워크플로우 모니터링하기](https://csleoss.etri.re.kr/images/contents/manual_1.0/2.5.2.KMeansExample.html#%EC%9B%8C%ED%81%AC%ED%94%8C%EB%A1%9C%EC%9A%B0-%EB%AA%A8%EB%8B%88%ED%84%B0%EB%A7%81-%ED%95%98%EA%B8%B0)
- [결과 확인하기](https://csleoss.etri.re.kr/images/contents/manual_1.0/2.5.2.KMeansExample.html#%EA%B2%B0%EA%B3%BC-%ED%99%95%EC%9D%B8%ED%95%98%EA%B8%B0)
#### 참고 문서
<https://csleoss.etri.re.kr/images/contents/manual_1.0/2.5.2.KMeansExample.html>
## BeeAI 관련 웹사이트
- BeeAI 홈페이지
- <https://csleoss.etri.re.kr>
- BeeAI 네이버 카페
- <https://cafe.naver.com/ksbeeai>
- ETRI 오픈소스포털
- <https://oss.etri.re.kr/>
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment