[혼공머신] 1장. 나의 첫 머신러닝
1장. 나의 첫 머신러닝 : 이 생선의 이름은 무엇인가요?
인공지능과 머신러닝, 딥러닝
- 인공지능 : 사람처럼 학습하고 추론할 수 있는 지능을 가진 컴퓨터 시스템을 만드는 기술
- 인공일반지능(강인공지능) : 사람과 구분하기 어려운 지능을 가진 컴퓨터 시스템 (예 : 영화 <그녀> 의 사만다, 영화 <터미네이터> 스카이넷 등)터미네이터>그녀>
- 약인공지능 : 특정 분야에서 사람의 일을 도와주는 보조 역할을 하는 컴퓨터 시스템 (예 : 음성비서, 자율 주행 자동차, 음악 추천, 기계 번역 등)
- 머신러닝 : 규칙을 일일이 프로그래밍하지 않아도 자동으로 데이터에서 규칙을 학습하는 알고리즘을 연구하는 분야
- 대표 라이브러리 : 사이킷런
- 딥러닝 : 머신 러닝 알고리즘 중 인공 신경망을 기반으로 한 방법들을 통칭
- 대표 라이브러리 : 텐서플로, 파이토치
코랩과 주피터 노트북
- 구글 코랩
- 웹 브라우저에서 무료로 파이썬 프로그램을 테스트하고 저장할 수 있는 서비스
- 텍스트 셀
- 코랩에서 실행할 수 있는 최소 단위
- 코드에 대한 설명 작성 가능
- HTML 과 마크다운 혼용에서 사용 가능
- 코드 셀
- 코드를 작성하고 실행 가능
- 노트북
- 구글 클라우드의 가상 서버를 사용
K-최근접 이웃 (K-Nearest Neighbors) 알고리즘
- 어떤 데이터에 대한 답을 구할 때 주위의 다른 데이터를 보고 다수를 차지하는 것을 정답으로 사용
- 데이터가 아주 많은 경우 사용하기 어려움
- 예시 ) 생선 분류 문제
- 생선의 길이와 무게로 생선의 종류 분류
- 여기에서 생선의 길이와 무게와 같이 데이터를 표현하는 하나의 성질을 특성(feature) 이라고 한다.
- 파란색 표시 : 도미, 주황색 표시 : 빙어
- 특성 데이터를 2차원 리스트로 변경
- 정답 리스트 생성 - 도미를 찾는 대상으로 정의 → 1, 빙어 → 0
- 특성 데이터와 정답리스트를 이용하여 훈련(training) 후 모델 평가
- 사이킷런
- 훈련 fit() 메서드 사용
- 모델 평가 score() 메서드 사용 → 0과 1 사이의 값 반환 (1은 모든 데이터를 정확히 맞혔다는 것을 나타냄)
- 정확도 = (정확히 맞힌 개수) / (전체 데이터 개수)