TensorFlow의 핵심 아이디어Foward propagation(cost function 계산)만 구현하면, TensorFlow가 자동으로 back propagation(gradient 계산)을 수행한다. Cost Function 최소화아래의 식을 봅시다. $$J(w) = w^2 - 10w + 25 = (w - 5)^2$$ 최적값은 $w = 5$ 이를 코드에 적용해서 보면import numpy as npimport tensorflow as tf# 최적화할 변수 정의w = tf.Variable(0, dtype=tf.float32)# Optimizer 선택optimizer = tf.keras.optimizers.Adam(learning_rate=0.1)# Cost function 정의 및 한 스텝 ..
Selection Sort import sysread = sys.stdin.readlinen = int(read())a = list(map(int, read().split()))count = 0for k in range(n - 1, 0, -1): max_idx = 0 max_val = a[0] for i in range(1, k + 1): if a[i] >= max_val: count += 1 max_val = a[i] max_idx = i a[k], a[max_idx] = a[max_idx], a[k]print(count) Bubble Sort n = int(input())arr = list(map..
메모lambda 사용법 숙달set 함수 이해 및 숙달시간복잡도 계산하는 능력전체적인 자료구조 개념 훑어볼 것 문제 1 나의 로직x좌표가 우선적으로 오름차순 정렬이고, 그 다음으로 y좌표가 우선순위이다.그렇다면 이중 if 문으로 x좌표가 같은지의 여부를 코드에 작성해야할까?정렬이니 sort 또는 sorted 함수를 사용해야 할 것이다.sorted를 사용하기 위해서는 리스트 작업을 진행해야 할 것이다.x, y좌표는 한 짝을 이루고 있으므로 이를 고정하기 위해서는 튜플이 필요할까? 내 로직에 대한 잼민이의 평가 일단 내 방향성을 얼추 맞았음을 확인. 코드 작성 시작. 나의 코드 n = int(input())points = []for _ in range(n): x, y = map(int, input(..
역시 이론과 문법만 알고 있다고 능사가 아니었다. 이제 생물학을 공부해왔던, 그 자연과학적 사고는 버리고 새로운 사람으로 태어날 수 있게 연습해야겠더라. 오답문제 1 오늘 해야 할 일을 담긴 문자열 배열 todo_list와 각각의 일을 지금 마쳤는지를 나타내는 boolean 배열 finished가 매개변수로 주어질 때, todo_list에서 아직 마치지 못한 일들을 순서대로 담은 문자열 배열을 return 하는 solution 함수를 작성해 주세요. 나의 오답 코드 코드를 아예 작성하지 못했다. 불리언 배열을 이용하는 것을 다룰 수 없었다. for loop를 이용해 리스트의 문자열 원소를 꺼내와 비교를 시키면 된다는 생각은 가지고 있었지만 이를 구현할 아이디어가 떠오르지 않았다. 클로드 답변 ..
본 게시글은 학부 강의 '컴퓨터 프로그래밍 1'과 강의 교재 '파워 유저를 위한 파이썬 Express'를 토대로 이해한 내용을 정리하였습니다. 객체지향 프로그래밍을 배웠다. 직접 클래스를 만들고, 객체를 만들고, 함수를 직접 만들기도 했다. 그러기에 이제 우리는 예술가의 창작의 고통을 조금이나마 이해할 수 있게 되었다. 무에서 유를 창조하는 일은 너무나도 허들이 높다는 것. 그렇다면 우리는 앞으로 프로그래밍을 할 때 항상 아무것도 없는 무의 세계에서 하나하나 우리가 만들어 나가야 하는걸까? 너무 막막한데? 내장 함수파이썬 인터프리터에는 항상 사용할 수 있는 많은 함수가 준비되어 있다. 이러한 함수를 내장 함수라고 한다. 직접 인수에 숫자 넣어보면서 어떤 결과가 나오는 지 확인하자 ..
본 게시글은 학부 강의 '컴퓨터 프로그래밍 1'과 강의 교재 '파워 유저를 위한 파이썬 Express'를 토대로 이해한 내용을 정리하였습니다. 꼭 개발자라고 해서 모든 걸 개발, 직접 만들어낼 필요는 없다. 누군가 만들어 놓은 것을 가져다 써도 된다. 아니면 전에 내가 만들어 놓았던 것을 불러와 사용해도 된다.한 때 컴퓨터로 CD게임을 할 때 누군가 클리어 해놓은 세이브 파일을 구해와 순식간에 만렙을 찍고 시작한 적이 있다. 이처럼 남이 만들어놓은 것을 잘 활용하는 것 또한 이 분야에서는 능력이더라. 우리는 개발자이지만 이용자이기도 하다. 파일 입출력# 파일 객체 = open(파일 이름, 파일 모드)# 파일 객체.close()infile = open("input.txt", "r")#.....
본 게시글은 학부 강의 '컴퓨터프로그래밍 1'과 강의 교재 '파워 유저를 위한 파이썬 Express'를 토대로 이해한 내용을 정리하였습니다. 객체지향 프로그래밍의 시작 객체....?파이썬 코드의 대부분은 객체라고 배웠다. Object라고 하는 단어는 영어 시간에 목적어라는 단어 밖에 몰랐는데... 공대 세계에서는 객체라고 하더이다. 어쩔 때는 변수고 다른 때는 객체?? 등호(=)가 있다 해서 무조건 변수고, 객체다 라고 생각하면 안된다. 이제 객체지향 프로그래밍을 배우기 시작하는데에 있어 이제 함수, 객체 모듈 등의 용어를 정확히 구분할 필요가 있다. 객체지향이란, 단순히 코드를 예쁘게 작성하는 것이 아니다. 객체지향 프로그래밍을 하다 보니 코드가 예쁘게 보여지는 것일 뿐.모든 기능과 데..
본 강의는 학부 강의 '컴퓨터 프로그래밍 1'과 강의 교재 '파워 유저를 위한 파이썬 Express' 의 내용을 바탕으로 이해한 내용을 작성하였습니다. 리스트가 어떤 친구인지 알았으니, 이제 리스트를 잘 이용할 수 있도록 고급 스킬들을 알아보도록 하자.추후에 리스트에 등장하는 인덱스 개념은 전공 자료구조에 정말 흔히 쓰이는 단어이니 나와 물아일체가 되도록 체득하자. 리스트 합병과 복제 heroes1 = ["Ironman", "Thor"]heroes2 = ["Hulk", "Hawkeye"]avengers = heroes1 + heroes2# avengers의 리스트는 ["Ironman", "Thor", "Hulk", "Hawkeye"] 가 된다.# numbers = [5, 6, 7, 8] * 3#..
본 게시글은 학부 강의 '컴퓨터 프로그래밍 1', 강의 교재 '파워 유저를 위한 파이썬 Express'의 내용들을 바탕으로 이해한 내용을 정리하였습니다. 집 앞 롯데리아만 가도 우리는 키오스크를 접할 수 있다. 필자는 착한점심을 좋아한다.그리고 나는 다른 곳에서도, 생각지도 못한 곳에서도 키오스크를 발견한 적이 있었다. 그리고 술집에 갔을 때 이제는 종업원이 아닌 작은 화면의 키오스크 화면이 나를 반겨준다. 나와 같은 I를 가진 사람에게는 더 이상 귀가 빨개져 가면서까지 메뉴를 초조해하며 고르지 않아도 되는 시대를 살아가고 있었다.우리가 사소하지만 익숙함에 속아 늘 사용하고 있는 것. 전자제품이 생겨나기 전에도 액정 화면이 아닌 종이로도 보고 있었던 것. 바로 목록. 리스트이다. 우리 생활 속에서 느..
본 강의는 학부 강의 '컴퓨터 프로그래밍 1'과 강의 교재 '파워 유저를 위한 파이썬 Express' 의 내용을 바탕으로 이해한 내용을 작성하였습니다. 반복의 중요성우리들의 생활에서는 반복적인 작업들이 필요하다.반복적이고 단순한 작업은 컴퓨터를 이용하여 자동화하면 된다. 반복의 종류횟수 반복(for 문) : 정해진 횟수만큼 반복한다.조건 반복(while 문) : 특정한 조건이 성립되는 동안 반복한다.이들을 상황에 따라 적절히 선택하여 사용해야 한다. 횟수 반복은 반복을 시작하기 전에 반복의 횟수를 미리 아는 경우에 사용한다. * 시퀀스 : 숫자의 나열. 리스트로 만들 수 있다. [ ... ] 조건 반복은 특정한 조건이 만족되는 동안 계속 반복한다. 리스트항목들을 저장하는 자료 구조 sli..
본 게시글은 학부 강의 '컴퓨터 프로그래밍' 과 참고 교재 '파워 유저를 위한 파이썬 Express'를 바탕으로 이해한 바를 작성하였습니다. 초 중 고등학교에서 수학 수업을 잠깐이라도 들어봤다면 '함수' 라는 단어는 정말 많이 들어봤을 것이다. 칠판에 그린 이런 그래프 같은 것들이 함수라고 생각하는 사람이 꽤 많다고 생각한다. 나도 한때는 그랬으니까.하지만 이 그래프는 단지 함수식에 숫자를 넣어 2차원 평면에 그림으로 옮겨놓은 것 뿐이다. 그럼 함수가 뭔데? 숫자나 데이터를 집어넣으면 다른 숫자나 데이터가 나오는 이 박스를 함수라고 부른다. def function(x): return x + 2 이 파이썬 코드를 보자.수학의 f(x) 처럼 위에 x에 어떤 수를 넣으면 거기에 2라는 수를..
본 게시글은 학부 강의 '컴퓨터 프로그래밍 1'의 내용과 교재 '파워 유저를 위한 파이썬 Express'를 바탕으로 이해한 내용들을 정리하였습니다. 프로그래밍의 필수 재료가 되는 변수와 수식에 대해 알아보자 변수 변수(Variable)는 컴퓨터의 메모리 공간에 이름을 붙이는 것으로 우리는 여기에 값을 저장할 수 있다.프로그래밍에서 변수는 메모리를 일컫는다. 이름 붙인 메모리 공간. 변수 정의 Python에서는 변수에 값을 저장하면 변수가 자동으로 생성된다. ## Syntax. 변수 정의하는 법# 변수 이름 = 값x = 10# 여기서 x는 변수이름, 10은 값이 된다. 프로그래밍에서 등호(=)는 우리가 지금껏 알던 등호와는 약간 의미가 다르다.프로그래밍에서는 대입연산자, 할당연산자. 대입의 의미..