• 검색 결과가 없습니다.

D.I.Y : 머신러닝 교육을 위한 블록 기반 프로그래밍 플랫폼 이세훈

N/A
N/A
Protected

Academic year: 2021

Share "D.I.Y : 머신러닝 교육을 위한 블록 기반 프로그래밍 플랫폼 이세훈"

Copied!
2
0
0

로드 중.... (전체 텍스트 보기)

전체 글

(1)

한국컴퓨터정보학회 하계학술대회 논문집 제28권 제2호 (2020. 7)

245

● 요 약 ●

본 논문에서는 블록형 코딩 방식을 통해 비전공자가 스스로 머신러닝의 쉽게 원리를 구현해 볼 수 있는 딥아이( D.I.Y, Deep AI Yourself) 플랫폼을 제안하였다. 딥아이는 구글의 오픈 소스 블록형 코딩 툴 개발 라이브러리인 Blockly를 기반으로 머신러닝 알고리즘을 쉽게 구현할 수 다양한 블록으로 구성되어 있다.

Blockly는 CSR 기반이며 사용자가 개발한 블록 코드는 내부적으로 코드 생성기에 의해 파이썬 코드 등으로 변환되어 백엔드 서버에서 처리를 하며 결과를 사용자에게 제공한다.

키워드: 블록클리(Blockly), 블록형 코딩(Block-type Coding), 머신러닝실습(Machine Learning Practice)

D.I.Y : 머신러닝 교육을 위한 블록 기반 프로그래밍 플랫폼

이세훈*, 정지현*, 이진형O, 조천우*

O인하공업전문대학 컴퓨터시스템공학과,

*인하공업전문대학 컴퓨터시스템공학과

e-mail: seihoon@inhatc.ac.kr*, jeongjh@itc.ac.kr*, ljh8390@naver.comO, cwjo@itc.ac.kr*

D.I.Y : Block-based Programming Platform for Machine Learning Education

Se-hoon Lee*, Ji-hyun Jeong*, Jin-hyeong LeeO, Cheon-woo Jo*

ODept. of Computer Engineering, INHA Technical College,

*Dept. of Computer Engineering, INHA Technical College

I. Introduction

최근 4차산업혁명의 핵심 기술인 인공지능에 대한 관심도가 급증함 에 따라 머신러닝(Machine Learning) 등에 대한 교육을 전 국민에 받아야 하는 시대가 되어 IT 비전공자들을 위한 교육 플랫폼이 요구되 고 있다.

그러나 IT 비전공자들이 머신러닝을 배우고 구현해보기 위해 파이 썬 등의 프로그래밍 언어를 배우고 개발 환경을 설정하는 등의 과정에 서 매우 많은 준비 과정이 필요하게 되어 중도 포기하거나 배우려는 의지를 약화시키는 결과를 낳고 있다[1].

이러한 어려움을 해소하기 위해 교육용 블록형 코딩 툴로 Scratch, App Inventer, Ardublockly 등이 있으나, 머신러닝 알고리즘을 구현 하기 위한 블록형 코딩 툴은 미비하다.

이에 따라 본 논문에서는 IT 비전공자가 머신러닝 알고리즘을 쉽게 구현해 볼 수 있는 딥아이(D.I.Y) 플랫폼을 제안한다.

II. Design of the Platform

본 논문에서는 머신러닝을 블록으로 쉽게 개발하기 위한 딥아이 (D.I.Y) 플랫폼을 설계한다. 딥아이는 CSR(Client-Side Rendering) 인 구글 Blockly를 기반으로 한다. Blockly는 Scratch나 App Inventor와 같은 블록형 코딩 툴의 기반이 되는 라이브러리로서,

이를 활용하여 개발자가 원하는 방향으로 자유롭게 개발할 수 있어 확장성과 유연성이 높다는 장점이 있다[2].

제안하는 딥아이 아키텍처는 Fig. 1과 같다.

Fig. 1. Proposed System Architecture

사용자는 웹 브라우저에서 딥아이 블록을 통해 원하는 로직을 작성(drag&drop)한다. 작성된 블록은 실시간 생성기에 의해 문자열 로 생성이 되며 백엔드(Back-end) 서버에 전송되어 파이썬 코드로 변환되며 사용자는 블록과 생성된 코드를 동시에 확인할 수 있다.

