본문 바로가기
  • Seizure But Okay Developer

분류 전체보기250

백준 문제풀이 - 10815 개요 백준 문제 푼 내용에 대해 정리합니다. 내용 N개의 숫자와 M개의 숫자가 주어질 때, M 숫자들에 N 숫자들이 포함되어 있는지 여부를 1 또는 0으로 표현하면 되는 문제. N, M의 숫자들을 int 배열에 각각 저장하였고 이후 M 숫자들을 arr 배열에 저장하였다. for 문을 돌며 arr 배열의 i 번째 원소를 N 숫자를 저장한 배열과 비교해 여부를 체크하였다. 구체적으론 IntStream 의 anyMatch 함수를 사용하였는데, 문제 조건에 의하면 최대 백만 개를 탐색할 수 있고 시간 제한은 2초이므로, for 문안에서 각 원소를 탐색하는 것은 Big O(n^2) 을 만들어내 시간 초과라는 결과를 내었다. public class Main { public static int i = 0; publi.. 2023. 7. 22.
2주차 강의 내용 정리 - 1 개요 coursera 강의 2주차 내용을 정리합니다. 내용 지금 강의부턴 하나의 feature(input) 외에 여러 개의 feature 을 다루는 방식에 대해서 배울 것이다. 기존에 하나의 input 값으로만 구성된 방식은 아래와 같다. 그런데 만약 집 크기 외에 여러 개의 입력값이 존재한다면, 아래와 같이 재구성할 수 있고 집값을 예측하는데 더 용이하다. 위 그림에 나타난 표현식이 여러 개 있는데 정리하면 아래와 같다. x_j = j번째 feature, 1번째 feature는 위 표에서 첫 번째 열을 가리킨다. n = feature 의 총 개수 화살표 x^i = i번째 학습 데이터의 feature 그룹, 행 벡터라고도 부름. 화살표 표현은 벡터라는 것을 나타내기 위해 씀. 화살표 x^2 의 경우 위에.. 2023. 7. 19.
1주차 강의 내용 정리 - 7 개요 이제 앞서 배웠던 학습율과 cost function을 통해서 우리의 첫 머신러닝 알고리즘을 만들어본다. 결과적으로 선형 회귀 모델을 학습시켜 학습데이터와 밀접한 직선을 그릴 수 있다. 내용 지금까지 배운 공식들을 아래와 같이 정리한다. gradient descent 의 경우 미분공식을 적용한 결과 오른쪽 결과와 같이 정리되는 것을 확인할 수 있다. w에 대한 미분 공식이 풀이되는 과정은 아래와 같고, 미분 개념에 대한 설명은 첨부링크를 확인하길 바란다. 링크: https://zekesnote.tistory.com/411 공식을 보면, cost function의 공식에서 값을 좀 더 그럴싸하게(neater) 구하기 위해 2를 추가로 나눴던 이유에 대해서 알수 있다. 2로 나누는 작업이 있었기 때문에 .. 2023. 7. 18.
1주차 강의 내용 정리 - 6 개요 gradient descent에 대해서 배운다. 내용 gradient descent는 체계적인 방법으로 최소한의 크기의 w, b 값을 찾아주는 알고리즘이다. gradient descent는 딥러닝을 포함한 머신 러닝의 전반적인 곳에서 쓰인다. gradient descent 의 전반적인 내용에 대해서 살펴보자. gradient descent 는 어떠한 함수에도 적용할 수 있고 함수들은 n 개의 인자를 가진다. 우리는 최소한의 크기를 가진 cost function을 찾으려고 한다. 이를 위해 w, b 값에 대한 초기 추측값을 가지고 시작한다. linear regression의 경우 초기값이 무엇인지간에 크게 상관이 없어서 보통 w, b의 초기값을 0으로 잡고 시작한다. 우리가 할 것은 J(w) 값을 최.. 2023. 7. 12.
1주차 강의 내용 정리 - 5 개요 지난 시간에 이어서 cost function 에 대해서 다룰텐데, 좀 더 많은 예제를 통해 익힐 것이다. 내용 지난 시간에 배웠던 cost function 개념의 전반적인 내용을 정리하면 아래와 같다. 지난 시간에는 b를 0으로 세팅하여 간편하게 구했으나 이번엔 b에 다양한 값을 세팅하여 어떤 형태로 그려지는지 확인해보자 예를 들어 w = 0.06 이고 b = 50 인 f(x) 함수를 그린다고 했을 때 왼쪽 위 형태와 같이 나타내진다. 이 경우 데이터들과 그닥 밀착되어 있지 않으므로 좋은 linear regression model이 아니다. 그리고 이 경우 J(w) 함수는 단순히 이차원 포물선 함수가 아닌 삼차원으로 그려진다, 왜냐면 b의 값이 0이 아닌 값으로 대입되기 때문이다. 그래서 그림은 아.. 2023. 7. 6.
백준 문제풀이 정리 - 24262 문제내용 오늘도 서준이는 알고리즘의 수행시간 수업 조교를 하고 있다. 아빠가 수업한 내용을 학생들이 잘 이해했는지 문제를 통해서 확인해보자. 입력의 크기 n이 주어지면 MenOfPassion 알고리즘 수행 시간을 예제 출력과 같은 방식으로 출력해보자. MenOfPassion 알고리즘은 다음과 같다. MenOfPassion(A[], n) { i = ⌊n / 2⌋; return A[i]; # 코드1 } https://www.acmicpc.net/problem/24262 문제설명 MenOfPassion 코드에서 #코드1 을 수행했을 때의 횟수와, 시간복잡도 표현식인 Big O 표기법으로 나타냈을 때의 최고차항을 출력해야 하는 문제이다. 하나의 값을 가져올 때의 횟수는 1번이므로 어떤 값을 넣든 횟수는 1이다... 2023. 6. 29.
백준 문제풀이 정리 - 2798 문제 내용 카지노에서 제일 인기 있는 게임 블랙잭의 규칙은 상당히 쉽다. 카드의 합이 21을 넘지 않는 한도 내에서, 카드의 합을 최대한 크게 만드는 게임이다. 블랙잭은 카지노마다 다양한 규정이 있다. 한국 최고의 블랙잭 고수 김정인은 새로운 블랙잭 규칙을 만들어 상근, 창영이와 게임하려고 한다. 김정인 버전의 블랙잭에서 각 카드에는 양의 정수가 쓰여 있다. 그 다음, 딜러는 N장의 카드를 모두 숫자가 보이도록 바닥에 놓는다. 그런 후에 딜러는 숫자 M을 크게 외친다. 이제 플레이어는 제한된 시간 안에 N장의 카드 중에서 3장의 카드를 골라야 한다. 블랙잭 변형 게임이기 때문에, 플레이어가 고른 카드의 합은 M을 넘지 않으면서 M과 최대한 가깝게 만들어야 한다. N장의 카드에 써져 있는 숫자가 주어졌을 .. 2023. 6. 21.
1주차 도입부 - What is machine learning? Definition of machine learning by Arthur Samuel Field of study that gives computers the ability to learn without being explicitly programmed. 컴퓨터에게 명확히 프로그래밍한 것없이도 배울 수 있는 능력을 부여해주는 연구 분야 Arthur는 체스를 잘 못두는 사람이었다. 대신 컴퓨터 프로그램에게 수천개의 체스 게임을 시켰다. 어느 위치에 말을 두었을 때 이기는지 혹은 지는지를 학습하게 하였다. 학습 시킨 방법은 좋은 위치에 말을 두도록 하면서 안 좋은 위치에는 배치하지 않는 방식이었다. 프로그램은 수천 번의 게임을 반복하면서 학습을 거듭하였고 그 결과 이전보다 더 나은 플레이어, 심지어 Arthu.. 2023. 6. 18.
TodoList 구현 과정 설명 개요 todoList를 javascript로 구현하는 과정을 글로 정리함 구현 과정 각 UI 컴포넌트를 객체로 설계한 뒤 이에 대한 구현 코드를 작성하였음 컴포넌트 별로 UI를 분리한 것에 대해선 더 많은 설명이 필요하나 현재는 프론트엔드 단에서 UI 별로 인스턴스를 생성하여쓰는 것과 this를 쓰는 다양한 방법에 대해서 공유를 하기위해 목적임. 필요 과정 VSCODE 해당 프로젝트는 여러 javascript 소스를 분리하고 import 하는 방식으로 사용하였으므로 source 타입을 module로 지정하였음, 이에 따라 Live Server 플러그인을 설치하여 로컬 서버를 띄워야 화면에서 확인할 수 있음 Live Server 플러그인 설치 Live Server 플러그인 설치 후 index.html을 v.. 2023. 6. 2.