목록Computer Science/인공지능(AI) (7)
Slow but steady wins the race
TinyML이란? - Tiny Machine Learning - 평균 1 milliwatt 이하의 저에너지 시스템에서 구현되어 임베디드 장치에서 실행하는 머신러닝 - 가격이 착함..ㅎㅎ Software for TinyML? - Tensorflow : 머신러닝을 위한 오픈소스 플랫폼 - Tensorflow lite : 기기 내 추론을 위한 오픈소스 딥 러닝 프레임워크(Deep learning framework for on-device inference) 작동방식 1. 모델 선택 - 새로운 모델을 선택하거나 재학습시킬 모델 선택 - Python Tensorflow Using colab 2. 모델 변환 - TensorFlow 모델을 압축된 플랫 버퍼로 변환 - Tesorflow lite converter : ..
MNIST database - 손으로 쓴 숫자들로 이루어진 대형 데이터 베이스이며, 다양한 화상 처리 시스템을 training하기 위해 일반적으로 사용됨 - 60,000개의 트레이닝 이미지와 10,000개의 테스트 이미지 포함 - NIST의 테스트 데이터셋으로부터 취합됨 ※NIST 더보기 NIST 28x28 픽셀의 바운딩 박스와 앤티엘리어싱 처리되어 그레이스케일 레벨이 들어가 있도록 평준화 되어 있음 KERAS(딥러닝 네트워크를 구축하기 위한 텐서플로의 고수준 API) - 진입장벽이 낮고, 추상화가 잘 되어 있어 코드 가독성이 높기 때문에 주로 사용 - Backend인 Theano, TesorFlow, CNTK를 골라서 사용 가능 mnist model 구축 및 학습 1. import required mo..
선형회귀알고리즘의 목표 : 입력 데이터(x) 와 타깃 데이터(y)를 통해 기울기(a)와 절편(b)를 찾는 것 = 산점도 그래프를 잘 표현하는 직선의 방정식을 찾는 것 - 푸는 방법 : 경사 하강법 (gradient descent) , 정규방정식(normal equation), 결정트리, 등 경사하강법 - 모델이 데이터를 잘 표현할 수 있도록 기울기(변화율)를 사용하여 모델을 조금씩 조정하는 최적화 알고리즘 예측값과 변화율 - 딥러닝에서는, 기울기 a를 가중치를 의미하는 w나 계수를 의미하는 θ 로 표기 - y(타깃데이터)는 y ̂(y-hat)으로 표기 - y=ax+b 를 y ̂=wx+b로 - 가중치 w와 절편 b는 알고리즘이 찾은 규칙, y ̂는 예측값(우리가 예측한 값) 훈련데이터에 잘 맞는 w와 b찾..
선형회귀함수 - "기울기와 절편을 찾는것" - 머신러닝 알고리즘 중 하나 당뇨병환자의 1년 후 병의 진전된 정도를 예측하는 모델 만들기 당뇨병 환자 데이터 가져오기 - 머신러닝 딥러닝 패키지에는 인공지능 학습을 위한 dataset가 준비되어있음 - 사이킷런, 케라스 : 다양한 데이터 세트 제공 1. load_diabetes( ) 함수로 당뇨병 데이터 준비하기 from sklearn.datasets import load_diabetes diabetes = load_diabetes( ) #diabetes에 당뇨병 데이터 저장 # Bunch 클래스 cf) Bunch 클래스 : 파이썬 딕셔너리와 유사. 예제 데이터 세트를 위해 준비된 것. 특별한 기능 X 2. 입력과 타깃 데이터의 크기 확인하기 diabetes..
1. 넘파이(파이썬 패키지 중 하나) - cf) 파이썬 리스트 my_list=[10,'hello list',20] print(my_list[1])# list의 index는 0부터 시작 # 실행결과 : hello list 2차원 배열(중첩된 배열) my_list_2 = [[10,20,30],[40,50,60]] -> 2X3크기 / 2행 3열 파이썬 리스트로 만든 배열 : 배열의 크기가 커질수록 성능이 떨어진다는 단점 따라서 넘파이 사용 - 저수준 언어로 다차원 배열 구현 - 배열의 크기가 커져도 높은 성능 보장 - 배열을 이용한 다양한 통계, 수학 함수 제공 코랩에서 넘파이 임포트하고 버전 확인하기 import numpy as np#numpy를 np라는 별칭으로 부를 것 print(np.__version_..
구글 코랩 : 구글이 제공하는 주피터 노트북(jupyter notebook) 코랩이란? -웹 브라우저(Web Browser)를 통해 제어하고 실제 파이썬 코드 실행은 구글 클라우드의 가상서버에서 이루어짐 - 노트북(코랩에서 만든 파일)은 구글 드라이브(Google Drive)에 저장하고 불러올 수 있음 - 구글 독스나 구글 스프레드 시트와 비슷한 방식으로 사용할 수 있는 프로그램 http://colab.research.google.com/ Google Colaboratory colab.research.google.com 자주 사용하는 기능 [단축기] 1. 셀 삭제하기 [Ctrl + M D ] 2. 셀 실행하고 바로 다음 셀로 이동하기 [Shift + Enter] 3. 셀 실행 (다음셀 이동 X) [Ctr..
인공지능(Artificial Intelligence) : 사람의 지능을 만들기 위한 시스템이나 프로그램 1. 강 인공지능(strong AI) - 사람과 구분이 안될 정도로 강한 성능을 가진 인공지능 2. 약 인공지능 (weak AI) - 특정 영역에서 작업을 수행하는 인공지능 - ex.Tesla의 자율주행자동차, 구글의 인공지능 스피커 Google Home,등 - 머신러닝, 딥러닝 인공지능, 머신러닝, 딥러닝의 관계 머신러닝이란? 1. "학습" / "훈련" 을 한다. ( 데이터의 규칙을 컴퓨터 스스로 찾아 수정한다. ) (1) 지도학습(supervised learning) (훈련데이터 = 입력 + 타깃) (입력 : 모델이 풀어야 할 일종의 문제 같은 것) (타깃 : 모델이 맞춰야 할 정답과 같은 것) (..