전체 글
-
[모두를 위한 딥러닝] 2. Linear RegressionAI/모두를 위한 딥러닝 2020. 11. 19. 01:37
# Linear Regression 주어진 학습 데이터를 가장 잘 설명할 수 있는 선을 찾아 분석하는 방법이다. (Regression은 연속하는 값을 가지는 학습 데이터에 한해 사용한다.) 위 그림처럼 주어진 데이터를 그래프에 표현하고 여러가지 선을 긋다보면 파란선이 해당 데이터를 가장 잘 표현함을 알 수 있다. 이러한 선을 H(x) = Wx + b의 형태의 수식으로 찾아내는 것을 Linear Regression이라고 한다. 위 그림의 파란선은 H(x) = x로 나타낼 수 있다. # Loss & Cost function Cost function은 예상한 가설(선)이 데이터에 얼마나 잘 맞는지 확인하는 함수이다. 보통 예측값에서 실제값을 뺀 값의 제곱인 (H(x) - y)²을 Loss로 사용하여 Cost ..
-
[알고리즘] 이진 탐색Computer Science/자료구조 & 알고리즘 2020. 11. 18. 16:05
# 순차 탐색 일반적으로 자주 사용되는 탐색으로, 앞에서부터 데이터를 하나씩 차례대로 확인하며 리스트 안에 있는 특정 데이터를 찾는 방법이다. 보통 정렬되지 않은 리스트에서 데이터를 찾을 때 사용한다. 충분한 시간이 있다면 데이터가 아무리 많아도 항상 원하는 데이터를 찾을 수 있는 것이 장점이다. 시간 복잡도는 최악의 경우 O(N)을 보장한다. # 순차 탐색 함수 구현 def sequential_search(target, array): for i in range(len(array)): if array[i] == target: return i + 1 # 현재 위치 반환 (인덱스이므로 1을 더함) array = [4, 5, 1, 3, 2] target = 3 print(sequential_search(tar..
-
[모두를 위한 딥러닝] 1. Machine Learning 개요AI/모두를 위한 딥러닝 2020. 11. 18. 01:46
# 머신러닝이란? Explicit(=many rules)한 프로그래밍을 지양하고, 프로그램에게 데이터를 보고 스스로 학습할 능력을 부여해서 어떠한 결과를 도출하게끔 하는 연구하는 분야 → Field of study that gives computers the ability to learn without being explicitly programmed (Arthur Samuel, 1959) # 학습 방법에 따른 유형 1. Supervised learning : 컴퓨터에게 정답(label)이 무엇인지 알려주면서 학습시키는 방법 (label이 있는 data로 학습) (1) Regression : 어떠한 연속된 값을 주어진 데이터들의 특징(feature)을 기준으로 예측하는 문제 ex) 시험공부에 투자한 시간..
-
[Python Programming 기초] # Class(클래스)와 Object(객체) : 개념Programming Language/Python 2020. 11. 18. 00:35
# Class(클래스)와 Object(객체) 1. 개념 ex) - Class란? : 새로운 타입을 정의 · 실세계의 것을 모델링하여 속성(attribute)와 동작(method)를 갖는 데이터 타입 · Python에서의 string, int, list, dict... 모두가 다 클래스로 존재 - Object란? · 클래스로 생성되어 구체화된 객체 (=인스턴스) · Python의 모든 것 (int, str, list...)은 객체 (=인스턴스) · Class가 인스턴스화 되어 메모리에 상주하는 상태 본 포스팅은 Fast Campus 머신러닝과 데이터 분석 A-Z 강의를 듣고 정리한 내용을 담고 있습니다.
-
[Python Programming 기초] # 모듈의 이해 및 사용Programming Language/Python 2020. 11. 18. 00:33
# 모듈(=외부 라이브러리)의 이해 및 사용 : 다양한 기능들이 미리 함수로 구현되어 모듈 형태로 제공 ex) requests, numpy, pandas - import : 모듈 전체를 가져올 때 사용 ex) import math math.pi - from 모듈 import 값, 함수, 클래스 : 해당 모듈에서 특정한 값, 함수, 클래스만 가져올 때 ex) from math import pi pi - * import (star import) : 해당 모듈내에 정의된 모든 것을 import → 권장 X ex) from math import * - as : 모듈 import 시, alias(별명) 지정 가능 ex) import math as m m.exp(3) 본 포스팅은 Fast Campus 머신러닝과 데..
-
[Python Programming 기초] # 함수의 이해 및 사용 2 : lambda 함수Programming Language/Python 2020. 11. 18. 00:31
# 함수의 이해 및 사용 2. lambda 함수 : 한 줄로 표현되는 함수, return을 쓰면 X ex) square = lambda x:x**2 def square2(x): square(5) return x**2 => 25 square2(5) => 25 ex) add = lambda x,y:x+y add(10, 20) => 30 - lambda가 유용하게 사용되는 대표적 3가지 함수 (1) filter : 특정 조건을 만족하는 요소만 남기고 필터링 → filter(함수, 리스트) ex) nums = [1, 2, 3, 6, 8, 9, 10, 11, 13, 15] list(filter(lambda n:n%2==0, nums)) => [2, 6, 8, 10] (2) map : 각 원소를 주어진 수식에 따라..
-
[Python Programming 기초] # 함수의 이해 및 사용 1 : defProgramming Language/Python 2020. 11. 18. 00:30
# 함수의 이해 및 사용 1. def : 함수 정의 ex) def add(x, y): # x, y 각각을 인자(parameter)라고 한다. n = x + y return n - 기본 인자 : parameter의 기본값 지정 가능 ex) def add(x, y, z=5): a = x + y +z return a add(10, 20) => 35 cf) 기본 파라미터는 뒤의 파라미터부터 정의되어야 함 def test(a, b=3, c): print(a, b, c) test(10, 20, 1) => Error - return : 함수의 "종료" 명시 (함수 내에서 return 뒤에 명시된 코드는 수행되지 않음!) 값이 있으면 그 값을 반환 'return만 존재' 혹은 'return이 없는 경우', None 반..
-
[Python Programming 기초] # 조건문과 반복문 3 : forProgramming Language/Python 2020. 11. 18. 00:27
# 조건문과 반복문 3. for : 순회 가능한 객체를 순회하면서 값을 처리할 때 사용 ※ 순회 가능한 객체란? 리스트, 문자열, 딕셔너리 특히 딕셔너리의 경우, 순회하면 기본적으로 Key값만 가져옴 ∴ Value값 순회 시 dict.values() 이용 or for key, value in dict.items(): # Key, Value 튜플 print(key, value) 를 사용하자! ex) a = [1, 2, 4, 3, 5] for i in a: # i는 관례적으로 i로 많이 쓰나 임의의 변수이므로 아무거나 사용 가능! print (i, i*2) => 1 2 2 4 4 8 3 6 5 10 - for에서 index 사용하기 : a = [1, 2, 4, 3, 5] for index, num in en..