AI/Python
-
Python 으로 경사하강법(Gradient Descent) 구현AI/Python 2020. 12. 23. 16:12
경사하강법(GD)은 여러 종류의 문제에서 최적의 해법을 찾을 수 있는 매우 일반적인 최적화 알고리즘이다. 경사하강법의 기본 아이디어는 비용함수를 최소화하기 위해 반복해서 파라미터를 조정해 나가는 것이다. 간단한 예를 들면, 산 위에서 길을 잃었을 때 가장 빨리 골짜기로 내려가는 방법은 경사가 가파른 곳으로 내려가는 것이 가장 베스트 아이디어다. 이것이 바로 경사하강법의 원리이다. 이제 경사하강법에 대해서 다 배운 것이다. 말 그대로 기울기가 가파른 방향으로 내려가면서 기울기가 0이 되는 지점까지 가는 방법이다. 기울기가 0이 된다면 골짜기의 최솟값에 도달한 것이다. 우리가 앞에서 그렸던 공부시간과 시험 점수 그래프에서 Cost function을 Cost와 W에 대해서 그래프로 그린다면, 아래와 같이 그려..
-
Python 예외처리AI/Python 2020. 12. 22. 11:41
다른 언어의 try catch와 같다. 아래 예제는 숫자형이 아닌 문자열을 입력해서 에러가 났을때 숫자 0을 리턴해 주는 예제이다. Excpetion 은 에러내용을 보여준다. try: age = int(input("나이 : ")) except Exception as e: age = 0; print(e) print(age) 결과는 다음과 같다. 나이 : a invalid literal for int() with base 10: 'a'invalid literal for int() with base 10: 'a' 0 문자열 a를 입력하면 int형이 아니라는 에러메세지와 함께 숫자 0을 리턴한다.
-
Python File 읽기 쓰기 기초AI/Python 2020. 12. 18. 19:03
Python에서 파읽을 읽고 쓰는 예제다. text파일을 기준으로 ANSI코드로 저장을 해야한다. text파일에 내용이 있는 경우 전체 쓰기이기 때문에 지우고 새로쓴다. 주의하도록 하자. #파일 읽고 쓰기 f = open("test.txt", "r") #경로를 안주면 현재 이파일과 같은 경로에 위치한 파일을 읽어온다. test.txt 는 ANSI코드로 저장한다. #text = f.read() #내용전체 읽기 #text = f.readline() #한줄씩 읽기 text = f.readlines() #내용전체를 읽되 리스트방식으로 읽기 print(text) f.close() f1 = open("C:/Users/username/PycharmProjects/tensor_1/test.txt", "r")#경로를 주..
-
Python 모듈 기초 random, timeAI/Python 2020. 12. 18. 18:27
모듈은 라이브러리와 같다고 생각하면된다. 그중 내장 모듈인 random과 time에 대해 공부해보자. #모듈 import해서 쓴다. import random as r print(r.randint(1,6)) a = ['a', 'b', 'c'] print(r.choice(a)) print(r.choice(['d','e','f'])) import time a = time.time() #1970년1월1일 자정이후로 누적된 초를 유닉스타임으로 보여줌 time.sleep(4) #4초간 정지 c = time.localtime() #현재시각 #tm_year=년도, tm_mon=월, tm_mday=일, tm_hour=시, tm_min=분, tm_sec=초, tm_wday=요일(숫자로표시 0부터), tm_yday=1월1일..
-
Python Class 기초AI/Python 2020. 12. 18. 14:52
프로그램언어를 다루면 클래스를 대부분 사용한다. Python에서의 클래스 사용법을 간단하게 연습해 보았다. #Class 클래스 class Pet: # 클래스 선언(클래스명은 대문자로 시작) color = "" kind = "dog" character = "home_grown" strength = 100 def walk(self, do): self.strength = self.strength - do def eat(self, do): self.strength = self.strength + do def sleep(self, do): self.strength = self.strength + do poodle = Pet() poodle.color = 'brown' poodle.walk(15) print(poo..
-
Python 함수 FunctionAI/Python 2020. 12. 18. 13:53
Python의 함수에 대해서 훝어본다. #function def aaaa(a, b): #함수 정의 parameter a c=a+b return c #return 값 #aaaa(input("First number"), input("Second number")) #함수호출 print('This is %d function' %int(aaaa(int(input("First number")), int(input("Second number"))))) 함수에서 형을 구분하지 않아서 input시 str로되기 때문에 형변환을 해줘야 계산을 한다. 형변환을 하지 않으면 str로 구분되어 숫자를 넣어도 두수의 합이 아니라 문자열더하기를 한다. 예를들어 3,4를 입력하면 형변환시 7이지만 형변환을 안하면 34가 나온다. 만약..
-
Python 조건문, 반복문AI/Python 2020. 12. 18. 10:43
프로그램언어를 공부할때마다 익히게 되는 문법이다. 개념은 같지만 사용방법이 대동소이 하므로 한번 즈음 훝어보게 된다. 조건문 IF와 for문 while문의 예제를 마음대로 적어봤다. Python이 보기가 편한게 들여쓰기로 실행문을 구분한다는 점이다. 다른언어들은 끝문장을 항상 써주고 내가 보기에 편하도록 들여쓰기를 넣었는데 Python에서는 끝문장을 없애버리고 들여쓰기를 필수로 넣었다. 두마리토끼를 잡은셈이다. tp = 1 a = float(input("수를 입력하세요 :")) #Python 에서 실행코드의 구분은 들여쓰기다!(조건문, 제어문, 함수, 클래스 전부) 다른 언어들은 괄호 또는 ; 등으로 구분을 했지만 Python은 들여쓰기로 구분한다. #들여쓰기의 칸 수에 주의 하자. 보통탭으로 하는데 한..
-
Python 기초 자료형AI/Python 2020. 12. 17. 15:32
TensorFlow를 시작하면서 Python을 사용하게 되었다. Python의 기초 내용을 정리 해보았다. Python 자료형 int, float, str, list, dict, bool 숫자형 수식 a+b, a-b, a*b, a/b, a//b(몫), a%b(나머지), a**b(제곱), max(a,b)최대값, min(a,b)최소값 문자열 c="서울시", d="부동산", c+d "서울시부동산", c[::-1] "시울서", c*3 "서울시서울시서울시", c[0] "서", c[1,5] "울시", c[1:] "울시", c[-1] "시", len(c) 3, c.count("시") 1, c.find("시") 2, c.replace("시", "특별시") "서울특별시" rep3 = '서울시 부동산 매매 추이', rep..