컴퓨터 프로그래밍 교육을 위한 딥러닝 수업 설계
Copyright ⓒ 2020 The Digital Contents Society
This is an Open Access article distributed under the terms of the Creative Commons Attribution Non-CommercialLicense(http://creativecommons.org/licenses/by-nc/3.0/) which permits unrestricted non-commercial use, distribution, and reproduction in any medium, provided the original work is properly cited.
초록
최근 4차 산업혁명 시대의 핵심 기술인 인공지능은 학생이 배워야 할 기본적인 학습역량이 되고 있다. 미국과 영국 등에서 인공지능을 위한 다양한 교육 연구가 진행 중이며 국내에도 초중등 학생을 위한 인공지능 교육 연구 사례가 시작되고 있다. 본 연구에서는 컴퓨터 관련 전공 학생 대상으로 4차 산업혁명에 필요한 인공지능 교육을 위해, 컴퓨터 프로그래밍 교육 중심 수업의 학습역량을 도출해 딥러닝 수업을 설계하였다. 파이썬과 numpy, matplotlib, 텐서플로의 기본 코딩, 인공지능과 딥러닝의 이해, 텐서플로로 인공신경망과 컨볼루션 신경망 구현으로 구성된 딥러닝 수업을 D 대학 전공자를 대상으로 실제 수업에 적용하여 학습역량의 효과성 검증을 위해 대응표본 t-검정으로 분석하였다. 분석 결과, 본 연구에서 제안한 딥러닝 학습역량이 사전·사후 검사 결과에서 의미 있는 차이가 있었다.
Abstract
Artificial intelligence, a core technology in the era of the fourth industrial revolution, has recently become a basic learning competency for students to learn. Various educational studies for artificial intelligence are underway in the United States and the United Kingdom, and cases of artificial intelligence education research for elementary and secondary students are also beginning in Korea. In this study, a deep learning lecture was designed by deriving the learning competencies of computer programming education-centered classes for artificial intelligence education required for the 4th industrial revolution for computer major students. The deep learning lecture consisting of coding on Python, numpy, matplotlib and tensorflow, understanding artificial intelligence and deep learning, and implementing artificial and convolutional neural networks with tensorflow is applied to the actual class of D-university. In order to verify the effectiveness of learning competency of the class, a paired samples t-test was used. As a result of the analysis, there was significant differences in the pre- and post-test results of the learning competencies of deep learning proposed in this study.
Keywords:
Artificial Intelligence, Deep Learning Education, Python, Tensorflow, Artificial Neural Network키워드:
인공지능, 딥러닝 교육, 파이썬, 텐서플로, 인공신경망Ⅰ. 서 론
인공지능(AI: Artificial Intelligence)이란 말이 대중화된 계기는 2016년 3월, 대한민국 서울에서 열린 이세돌과 알파고(alphago)와의 '구글 딥마인드 챌린지 매치'라는 바둑 대회다. 알파고는 한국의 프로 기사 이세돌을 상대로 바둑계의 예상을 깨고 승리해 전 세계를 놀라게 했다. 알파고는 1,202개 CPU와 176개 GPU를 갖춘 슈퍼컴퓨터와 프로 기사의 기보를 학습하는 지도학습((supervised learning)과 형세 파악 등 스스로 학습된 전략을 보강하는 강화학습(reinforcement learning) 방식의 딥러닝 프로그램으로 구성되었다[1]. 이 인간과 컴퓨터의 대국을 계기로 '인공지능'이라는 용어가 전 세계로 퍼졌으며, 일부에서는 미래에 고도로 발달한 인공지능이 우리 인류를 위협할 수 있다는 우려까지 낳기도 했다. 2010년 초반 독일의 인더스트리(industry) 4.0에서 출발해 2016년 스위스 다보스 포럼에서 의장인 클라우스 슈밥(Klaus Schuwab)에 의해 언급된 4차 산업혁명은 초연결(hyper-connectivity)과 초지능(super-intelligence) 사회에서 사물인터넷(IoT)과 빅데이터(big data), 클라우드 컴퓨팅(cloud computing), 자율주행, 인공지능 등의 기술이 주도하는 시대이다. 그중 가장 중요한 기술은 무엇보다도 인공지능이라고 할 수 있다. 즉 다양한 기술의 발전은 궁극적으로 인공지능의 한 부분으로 편입되고 있다. 예를 들어 사물인터넷으로 구축된 플랫폼으로부터 생성된 빅데이터는 인공지능 기술에 활용되어 여러 산업 분야에 활용되고 있다. 1950년, 앨런 튜링의 ‘생각하는 기계’[2]에서 시작되어 1956년 미국 다트머스(dartmouth) 대학의 학술대회에서 최초로 언급된 인공지능은 두 번의 침체기를 겪으면서도 기계학습(machine learning) 분야에서 발전을 거듭해 2010년 이후에는 자율주행, 음성인식, 자연어 번역, 이미지 인식과 생성 분야에 심층 신경망(DNN: Deep Neural Network)이 적용된 딥러닝(deep learning) 기술로 괄목한 만한 성과를 보이고 있다.
4차 산업혁명 시대의 인재양성에 필요한 역량으로 컴퓨팅 사고력과 함께 인공지능도 부각되고 있다. 4차 산업혁명 시대에서 인공지능은 선택이 아닌 필수적인 기술이 되고 있어 인공지능은 학생이 배워야 할 기본적인 학습역량이 되고 있다. 영국은 의회는 보고서를 통해 ‘모든 초등학생에게 인공지능에 관한 지식과 이해가 필수적이며 교과 과정에서 필수 부분이 되어야 한다’라고 보고[3]하고 있다. 미국에서는 컴퓨터과학 교사협회인 CSTA(Computer Science Teachers Association)는 AI4K12 보고서에서 K-12 학생의 인공지능 교육을 위한 국가적인 인공지능 교육 지침을 제시[4]하였다. 이처럼 인공지능 기술을 선도하고 있는 영국과 미국 등에서는 초등학교부터 인공지능 교육의 다양한 시도[5, 6, 7, 8]가 이루어지고 있으며, 학생들을 위한 인공지능 사이트가 개발되어 교육적으로 활용할 수 있도록 보급[9, 10, 11, 12]되고 있으나 우리나라에서 인공지능 교육의 관심과 구체적인 변화의 노력은 부족한 실정이다. 인공지능은 특정한 기술이 아니라 다양한 기술이 융합된 일종의 상위개념으로 4차 산업혁명을 주도하고 있으나, 현재 인공지능 내용이 공교육에 반영되지 못한 실정이며 인공지능이 공교육에 반영되기 위해서는 다양한 노력이 필요하다[13]. 이러한 노력의 하나로 초중등 소프트웨어교육과정에서 인공지능을 가르치기 위해 교육부는 2019년 11월, 교육대학원에 인공지능융합 교육과정을 개설해 향후 5년간 인공지능 교사 5천 명을 양성하기로 했다[14]. 우리나라에서 인공지능 교육 관련 수업 설계와 교육 운영 사례는 초중등 교육 분야에서 활발하다. 과학, 수학, 사회, 외국어 교육 등의 여러 교과목에서 인공지능의 교육적 활용 방안의 다양한 연구[15, 16, 17]가 주를 이루고 있는 가운데, 인공지능 개념보다 파이썬으로 인공지능 프로그램을 작성해보는 학습 모형을 개발하여 인공지능을 이해하도록 한 인공지능 프로그래밍 연구[18]와 블록 방식의 교육용 프로그래밍 언어를 활용한 인공지능 교육 연구[19], 초등학생을 대상으로 인공지능에서 다루는 개념을 언플러그드(unplugged) 활동으로 제시한 연구[20] 등도 찾아볼 수 있다. 또한, 인공지능의 이미지 인식에서 많이 활용되는 딥러닝 모델인 합성곱 신경망(CNN: Convolutional Neural Network) 학습원리 이해를 위한 보드게임 기반의 게이미피케이션 프로그램의 개발 연구[21]와 합성곱 신경망을 위한 교육 프로그램을 컴퓨팅 사고력(computational thinking) 요소 중심 모델을 토대로 딥러닝 교수학습 모델을 개발한 사례[22], 합성곱 신경망 적용을 위한 나무 이미지 모델 구축에 관한 사례 연구[23] 등도 있다.
대학의 공과대학에서는 인공지능 관련 강좌가 개설되고 있으나 전문대학이나 문과 학생을 위한 인공지능 관련 강좌는 많이 부족한 것이 현실이다. 이제 인공지능은 그 분야 전공자들의 전유물이 아니며 4차 산업혁명 시대를 사는 누구나가 알아야 할 지식이다. 대학의 컴퓨터 관련 학과는 바로 빅데이터와 딥러닝 기술의 인재양성을 위한 중요 학과다. 특히 대학의 컴퓨터 관련 전공자에게 주어진 문제를 명확히 이해하고 선정된 프로그래밍 언어로 문제 해결 과정을 학습하는 프로그래밍 교육과 함께 인공지능 교육은 무엇보다도 중요하다. 특히 4차 산업혁명 시대에 전문 프로그래머 역할을 할 2~3년제 대학생에게는 인공지능도 필수 역량이 되어야 한다. 대학 교육에서의 인공지능 역량은 인공지능과 딥러닝의 역할과 원리를 이해하고 딥러닝 구현 사례를 통해 딥러닝을 실무에 활용할 수 있는 프로그래밍 역량이라고 할 수 있다. 본 연구는 컴퓨터 관련 전공자에게 4차 산업혁명 시대를 위한 효율적인 컴퓨터 프로그래밍 교육을 위해 텐서플로 기반의 딥러닝 교육 내용을 연구하고 학습역량을 도출하여 딥러닝 수업 설계를 제안한다. 제안된 수업 설계를 직접 강좌에 적용하여 수업 전후의 의미 있는 성과를 검증하고자 한다.
Ⅱ. 컴퓨터 프로그래밍 교육을 위한 딥러닝 수업 설계
2-1 딥러닝 수업 설계
본 연구의 컴퓨터 프로그래밍 교육을 위한 딥러닝 수업은 4차 산업혁명 시대에 기술과 사회 변혁의 중심으로 각광받고 있는 파이썬 프로그래밍과 딥러닝 프로그래밍을 함께 수업하는 교육과정에 목표를 두고 설계되었다. 일반적으로 파이썬 프로그래밍의 선행학습 후 딥러닝 관련 교과목을 설계하는 것이 일반적이나 본 수업은 교육부의 사회맞춤형 산학협력 선도대학(LINC+) 육성사업의 ‘사회맞춤형 교육과정’이 시작되는 첫해의 특수성에 맞춰 2년제 학제 중 마지막 학기만이 운영되는 2019년 2학년 2학기의 ‘인공지능응용프로그래밍’ 교과목을 위해 설계되었다. 사회맞춤형 교육과정은 ‘지능형컴퓨팅’ 교육과정으로 4차 산업혁명의 핵심 기술인 인공지능과 딥러닝을 경험하고 이해하여 기본적인 딥러닝 프로그램의 구현까지를 목표로 하고 있다. 본 연구에서 제안하는 딥러닝 수업 설계는 자바와 C를 이수한 학생을 대상으로 데이터 분석과 머신러닝·딥러닝 분야에 효과적인 파이썬 언어를 약 6주간에 걸쳐 학습·이해하고, 나머지 9주간 인공지능과 딥러닝의 기본 개념을 학습하고 이론·수학적인 내용을 최대한 배제해 딥러닝 플랫폼 라이브러리인 텐서플로를 활용한 딥러닝 구현을 교육하기 위해 다음 내용을 중점으로 설계한 수업이다.
- • 딥러닝 준비를 위한 파이썬 문법 학습과 코딩
- • 4차 산업혁명의 핵심 기술인 주요 인공지능과 머신러닝·딥러닝의 기본 이해
- • 학생 수준에 맞춰 수리적인 이론과 구현은 배제하고 텐서플로 라이브러리 함수를 활용한 회귀와 분석의 구현
- • 딥러닝 플랫폼 라이브러리의 이해와 텐서플로 1.0과 2.0의 변화 이해
- • 아나콘다와 텐서플로를 설치하여 딥러닝 개발환경으로 주피터 노트북(jupyter notebook)을 활용
- • 텐서플로 고수준 API(Application Programming Interface)인 케라스(Keras)를 활용한 완전 연결층(fully connected layer)과 컨볼루션 인공신경망(CNN) 구현
현재 많이 활용되는 딥러닝 플랫폼인 딥러닝 프레임워크(framework)는 페이스북(facebook) 인공지능 연구팀이 개발한 파이토치(pytorch)와 구글에서 개발한 텐서플로(tensorflow), 캘리포니아 버클리 대학에서 개발한 카페(caffe), 몬트리올 대학에서 개발한 씨아노(theano) 등이 있다. 본 연구의 교육 수업에서는 딥러닝 라이브러리로 가장 인기 있고 대중화된 구글의 텐서플로를 사용한다. 텐서플로는 구글 브레인(brain) 팀에서 개발했으며 2015년 딥러닝 오픈 플랫폼으로 공개되어 현재 사용자 수가 가장 많은 인기 있는 딥러닝 라이브러리이다. 텐서플로는 C++로 개발되어 C++, R 등의 언어로 사용할 수 있으며, 현재 쉽고 강력한 파이썬 언어를 사용하면 텐서플로를 가장 효율적으로 활용할 수 있다. 여러 CPU 및 GPU, 데스크톱 및 모바일 등의 모든 플랫폼에서 사용할 수 있으며, 다양한 딥러닝 모델을 직접 작성할 수 있고 버전 2.0부터는 고수준 API인 케라스가 기본적으로 탑재되어 쉽고 빠르게 딥러닝 모델을 구현할 수 있다. 특히 케라스는 딥러닝 모델을 손쉽게 개발·활용할 수 있도록 직관적인 API를 제공하므로 비전문가에게도 적합하다. 직관적인 케라스 API의 사용으로 다층 퍼셉트론, 컨볼루션 신경망, 순환 신경망 그리고 이를 조합한 모델 등 다중 입력이나 다중 출력 등의 다양한 구성이 가능하다.
본 연구에서는 파이썬 프로그래밍과 인공지능의 전반적 이해를 기반으로 딥러닝 구현을 목표로 하는 딥러닝 수업에서의 학습역량을 첫 번째, 파이썬 문법 학습과 프로그래밍 구현(PYGM: PYthon ProGramming), 두 번째, 인공지능과 딥러닝의 이해(USAI: UnderStand AI), 그리고 마지막 세 번째로 텐서플로를 활용한 딥러닝 모델 구현(IDNT: Implementation of Deep Neural network with Tensorflow)으로 설정하였다. 본 딥러닝 수업의 교육 목표를 달성하기 위해 수강생이 학습해야 할 자세한 학습역량은 다음과 같다.
본 수업을 수강하는 학생은 이미 자바와 C는 배웠으나 딥러닝 프로그래밍의 언어인 파이썬을 처음 접하는 학생이 대부분이다. 그러므로 본 수업은 가장 먼저 텐서플로를 활용한 딥러닝 구현을 위해 파이썬 프로그래밍 언어의 전반적 이해와 프로그래밍 구현 역량이 필요하다. 본 학습역량을 위해 6주를 계획하며 기본 파이썬 개발환경을 설치한 후 파이썬의 기본 문법을 이해하고 기초적인 구문을 구현할 수 있어야 한다. 간결하고 강력한 파이썬의 전반적 특징과 함께 인터프리터 언어를 이해하고, 파이썬의 자료형과 입출력 구문을 활용할 수 있어야 한다. 또한, 파이썬 모듈과 패키지를 이해하고 내부 모듈과 외부 패키지 라이브러리를 활용할 수 있어야 한다. 또한, 파이썬의 다양한 자료형, 조건문과 반복문, 파이썬의 대표적 자료구조인 리스트와 튜플, 딕셔너리와 집합을 이해하고 활용할 수 있어야 한다. 마지막으로 파이썬 함수의 이해를 바탕으로 함수를 정의해 활용하거나 내장 함수와 외부 패키지를 사용할 수 있어야 한다.
본 학습역량은 인공지능을 이해하고 머신러닝의 한 종류인 딥러닝을 이해하는 역량이다. 학생은 인공지능의 역사를 간략히 알아보고 머신러닝과 딥러닝의 차이를 이해하며, 딥러닝 라이브러리인 텐서플로에서 세션을 활용한 데이터플로 그래프(data flow graph)의 실행을 이해할 수 있어야 한다. 또한, 다음을 기초로 딥러닝 구현에 필요한 이론적인 내용을 알 수 있어야 한다.
- • 뉴런(neuron)과 퍼셉트론(perceptron)
- • 뉴런의 입력과 출력, 활성화 함수(activation function), 인공신경망(ANN: Artificial Neural Network)
- • 입력층과 중간층, 출력층으로 구성된 다층인공신경망(MLP: Multi Layer Perceptron)
- • 손실 함수(loss function)와 최적화(optimization) 과정
- • 분류(classification)와 회귀(regression)
본 학습역량은 수업의 핵심으로 인공지능과 인공신경망, 다층 신경망의 이해를 바탕으로 회귀와 분류를 직접 딥러닝 라이브러리 플랫폼인 텐서플로로 구현하는 능력이다. 가장 먼저 주피터 노트북을 위한 데이터 처리 및 딥러닝 개발환경을 구축할 수 있어야 한다. 그리고 기본적인 배열과 고차원 행렬 계산에 활용되는 numpy와 데이터 시각화를 위한 matplotlib를 구현할 수 있어야 한다. 또한, 딥러닝 라이브러리인 텐서플로를 사용해 기본적인 텐서(tensor) 연산을 생성하여 실행할 수 있어야 한다. 그리고 텐서플로 2.0에서 기본으로 지원하는 즉시 실행을 이해하고 고수준 API인 케라스(keras)를 활용해 딥러닝을 구현할 수 있어야 한다. 먼저 텐서플로 플랫폼으로 기본적인 심층 신경망 모델(DNN)을 만들어 간단한 일차함수의 회귀와 MNIST 손글씨 분류를 구현할 수 있어야 한다. 그리고 합성곱 신경망 모델(CNN)을 만들어 MNIST 손글씨 분류를 예측하는 프로그램을 구현할 수 있어야 한다. 특히 텐서플로 2.0이 2019년 9월에 발표되어 딥러닝 모델을 텐서플로 1.0과 2.0으로 각각 구현할 수 있어야 한다.
2-2 딥러닝 수업의 학기 일정
본 연구에서 설계한 컴퓨터 프로그래밍 교육을 위한 딥러닝 수업은 서울의 D 대학 2019년 2학기, 컴퓨터정보공학과 사회맞춤형 교육과정 ‘인공지능응용프로그래밍’ 강좌에서 운영되었다.
딥러닝 수업 설계에서 제안한 학습역량 PYPG, USAI, IDNT의 관계와 학습 내용은 표 1과 같다. 수업은 주당 3시간이며, 이론과 실습을 함께하고, 중간·기말시험 2주와 개인 포트폴리오 과제 및 팀 프로젝트 발표 2주 등 총 15주 일정으로 운영되었다. 13주에는 개인 과제인 포트폴리오 발표가 있으며 14주의 팀 프로젝트 경진대회에서는 팀별로 수행한 미니 프로젝트를 발표한다. 개인별 포트폴리오에서는 학생의 교과 학습에 대한 철학, 목표, 성취결과, 평가, 그리고 학습 증진을 위한 다양한 관련 서류 등을 준비해 발표하도록 한다. 포트폴리오는 교과 학습에 따른 모든 산출물을 정리할 수 있는 자료이며 학습 과정에서 자신을 성찰하는 기회로서의 의미가 있다. 경진대회는 수업에서 학습한 딥러닝 모델을 기반으로 약 3~4주에 수행할 수 있는 딥러닝 팀 프로젝트를 수행하는 과정이다.
Ⅲ. 수업 설계 검정 방법과 적용 결과
3-1 연구 대상과 도구
본 연구에서 설계한 딥러닝 수업의 학습역량 효과 검증을 위해 전공자를 대상으로 인공지능프로그래밍 교과목에서 설문을 시행했다. 수업은 2019년 2학기, 2학년 과정에서 30명으로 운영되었으며, 수업의 대응표본 t-검정을 위해 사전·사후 검사에 모두 참여한 학생은 총 26명이다. 수업을 이수한 학생의 학습역량 변화를 알아보기 위한 설문 문항의 주제와 내용은 다음 표 2와 같다.
본 딥러닝 교육의 학습역량인 ‘파이썬 문법 학습과 프로그래밍 구현’에 대해 5 문항, ‘인공지능과 딥러닝의 이해’의 5 문항, 그리고 ‘텐서플로를 활용한 신경망 딥러닝 모델과 컨볼루션 신경망 모델 구현’에 관해 5 문항으로, 총 15문항으로 구성되어 있다. 각 문항은 리커트 5점 척도로 ‘전혀 그렇지 않다’의 1점에서 ‘매우 그렇다’의 5점까지 평정한다.
3-2 파이썬 문법 학습과 프로그래밍 구현 역량 결과
본 수업에서 파이썬 문법 학습과 프로그래밍 구현 역량의 효과성을 파악하기 위해 참여자의 사전·사후 조사를 시행한 결과, 사전·사후 통계량과 사전·사후 검사 차이에 대한 대응표본 t-검정 결과는 표 3과 같다. 모든 학생이 이미 자바와 C 언어를 배웠으며 선행 수업에서 파이썬 언어의 장점을 들은 경험이 있으므로 대부분의 문항에서 사전 결과가 높게 나타났다. 특히 사전 조사에서 첫 항목인 간결하고 강력한 파이썬 언어의 장점에 대한 문항이 가장 높게 평가되었으며, 세 번째 문항인 파이썬의 내장 함수 range()를 사용한 반복 구문의 이해 문항이 사전 조사에서 최저인 1.96으로 조사됐다.
모든 역량의 사전·사후 검사에서 p < .05 수준의 통계적으로 유의미한 차이가 있었다. 즉 본 수업을 이수한 학생들의 파이썬 문법 학습과 프로그래밍 구현 역량이 향상되었음을 알 수 있다. 특히 사전·사후 차이가 가장 큰 PYPG-3의 결과(t = -8.83, p = .000)는 이미 반복 구문 개념을 알고 있으면서 파이썬의 함수인 range()를 사용하는 다양한 for 구문의 학습으로 역량이 향상된 것으로 파악된다.
3-3 인공지능과 딥러닝의 이해 역량 평가
본 수업에서 인공지능과 딥러닝의 이해 역량의 효과성을 파악하기 위해 사전·사후 조사를 시행한 결과, 사전·사후 통계량과 사전·사후 검사 차이에 대한 대응표본 t-검정 결과는 표 4와 같다. 인공지능과 딥러닝의 이해 역량의 사전 조사에서는 전반적으로 어느 정도 이해하고 있는 수준으로 문항 USAI-1의 역량이 2.19로 가장 낮았으며 문항 USAI-2의 역량이 2.54로 가장 높았다. USAI-1은 인공지능과 머신러닝, 딥러닝의 차이에 대한 이해 문항으로 다소 낮았으며, USAI-2는 딥러닝 기술의 체험으로 웹이나 스마트폰 앱에서 음성인식이나 번역 등에 대한 경험으로 다소 높게 평가되었다.
검증 결과, 모든 역량에 있어 사전·사후 검사 간 통계적으로 유의미한 차이가 있었다. 결과로 본 수업을 이수한 학생이 인공지능과 딥러닝의 이해 역량이 향상되었음을 알 수 있다. 대부분 사전과 사후 간 차이는 1.5 이상으로 명확하게 나타났다. 또한, 딥러닝 라이브러리인 텐서플로와 케라스 이해 역량 문항인 USAI-5의 교육 효과(Mean of diff.= -1.808)가 가장 크고, 나머지 문항에서는 비슷한 수준으로 향상되었음을 알 수 있다. 이는 중간고사 이후 딥러닝 라이브러리 텐서플로와 케라스의 구현 연습과 팀 프로젝트 수행으로 텐서플로와 케라스에는 어느 정도 익숙해진 결과로 보인다.
3-4 신경망 딥러닝 모델과 컨볼루션 신경망 모델 구현 역량 평가
본 수업에서 텐서플로를 활용한 신경망 딥러닝 모델과 컨볼루션 신경망 모델 구현 역량의 효과성 검증을 시행한 결과, 참여자의 사전·사후 조사 결과의 통계량과 사전·사후검사 차이에 대한 대응표본 t-검정 결과는 표 5와 같다. 신경망 딥러닝 모델과 컨볼루션 신경망 모델 구현 역량의 사전 조사에서 모두 1점대로 전반적으로 낮은 수준으로 문항 IDNT-4와 문항 IDNT-5가 각각 1.42, 1.46으로 낮았다. IDNT-4와 IDNT-5는 각각 인공신경망 ANN과 컨볼루션 신경망 DNN 구현 역량으로 딥러닝 학습의 핵심이다.
검증 결과, 모든 역량에 있어 사전·사후검사 간 통계적으로 유의미한 차이가 있었다. 수업을 이수한 학생이 텐서플로를 활용한 신경망 딥러닝 모델과 컨볼루션 신경망 모델 구현 역량이 향상되었음을 알 수 있다. 대부분 사전과 사후 간 차이는 2.0 이상으로 명확하게 나타났다. 특히 수리 계산과 배열 및 행렬 연산 라이브러리인 numpy와 정보 시각화 라이브러리인 matplotlib의 활용 역량 문항인 IDNT-1의 교육 효과(Mean of diff. = -2.577)가 가장 크고, 나머지 문항에서는 사전·사후 간 차이가 2.0 이상의 비슷한 수준으로 향상되었음을 알 수 있다. 다만 사후 평가에서 문항 IDNT-1 외의 모든 항목이 3.5를 다소 웃도는 수준으로 딥러닝 모델 구현 역량이 상대적으로 다른 역량보다 학생에게는 어렵게 느낀다고 볼 수 있다. 본 수업 설계에서 딥러닝 구현의 시간이 3~4주로 매우 부족한 것으로 보인다. 향후 딥러닝 수업 설계에서 딥러닝 구현 시간을 충분히 확보해야 할 것으로 보인다.
Ⅳ. 결 론
증기기관의 1차 산업혁명과 전기에너지, 대량 생산의 2차 산업혁명, 컴퓨터와 정보기술이 핵심인 3차 산업혁명을 거쳐 4차 산업혁명의 주역은 빅데이터와 인공지능이다. 4차 산업혁명은 사람과 사물, 공간을 연결해 산업 구조와 사회 체계에 혁신을 일으키는 시대[24]이다. 인터넷, SNS, 모바일 기기 등으로 의사소통의 매체와 산업간 융합이 디지털화되고 있는 4차 산업혁명 시대에는 디지털 리터러시(digital literacy)가 인간의 가장 중요한 핵심역량이 되었다. 즉 4차 산업혁명 시대 핵심 인력인 컴퓨터 전공자의 디지털 리터러시는 컴퓨터 코딩과 함께 인공지능의 이해와 인공신경망 프로그래밍 능력이 매우 중요한 핵심역량이다. 4차 산업혁명 시대에는 다양한 산업 기술의 융합되어 응용되고 있기 때문이다. 학문 분야로서의 인공지능이 아닌 여러 산업 분야에 널리 활용될 수 있는 인공지능의 이해와 다양한 오픈 플랫폼으로 서비스되는 신경망 기반 딥러닝 프로그래밍 교육은 이제 전공자는 물론 비전공자에게도 필요한 교육이다. 현재 국내에서 딥러닝 교육 사례 연구가 초등교육에서 시작되고 있으나, 대학의 컴퓨터 전공 학생을 위한 딥러닝 교육 사례 연구는 적은 편이며 2~3년제 전문대학에서는 미미한 실정이다.
본 연구는 컴퓨터 전공에서 파이썬 프로그래밍 교육과 함께 텐서플로와 케라스를 활용한 딥러닝 프로그래밍 수업 모델을 제안하고 제안된 수업을 직접 강좌에 운영하여 유의미한 학습 효과를 검증했다. 본 연구의 수업 대상자는 C나 자바 언어를 배운 ‘컴퓨터정보공학과’ 학생이며, 인공지능과 딥러닝은 기초적이고 개념 정도 이해하고 있는 학생이다. 본 연구에서 설계된 딥러닝 수업은 4차 산업혁명 시대가 요구하는 컴퓨터 프로그래밍 교육을 위해 파이썬 문법 학습과 프로그래밍 구현, 인공지능과 딥러닝의 이해, 텐서플로를 활용한 신경망 딥러닝 모델과 컨볼루션 신경망 모델 구현이라는 학습역량 향상에 목적을 두었다. 본 연구에서 설계된 수업 운영 전과 후 학생 역량의 변화를 검증하기 위해 ‘인공지능응용프로그래밍’ 수업에서 전공자 26명의 설문 검사로 대응표본 t-검정을 시행하였다. 연구 결과, 파이썬 문법 학습과 프로그래밍 구현(PYGM)와 인공지능과 딥러닝의 이해(USAI), 그리고 텐서플로를 활용한 딥러닝 모델 구현(IDNT) 부문의 학생 역량에서 통계적으로 유의미한 증가가 있어 학생 역량이 향상되었음을 알 수 있었다. 본 연구에서 설계된 딥러닝 수업 운영에서 의의와 시사점을 살펴보면, 본 수업은 인공지능과 딥러닝에 대한 피상적인 지식만 있는 대부분의 컴퓨터 전공 학생에게 파이썬 문법 학습과 함께 수리적인 이론을 배제한 딥러닝 프로그래밍 학습으로 기본적인 ANN과 CNN 프로그램이 가능하도록 했으며, 졸업 후 직·간접적으로 맞이할 수도 있는 딥러닝 관련 업무를 준비할 수 있는 교육의 성과가 있었다. 또한, 여러 딥러닝 라이브러리 중에서 본 수업 설계에서 텐서플로를 선택한 이유는 첫 번째는 텐서플로의 활용은 현재 가장 많이 활용되고 있는 딥러닝 라이브러리이기도 하지만 케라스의 고수준 API를 사용해 쉽고 빠른 구현이 가능하기 때문이다. 본 연구를 활용해 비전공자를 위한 한 학기 과정의 딥러닝 구현 수업 설계도 가능하다. 다만 컴퓨터 관련 전공자를 위한 교육과정으로는 파이썬 학습과 정보 시각화, 인공지능의 이해와 딥러닝 프로그래밍의 교육 내용을 주당 3시간의 수업으로 다루기에는 수업 시간이 매우 부족하다고 생각된다. 파이썬 프로그래밍과 데이터 분석을 선수과목으로 딥러닝 프로그래밍을 운영하는 것이 가장 이상적이라고 판단되며, 이를 위해 적어도 파이썬 프로그래밍과 인공지능 이해, 딥러닝 프로그래밍은 적어도 2개 이상의 교과목으로 나누어 개설돼야 할 것으로 보인다. 현재 효과적이고 체계적인 인공지능 및 딥러닝 교육에 관한 대학의 연구는 미비한 실정이며, 향후 수업 설계의 타당성 확보를 위해 전문가를 통한 수업의 내용 요소나 설계전략 연구와 함께 타 대학의 관련 교육과의 비교 연구를 통해 향상된 인공지능 딥러닝 수업을 확장·보완하고자 한다. 향후 딥러닝에 관한 다양한 수준의 수업이 개설되기를 기대한다.
Acknowledgments
본 연구는 2019년도 한국방송통신대학교의 학술연구비 지원으로 이루어진 연구로서, 관계부처에 감사드립니다.
References
- D. Silver, A. Huang, C. Madison, A. Guez, L. Sifre, G. Driesche, J. Schritwieser, I. Antonoglou, V. Panershelvam, M. Lanctot, S. Dieleman, D. Grewe, J. Nham, N. Kalchbrener, I. Sutskever, T. Lilicrap, M. Leach, K. Kavukcuoglu, T. Graepel1, and D. Hasabis, “Mastering the Game of Go with Deep Neural Networks and Tree Search”, Nature, Vol. 529, pp. 484-489, 2016. [https://doi.org/10.1038/nature16961]
- A. M. Turing, “Computing machinery and intelligence”, Mind, Vol. 59, pp. 433-460, 1950. [https://doi.org/10.1093/mind/LIX.236.433]
- House of Lords, AI in the UK: Ready, Willing and Able? :Report of Session 2017-19. Report, Great Britain. Parliament. Select Committee on Artificial Intelligence, 2018.
- CSTA, K-12 Guidelines for Artificial Intelligence: What Students Should Know, https://github.com/touretzkyds/ai4k12/wiki, , 2019.
- N. Borge, White paper - Artificial Intelligence to Improve Education Learning Challenges, International Journal Of Advanced Engineering & Innovative Technology, Vol. 2, No. 6, pp. 10-13, 2016.
- Francesc. P,, Miguel. S., Axel. R. and Paula. V. Artificial intelligence in education: challenges and opportunities for sustainable development, Unesco Report for Education 2030, 2019.
- W. Holmes, M. Bialik, and C. Fadel, Artificial Intelligence In Education Promises and Implications for Teaching and Learning, The Center for Curriculum Redesign Report, 2019.
- W. C. Jeon, “A Study on the Current Status of Artificial Intelligence Education in Each Country”, Review of Korean society for internet information, Vol. 18, No. 1, pp. 13-18, 2017.
- AI for Kids. (2019). Retrieved November, 2019. https://www.aisingapore.org/in-dustryinnovation/ai4k
- AI4ALL, Available: http://ai-4-all.org
- AI4children, Available: https://www.ai4children.org
- Machine Learning for Kids, Available: https://machinelearningforkids.co.uk
- W. C. Jeon, “A Study on the Plan to Activate Programming Education in the Age of Artificial Intelligence”, Review of Korean society for internet information, Vol. 18, No. 1, pp. 33-38, 2017.
- http://www.edupress.kr/news/articleView.html?idxno=4452
- S. H.. Kim, S. H. Kim, and H. C. Kim, “Analysis of International Educational Trends and Learning Tools for Artificial Intelligence Education”, The Korean Association of Computer Education, Vol. 23, No. 2, pp. 25-28, 2019.
- J. H. Lee and N. Her, “A study on the relationship between artificial intelligence and change in mathematics education”, J. Korea Soc. Math. Ed. Ser. E: Communications of Mathematical Education, Vol. 32, No. 1, pp. 23-36, 2018.
- S. K. Shin, “Designing the Instructional Framework and Cognitive Learning Environment for Artificial Intelligence Education through Computational Thinking”, Journal of The Korean Association of Information Education, Vol. 23, No. 6, pp. 639-653, 2019. [https://doi.org/10.14352/jkaie.2019.23.6.639]
- K. S. Kim and Y. G. Park, “A Development and Application of the teaching and learning model of Artificial Intelligence Education for Elementary Student”, Journal of The Korean Association of Information Education, Vol. 21, No. 1, pp. 137-147, 2017. [https://doi.org/10.14352/jkaie.21.1.137]
- Y. H. Lee, “An Analysis of the Influence of Block-type Programming Language-Based Artificial Intelligence Education on the Learner's Attitude in Artificial Intelligence”, Journal of The Korean Association of Information Education, Vol. 23, No. 2, pp. 189-196, 2019. [https://doi.org/10.14352/jkaie.2019.23.2.189]
- Y. J. Jang, Development of unplugged education program for elementary school AI classes, Master Thesis. Seoul National University of Education, 2019.
- J. S. Kim and N. J. Park, “Development of a board game-based gamification learning model for training on the principles of artificial intelligence learning in elementary courses”, Journal of The Korean Association of Information Education, Vol. 23, No. 3, pp. 229-235, 2019. [https://doi.org/10.14352/jkaie.2019.23.3.229]
- M. Y. Ryu and S. K. Han, “AI Education Programs for Deep-Learning Concepts”, Journal of The Korean Association of Information Education, Vol. 23, No. 6, pp. 583-590, 2019. [https://doi.org/10.14352/jkaie.2019.23.6.583]
- J. E. Choi and H. S. Yong, “Deep Learning Based Tree Recognition rate improving Method for Elementary and Middle School Learning”, Journal of the Korea Society of Computer and Information, Vol. 24, No. 12, pp. 9-16, 2019.
- Samsung Newsroom, https://url.kr/Ccgn3s
저자소개
1991년 : 서울대학교 대학원 (이학석사)
2002년 : 서울대학교 대학원 (공학박사수료-컴퓨터그래픽스)
1992년~1998년: 삼성에스디에스
1998년~현 재: 동양미래대학교 컴퓨터정보공학과 교수
※관심분야:컴퓨터교육, 객체지향, 프로그래밍언어
1991년 : 서울대학교 대학원 (이학석사)
1998년 : 서울대학교 대학원 (이학박사-소프트웨어 공학)
2004년~현 재: 한국방송통신대학교 전산과학과 교수
※관심분야:컴퓨터교육, 소프트웨어 공학