(2)

한국컴퓨터정보학회 하계학술대회 논문집 제28권 제2호 (2020. 7)

246

Fig. 2. System Sequence Diagram

변환된 코드는 Fig. 2와 같이 서버 내에서 처리되어 최종적인 결과를 반환하는데, 이때 일반적인 로직 구성뿐만 아니라 머신러닝 개발 등 다양한 작업을 수행할 수 있도록 지원한다. 따라서 이러한 아키텍처에서는 이미지 처리 등을 위해 딥러닝 모델 학습시 GPU를 활용하여 처리할 수 있도록 하며 처리된 결과를 바탕으로 웹 상에서는 실시간으로 학습 결과와 그래프를 확인할 수 있도록 구성한다.

III. Experiment

딥아이(D.I.Y)를 이용해 블랙박스형 머신러닝 교육용 프로그램인 ML4Kids의 대표적인 예제인 학교가는 길과 타이타닉 생존 여부 예제를 바탕으로 모델 개발 과정을 실험하였다. 이때 D.I.Y에서 실험에 사용된 라이브러리는 Tensorflow에 내장된 고수준 API인 Keras이다.

Fig. 3.은 나이, 거리, 동행자 수를 바탕으로 등교방법을 예측한 모델이다.

Fig. 4.는 좌석등급, 탑승자 나이, 티켓 가격을 바탕으로 생존 여부를 분류한 모델이다.

이를 통해 블랙박스형 머신러닝 지도학습 프로그램을 D.I.Y 구현 가능함을 검증하였다.

Fig. 3. An Example of Journey to School

Fig. 4. An Example of Titanic

Ⅴ. Conclusions

본 논문에서는 IT비전공자들의 쉽게 머신러닝 알고리즘을 구현할 수 있는 블록 기반의 코딩 플랫폼을 개발하였다. 딥아이를 이용해 머신러닝 알고리즘의 기초인 선형회귀를 간단히 구현해보았다. 블록 을 통해 머신러닝 모델을 직관적으로 개발할 수 있음을 입증하였으며, 이는 추후 더 복잡한 모델을 구성해 나갈 수 있음을 시사한다. 향후 실시간 학습 결과를 UI에 구성할 수 있도록 하며, 분류 모델, 이미지 학습 등 더 복잡한 모델을 구성하는 연구를 진행할 예정이다.

REFERENCES

[1] A. Rao, A. Bihani and M. Nair, "Milo: A visual programming environment for Data Science Education,"

2018 IEEE Symposium on VL/HCC, Lisbon, 2018, pp.

211-215

[2] D. Weintrop, D. C. Shepherd, P. Francis and D. Franklin,

"Blockly goes to work: Block-based programming for industrial robots," 2017 IEEE B&B, Raleigh, NC, 2017, pp. 29-36

수치

Fig.  1.  Proposed  System  Architecture
Fig.  2.  System  Sequence  Diagram

참조

관련 문서

• 파이썬은 연산자와 동일한 결과를 산출하는 함수로서 특수 메소드의 정의를 허용한다.이 메소드들은 파이썬이 인식할 수 있도록 특별한

#define 에서 인자 사용 예제 compoundassign.c... 관계와

▪ 실세계의 객체에서 불필요한 부분을 제거하여 필요한 부분만을 간결하고 이해하기 쉬운 클래스 로 만드는 작업. ▪

temperature (Figure 14), control of bead shape during welding (Figure 6) to enhance interbead tempering or softening and specifying weld metal composition limitations (Figure

시장의 모든 강의들은 기본 R 코드 강의로 시작함 오롯이 tidyverse 만을 위한 전문 강의.

앙상블 학습의 일종이며 Bagging 방식을 통해 각각의 예측 모델(결정 트리)이 데이터 샘플링을 다르게 가져가 최종적 으로 모든 결정 트리의 예측을 결합함으로써

동 기한내 위반사항이 개선되지 않는 경우「사회적기업 육성법」제18조의 규정에 따라 사회적기업 인증이 취소될 수 있음을 알려드립니다... 동

○ 학생들이 인공지능의 머신러닝 기술에 대한 흥미와 재미를 느끼고 창의·융합적 사고와 문제 해결력을 배양할 수 있는 기계학습과 딥러닝 STEAM 프로그램 개발..