맨 하단에 코랩 캡쳐본 인증합니다.
- 😻 코랩 공유링크
인공지능 (artificial intelligence)
- 사람처럼 학습하고 추론할 수 있는 지능을 가진 컴퓨터 시스템을 만드는 기술
그녀
의 사만다나, 터미네이터
의 스카이넷처럼 사람과 구분하기 어려운 지능을 가진 컴퓨터 시스템머신러닝 (machine learning)
- 규칙을 일일이 프로그래밍하지 않아도, 자동으로 데이터에서 규칙을 학습하는 알고리즘을 연구하는 분야
- 인공지능 하위 분야 중 지능을 구현하기 위한 소프트웨어를 담당하는 핵심 분야
사이킷런(scikit-learn)
🦾딥러닝(deep learning)
인공신경망
을 기반으로 한 방법들을 통칭- 인공 신경망과 딥러닝을 크게 구분하지 않고 사용
2016년 국내 : 이세돌과 알파고의 대국
최근 딥러닝 발전은 매우 긍정적이다!
😊
2015 구글: 텐서플로(TensorFlow) 오픈소스 공개
2018 페이스북: 파이토치(PyTorch) 딥러닝 라이브러리
공통점
- 인공 신경망 알고리즘을 전문으로 다루고 있다는 점
- 사용하기 쉬운 파이썬 API를 제공
키워드 | 설명 |
---|---|
인공지능 | 사람처럼 학습하고 추론할 수 있는 지능을 가진 시스템을 만드는 기술 |
머신러닝 | 규칙을 프로그래밍하지 않아도, 자동으로 데이터에서 규칙을 학습하는 알고리즘을 연구하는 분야 |
딥러닝 | 인공 신경망이라고도 하며, 텐서플로와 파이토치가 대표적인 라이브러리 |
웹 브라우저에서 텍스트 및 프로그램 코드를 자유롭게 작성할 수 있는 온라인 에디터
노트북/코랩 노트북
: 코랩 파일주피터
커스터마이징 새 노트북 만들기
한빛마켓🐟🐠🐡
- 앱 마켓 최초로 살아있는 생선 판매하기 시작
- 고객이 온라인으로 주문하면 가장 빠른 물류 센터에서 신선한 생선을 곧바로 배송
- 근데, 직원이 생선 이름을 못외움
-> 생선 이름을 자동으로 알려주는 머신러닝 만들어줘!
도미 데이터 준비하기
👉손코딩
bream_length(생선의 길이) = [25.4, 26.3, 26.5, 29.0, 29.0, 29.7, 29.7, 30.0, 30.0, 30.7, 31.0, 31.0,
31.5, 32.0, 32.0, 32.0, 33.0, 33.0, 33.5, 33.5, 34.0, 34.0, 34.5, 35.0,
35.0, 35.0, 35.0, 36.0, 36.0, 37.0, 38.5, 38.5, 39.5, 41.0, 41.0]
bream_weight(생선의 무게) = [242.0, 290.0, 340.0, 363.0, 430.0, 450.0, 500.0, 390.0, 450.0, 500.0, 475.0, 500.0,
500.0, 340.0, 600.0, 600.0, 700.0, 700.0, 610.0, 650.0, 575.0, 685.0, 620.0, 680.0,
700.0, 725.0, 720.0, 714.0, 850.0, 1000.0, 920.0, 955.0, 925.0, 975.0, 950.0]
선형
👨빙어 데이터 준비하기
smelt_length = [9.8, 10.5, 10.6, 11.0, 11.2, 11.3, 11.8, 11.8, 12.0, 12.2, 12.4, 13.0, 14.3, 15.0]
smelt_weight = [6.7, 7.5, 7.0, 9.7, 9.8, 8.7, 10.0, 9.9, 9.8, 12.2, 13.4, 12.2, 19.7, 19.9]
k-최근접 이웃(k-Nearest Neightbors)
알고리즘
length = bream_length + smelt_length
weight = bream_weight + smelt_weight
KNeighborsClassifier를 import
훈련
: 모델에 데이터를 전달하여 규칙을 학습하는 과정
😻 전체 코드 링크
특성
: 데이터를 표현하는 하나의 성질
훈련
: 머신러닝 알고리즘이 데이터에서 규칙을 찾는 과정
모델
: 알고리즘이 구현된 객체
k-최근접 이웃 알고리즘
: 전체 데이터를 메모리에 갖고 있음, 가장 간단한 머신러닝 알고리즘 중 하나.
정확도
: 정확한 답을 몇 개 맞혔는지를 백분율로 나타낸 값.
scikit-learn
입력: 생선의 길이와 무게
정답: 도미인지 아닌지 여부
특성
: 입력으로 사용된 길이와 무게
훈련에 사용한 데이터로 모델을 평가하는 것은 적절하지 않다. 🤔
링크
fish_length = [25.4, 26.3, 26.5, 29.0, 29.0, 29.7, 29.7, 30.0, 30.0, 30.7, 31.0, 31.0,
31.5, 32.0, 32.0, 32.0, 33.0, 33.0, 33.5, 33.5, 34.0, 34.0, 34.5, 35.0,
35.0, 35.0, 35.0, 36.0, 36.0, 37.0, 38.5, 38.5, 39.5, 41.0, 41.0, 9.8,
10.5, 10.6, 11.0, 11.2, 11.3, 11.8, 11.8, 12.0, 12.2, 12.4, 13.0, 14.3, 15.0]
fish_weight = [242.0, 290.0, 340.0, 363.0, 430.0, 450.0, 500.0, 390.0, 450.0, 500.0, 475.0, 500.0,
500.0, 340.0, 600.0, 600.0, 700.0, 700.0, 610.0, 650.0, 575.0, 685.0, 620.0, 680.0,
700.0, 725.0, 720.0, 714.0, 850.0, 1000.0, 920.0, 955.0, 925.0, 975.0, 950.0, 6.7,
7.5, 7.0, 9.7, 9.8, 8.7, 10.0, 9.9, 9.8, 12.2, 13.4, 12.2, 19.7, 19.9]
훈련하는 데이터와 테스트 데이터에는 도미와 빙어가 골고루 섞여 있어야 한다.
한 쪽으로 치우치게 되는 것은 샘플링 편향
이라고 한다. (sampling bias)
훈련/테스트 세트를 나누기 전 데이터를 섞거나, 골고루 샘플을 뽑아 훈련 세트와 테스트 세트를 만들어야 한다.
답: ① 지도학습
답: ④ 샘플링 편향(sampling bias)
답: ② 행: 샘플, 열: 특성