Anúncio

Spiral 모델 기반 실무 AI 교육.pdf

21 de Mar de 2023
Anúncio

Mais conteúdo relacionado

Similar a Spiral 모델 기반 실무 AI 교육.pdf(20)

Último(20)

Anúncio

Spiral 모델 기반 실무 AI 교육.pdf

  1. Spiral 모델 기반 실무 AI 교육 김명호 인천재능대학교 교수 enkiluv@jeiu.ac.kr
  2. About Me KAIST 전산학과 졸업, 공학박사 동아대학교 컴퓨터공학과 교수 (10½년) 한국마이크로소프트 최고기술임원/NTO/상무 (13 ½년) 중앙대학교 소프트웨어학부 교수 (4 ½년) 인천재능대학교 AI학부 교수 (2022.3-)
  3. 주요 내용 실무 AI 교육 vs. 이론 AI 교육 실무 AI 교육을 위한 Spiral Learning Model JAIBC (JEIU AI Base Camp) 사례  교육 과정과 교재  교육 내용  주요 성과 맺는 말
  4. 실무 AI 데 이 터 분 석 능 력 인 공 지 능 개 념 이 해 데 이 터 가 공 처 리 관 리 능 력 인 공 지 능 적 용 예 측 모 델 적 용 능 력 관 련 도 메 인 데 이 터 수 집 및 처 리 현 장 문 제 에 인 공 지 능 기 술 종 합 적 적 용 능 력
  5. Intel AI for Future Workforce (AI4FW)
  6. Intel AI4FW의 세부 구성 산업 교육 산업 관련 고용주에 대한 시뮬레이션 교육 고용주와 협력하지 않는 학생을 위한 시뮬레이션 교육 산업 관련 샘플 프로젝트 AI for Education 샘플 프로젝트(교육기관 제공) 39. 실전 교육 (4 개월) 2. 쉬운 AI (1 시간) 3. AI 안에 무엇이 있는가? (1 시간) 5. 포용적 AI (1 시간) 6. AI 목표 설정 (1 시간) 24. NLP를 위한 데이터 수집 및 처리 (8시간) 25. NLP 분류 (8시간) 26. 챗봇 만들기 (8시간) NLP³ (28h) 27. 예제: 호텔 챗봇 (4시간) 산업에서의 AI– Part 2 (코딩 접근법) (24시간) 9. Python 소개 (3 시간) 13. 디자인 사고 (4 시간) 14. 시스템 사고 (3 시간) 15. 기업가 정신 (4시간) 11. AI 산업 응용 프로그램 (24시간) 8. AI 산업 응용 프로그램 (9 시간) 7. AI 프로젝트 사이클 소개 (1.5 시간) 산업에서의 AI– Part 1 (No-Code) (10.5 시간) 10. Python 함수 및 패키지 (NumPy, Pandas, Scikit Learn) (4 시간) 프로그래밍 기초 (7 시간) 29. AI 윤리 (2h) 30. AI 프로젝트 함정 (4시간) 28. 사회적 감정 기술 (3시간) 습득한 지식을 적용하여 3가지 실제 문제 중 최소 2가지를 해결 (AI 프로젝트 사이클에 따라) 자신이 선택한 알고리즘과 라이브러리를 사용하여 AI 솔루션 구축 36. 솔루션 구축 1 건강 기술용 AI 솔루션 구축 (예: 피트니스 트래킹) 37. 솔루션 구축 2 기업의 예측을 돕는 AI 솔루션 구축 (예: 가격 예측, 재고 수준) 38. 솔루션 구축 3 가치 대상 식별을 위한 AI 솔루션 구축 (예: 육안 검사/ 분류) 17. 데이터 가져오기 및 처리 (8시간) 16. ML/DL 기술 (SL, UL, RL포함) (4 시간) 18. 통계 데이터 연습을 위한 AI (16시간) 19. 예제: 대출 승인 예측 (4시간) • 예측 유지 보수 (1.5 시간) • 이미지 분류 (1.5 시간) • 바이럴 포스트 예측 (1.5 시간) • 직원 감소 예측 (1.5 시간) • 보험 사기 탐지 (1.5 시간) • 품질 보증 시스템 (1.5 시간) 고급 수준 5. 랜덤 포레스트를 사용한 보험 사기 탐지 6. 인공 신경망을 사용한 이미지 이상치 탐지 중급 수준 3. K-Means를 사용한 소셜 미디어 바이럴리티 예측 4. 선형회귀를 사용한 직원 감소 예측 초급 수준 1. 선형 회귀를 사용한 예측 유지 관리 2. KNN 모델을 이용한 장바구니 추천 시스템 33. 고객만족도 향상을 위한IoT (4시간) 31. IoT 구현 소개 (8시간) 22. OpenVINO 및 NCS2를 이용한 추론 모델 유형 (8시간) 20. 컴퓨터 비전의 기본 기술 (8시간) 21. 전통적 컴퓨터 비전에서 AI까지 (8시간) 통계 데이터³ (28시간) 34. Intel® RealSense 작업 (8시간) Computer Vision³ (28h) IoT (1/2, 16시간) IoT (2/2, 8시간) 23. 예제: 폐렴 감지 (4시간) 35. Intel® oneAPI를 이용한 솔루션 개발 (8시간) 1. OneAPI 데이터 분석 라이브러리 2. OneAPI 심층 신경망 라이브러리 4. AI 받아들이기 (1 시간) 1. 새로운 기술– AI (1 시간) 인식 (6 시간) 기초 (50 – 57 시간) 경험 (41 – 129 시간) 캡스톤 (24시간) 실전 교육 (4 개월+) 솔루션 구축 (24시간) 32. 운영 효율성 향상을 위한IoT (4시간) 12. 배포: 시각화 (대시보드) (4 시간)
  7. 이론 AI 기초 프로그래밍 (파이썬 등) 기반 이론 (수학, 통계, 알고리듬) 도구 플랫폼 문제 도메인
  8. 실무 AI 교육을 위한 변형 피라미드 모델 ??
  9. Spiral Learning Model 문제해결 수단으로 AI 활용법을 학습하기 위하여 1. 문제 중심으로 사고하도록 하고, 2. 필요한 시점에 필요한 만큼의 이론과 도구를 익히고 사용하며, 3. 점진적으로 확대하며 반복 학습 !!
  10. Spiral Learning Model 대충 조금만 배우자는 것이 아니라 피라미드식 교육과는 다른 순서와 방법을 사용, 더 효과적으로 배우자는 것 정교한 교육과정과 이를 뒷받침하는 교재가 함께 고려되지 않으면 달성하기 어려움
  11. JAIBC: JEIU AI Base Camp AI/SW 전문가 양성 특별 프로그램  실전에 강한 실무 전문가 양성 목표  {소프트웨어 + 머신러닝}에 공히 능숙한 문제해결사 AI Base Camp  교수/조교/외부전문가로 구성된 셰르파의 체계적 지원  기숙형 몰입 교육 2022년 현재 3명의 우수 인재 참여 중
  12. JAIBC 교육과정 AI 학부 교과를 보완  선행교과를 고려하여 진도 차질이 발생하지 않게 설계 주요 교과  ABC: AI Bootcamp (AI부트캠프)  HAP: Hands-On AI Project (핸즈온AI프로젝트)  PAP: Practical AI Project (실전AI프로젝트) 구분 1학기 2학기 3학기 4학기 AI학부 IT/SW개론 프로그래밍기초 프로그래밍 I 웹 기초 AI/ML개론 프로그래밍 II 자료구조와 알고리즘 모바일&앱 개발 데이터베이스기초 AI/ML심화 웹 심화 프론트엔드 개발 백엔드 개발 모바일 프로그래밍 인턴십 JAIBC ABC I Low Code 기반 HAP I 시각/언어/음성 PAP I ML-x 융합 프로젝트 AI실무인턴십 조기 취업 ABC II Python 기반 HAP II 복합 ML 프로젝트 PAP II 풀스택 ML 프로젝트
  13. ABC (AI Bootcamp) I, II 사례 ABC I ABC II 목적 프로그래밍 경험이 거의 없는 학생들의 폭넓은 AI/ML 체험 프로그래밍 활용, ABC I의 내용을 섬세하게 실현 구현 ½ 학기 동안 AutoML* 활용, 기본 지식 신속 학습 나머지 ½ 학기 동안 이론 강화, Python 활용 ABC I 심화 학습 Spiral-&-Sequential * FLAML/PyCaret, Auto-Keras
  14. ABC Curricula ABC I ABC II 주차 강의내용 주차 강의내용 1 (01) 인공지능과 머신러닝 9 (01) 프로그래밍 기반 머신러닝 (02) 머신러닝 워크플로우 (02) 다차원 배열과 Numpy 2 (03) 데이터 처리와 피처 공학 10 (03) 데이터 시각화와 matplotlib (04) 분류문제를 위한 머신러닝 1 (04) 통계적 특성과 seaborn 3 (05) 분류문제를 위한 머신러닝 2 11 (05) 데이터 조작/분석과 Pandas (06) 회귀문제를 위한 머신러닝 1 (06) 머신러닝과 Scikit-Learn (1) 4 (07) 회귀문제를 위한 머신러닝 2 12 (07) 머신러닝과 Scikit-Learn (2) (08) 중간고사 (08) 중간고사 5 (09) 군집화 문제를 위한 머신러닝 13 (09) 인공신경망과 퍼셉트론 (10) 이상치탐지 문제를 위한 머신러닝 (10) 딥러닝과 MLP, Tensorflow/Keras 6 (11) 차원축소 문제를 위한 머신러닝 14 (11) 이미지와 CNN (1) Vanilla CNN (12) 머신러닝을 활용한 이미지 분류 (12) 이미지와 CNN (2) Transfer Learning 7 (13) 머신러닝을 활용한 자연어 처리 15 (13) 시퀀스와 RNN/LSTM (1) 텍스트, 악보 (14) 머신러닝을 활용한 시계열 분석 (14) 시퀀스와 RNN/LSTM (2) 시계열 예측 8 (15) 설명 가능한 인공지능 16 (15) 인공지능놀이터 문제 풀이 (16) 학기말고사 (16) 학기말고사
  15. ABC I, II 교재 Intel AI4FW 교재 기반 Vanilla AI4FW와의 차이점  모듈 8  No-Code를 AutoML 기반 Low-Code로 변경  예제를 분류/회귀/군집화 등 전형적인 머신러닝 문제들로 재구성  모듈 9를 초반으로 이동  모듈 11  모듈 8을 Python 코드로 재현  유연한 구조와 섬세한 튜닝 강조  모듈 16에서 딥러닝 이론/도구 설명  모듈 17-27(84시간 분량)에서 30시간 내용 선택 교육  TensorFlow를 사용하도록 일관성 있게 예제 구성
  16. ABC에서 해결해본 문제들 ABC I ABC II 문제 문제유형 ML유형 문제 문제유형 ML유형 붓꽃 (Iris) 유형 분류 분류/통계 Classical MNIST 패션 데이터 분류 분류/이미지 Deep 보험 청구액 예측 회귀/통계 Classical X-ray 이미지로부터 폐렴환자 판별 분류/이미지 Deep 이상치 탐지와 군집화 비지도 Classical Transfer Learning 활용 이미지 분류 분류/이미지 Deep MNIST 손글씨 숫자, 패션 데이터 분류 분류/이미지 Deep 비트코인 가격 예측 회귀/시계열 Deep BBC 뉴스 유형 분류 분류/텍스트 Classical IMDB 텍스트 감성 분류 분류/텍스트 Deep IMDB 텍스트 감성 분류 분류/텍스트 Classical 음악 편곡 회귀/시퀀스 Deep 항공 승객 수 예측 회귀/시계열 Classical 객체 탐지 탐지/이미지 Deep 대기 품질 예측 회귀/시계열 Deep 편향성 고려 소득 예측* 분류/통계 Classical 직원 이탈 예측 분류/통계 Classical 뉴스기사 유형 분류* 분류/텍스트 Deep 보험사기 탐지 분류/통계 Classical 해양 침적 쓰레기 분류* 분류/이미지 Deep 피처중요도 기반 모델 및 예측 설명 XAI Both * NIPA 인공지능놀이터 문제
  17. 보험사기 탐지 예제 AutoML (FLAML) Decision Tree (Scikit-Learn) Random Forest Classifier (Scikit-Learn) 모델 생성 import flaml automl = flaml.AutoML() from sklearn.tree import DecisionTreeClassifier dtc = DecisionTreeClassifier() from sklearn.ensemble import RandomForestClassifier rfc = RandomForestClassifier() 모델 학습 automl.fit(X_train, y_train, task='classification') dtc.fit(X_train, y_train) rfc.fit(X_train, y_train) 최적 모델/ 구성 automl.best_estimator, automl.best_config 'xgb_limitdepth', {'colsample_bylevel': 0.7979, 'colsample_bytree': .8499, 'learning_rate': .5145, 'max_depth': 7, 'min_child_weight': .0751, 'n_estimators': 15, 'reg_alpha': .0017, 'reg_lambda': .5244, 'subsample': 1.0} # It’s your responsibility to tune # hyperparameters to get a better model # It’s your responsibility to tune # hyperparameters to get a better model 정확도(%) 84.0 77.0 82.0
  18. 폐렴 환자 판별 AutoML (AutoKeras) Hand-written CNN (AI4FW) Using MobileNetV2 (ImageNet) 모델 생성 import autokeras as ak clf = ak.ImageClassifier(max_trials=2) model = Sequential() model.add(Conv2D(32, (3,3), strides=1, padding='same', activation='relu', input_shape=(IMG_SIZE,IMG_SIZE, 3))) model.add(BatchNormalization()) model.add(MaxPool2D((2,2), strides=2 , padding='same')) model.add(Conv2D(64, (3,3), strides=1, padding='same', activation='relu')) model.add(Dropout(0.1)) model.add(BatchNormalization()) model.add(MaxPool2D((2,2), strides=2, padding='same')) model.add(Conv2D(64, (3,3), strides=1, padding='same', activation='relu')) model.add(BatchNormalization()) model.add(MaxPool2D((2,2), strides=2, padding='same')) model.add(Conv2D(128, (3,3), strides=1, padding='same', activation='relu')) model.add(Dropout(0.2)) model.add(BatchNormalization()) model.add(MaxPool2D((2,2), strides=2, padding='same')) model.add(Flatten()) model.add(Dense(128, activation='relu')) model.add(Dropout(0.2)) model.add(Dense(1, activation='sigmoid')) model.compile(optimizer="adam", loss='binary_crossentropy', metrics=['accuracy']) import tensorflow as tf mobile_model = tf.keras.applications.MobileNetV2( input_shape=(IMG_SIZE, IMG_SIZE, 3), include_top=False, # Remove classification head weights='imagenet') for layer in mobile_model.layers: layer.trainable = False model = tf.keras.Sequential( [mobile_model, GlobalAveragePooling2D(), Dropout(0.2), Flatten(), Dense(128, activation='relu'), Dropout(0.2), Dense(1, activation='sigmoid')]) model.compile(optimizer="adam", loss='binary_crossentropy', metrics=['accuracy']) 모델 학습 clf.fit(train_data, batch_size=32, epochs=50) # You can examine the model by inspecting # clf.export_model() hereafter datagen = … # Data augmentation learning_rate_reduction = … # Setting up a callback model.fit(datagen.flow(x_train, y_train, batch_size=32), epochs=50, validation_data=datagen.flow(x_val, y_val), callbacks=[learning_rate_reduction]) Same as left 정확도(%) 75.96 80.29 87.66
  19. The Whole JAIBC Spiral: ABC+HAP+PAP ① 통계 데이터를 위한 문제들을 AutoML(FLAML)을 활용하여 그 틀 안에서 해결한다. ② 이미지/텍스트/시계열 문제들을 AutoML(Auto-Keras)을 활용하여 그 틀 안에서 해결한다. ③ ①의 문제들을 정교하게 다시 해결하고 최적화하고자 Python 프로그래밍과 Pandas/Numpy/Scikit-Learn을 활용한다. ④ TensorFlow를 활용하여 ②의 문제들을 다시 해결하고 최적화한다. ⑤ 모델 최적화 기법들과 전이학습을 활용하여 ④를 더욱 최적화한다. ⑥ 통계/시각/언어/음성과 같은 데이터 유형을 위한 유형별 최적화 및 전문 모델들을 학습한다. ⑦ State-Of-The-Art 모델들을 활용하는 방법을 학습한다.
  20. 대표적인 성과 (1) NIPA 인공지능놀이터(https://ai-korea.kr) 문제 해결  해양침적쓰레기 (이미지) 분류 문제에 도전, 1~4위에 랭크됨  뉴스기사텍스트 카테고리 분류 문제 도전, 1위와 3위에 랭크됨
  21. 대표적인 성과 (2) 2022 AI-X 해커톤 대상 수상작 머신러닝 모델 개발  생활소음 20여종 분류를 위한 성능 97%(F1) 모델 개발
  22. 대표적인 성과 (3) 2022 여름 실리콘밸리업체 “Headstart Silicon Valley” 온라인 AI 인턴십 참여 및 수료
  23. 맺는 말 실무 AI 교육을 위한 Spiral 교육 모델 정교한 교육과정과 특화된 교재 지원이 있어야 함  Intel AI4FW 프로그램과 Naver CLOVA 기술협력과 교재제공  AutoML, Zero-shot/Few-shot Learning 적극 활용 JAIBC 프로그램에 적용하여 효과 확인
Anúncio