728x90

전체 글 368

[해외축구] UEFA 챔피언스리그 4강 진출팀 (+ 일정)

챔피언스리그 8강 1, 2차전 경기가 모두 끝이 났다. 8강 시작하기 전에 예측했던 3팀이 4강에 갔고, 1차전 이후에 예측했던 4팀 모두 4강에 진출했다. 4강은 생각보다 재미있게 흘러갈 것 같다. 그럼 4강에 진출했던 레알마드리드, 맨체스터 시티, AC밀란, 인테르 8강 경기를 살펴보자. ▶맨체스터 시티 vs 바이에른 뮌헨 1차전 3대 0 (맨시티 승) 2차전 1대 1 (무승부) 1차전에서 3골 차로 이긴 맨시티는 2차전을 더욱 편하게 할 수 있었다. 1, 2골 차였다면 경기가 어떻게 흘러갔을지 몰랐겠지만, 3골 차라 무난하게 맨시티가 4강에 진출할 것 같았다. 게다가 선취골도 맨시티가 먼저 넣었다. 홀란드, 그는 도대체 어떤 사람인가... 멀티골이 아닌 단 한골이지만, 이번 경기에서도 골을 기록했다..

[인공지능] 1, 2장. 인공지능 (1, 2장 볼만한 내용)

복습하기 위해 학부 수업 내용을 필기한 내용입니다. 이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다. 그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다. ▶1.5.2 규칙 기반 방법론 vs 기계학습 방법론 규칙 기반 방법론 - 사람이 사용하는 규칙을 수집해 프로그래밍 - ex) 필기 숫자 인식 프로그램 - 숫자 3은 '왼쪽에서 보면 위와 아래에 터진골이 있다. 등...'와 같은 규칙을 수집한다. - 한계 노출 - 비슷한 모양을 가진 데이터에 대해 규칙을 위반하는 샘플이 꾸준히 발생한다. 기계학습 방법론 - 인공지능 초반에 규칙 기반이 대세였으나 1990년부터 기계학습으로 주도권이 이동했다. - 충분한 데이터를 수집한 다음 기계학습 모들을 학습하는 방법(데이터-주도 패러다임) - ..

[백준/BOJ] silver1 - 5525번 IOIOI (Python)

▶5525 - IOIOI ▶문제 N+1개의 I와 N개의 O로 이루어져 있으면, I와 O이 교대로 나오는 문자열을 PN이라고 한다. P1 IOI P2 IOIOI P3 IOIOIOI PN IOIOI...OI (O가 N개) I와 O로만 이루어진 문자열 S와 정수 N이 주어졌을 때, S안에 PN이 몇 군데 포함되어 있는지 구하는 프로그램을 작성하시오. ▶입력 첫째 줄에 N이 주어진다. 둘째 줄에는 S의 길이 M이 주어지며, 셋째 줄에 S가 주어진다. ▶출력 S에 Pn이 몇 군데 포함되어 있는지 출력한다. ▶서브태스크 번호 배점 제한 1 50 N ≤ 100, M ≤ 10 000. 2 50 추가적인 제약 조건이 없다. ▶풀이 처음에는 n에 해당하는 string을 찾아서 기록한 다음, 하나씩 비교해 보았다. 통과는 ..

[백준/BOJ] silver4 - 17219번 비밀번호 찾기 (Python)

▶17219 - 비밀번호 찾기 ▶문제 2019 HEPC - MAVEN League의 "비밀번호 만들기"와 같은 방식으로 비밀번호를 만든 경민이는 한 가지 문제점을 발견하였다. 비밀번호가 랜덤으로 만들어져서 기억을 못 한다는 것이었다! 그래서 경민이는 메모장에 사이트의 주소와 비밀번호를 저장해 두기로 했다. 하지만 컴맹인 경민이는 메모장에서 찾기 기능을 활용하지 못하고 직접 눈으로 사이트의 주소와 비밀번호를 찾았다. 메모장에 저장된 사이트의 수가 늘어나면서 경민이는 비밀번호를 찾는 일에 시간을 너무 많이 쓰게 되었다. 이를 딱하게 여긴 문석이는 경민이를 위해 메모장에서 비밀번호를 찾는 프로그램을 만들기로 결심하였다! 문석이를 도와 경민이의 메모장에서 비밀번호를 찾아주는 프로그램을 만들어보자. ▶입력 첫째 ..

[인공지능] 6장. 컨볼루션 신경망과 컴퓨터 비전3

복습하기 위해 학부 수업 내용을 필기한 내용입니다. 이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다. 그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다. ▶6.4 컨볼루션 신경망 프로그래밍 6.4.3 패션 인식 6.4.4 자연 영상 인식 딥러닝 프로그래밍에서 주로 사용하는 자연 영상 데이터베이스 - ImageNet - MSCoCo - CIFAR : 작아서 MNIST 다음에 주로 사용한다. CIFAR-10 - airplace, automobile, bird, cat, deer, dog, frog, horse, ship, truck의 10종류 - 영상은 32*32 맵으로 표현한다. CIFAR을 인식하는 컨볼루션 신경망 - CIFAR-10은 텐서 구조가 이미 (32*32*3)이어서 r..

[해외축구] UEFA 챔피언스리그 8강 1차전

뒤늦은 후기이긴 하지만 이어서 써보려고 한다. 레알 마드리드, 인테르, 맨시티, 나폴리가 4강에 진출할 것으로 예상했었다. 1차전 경기 결과만 놓고 봤을 땐 한 경기를 제외하고는 다 맞춘 셈이다. ▶맨체스터 시티 vs 바이에른 뮌헨 1차전 3대 0 (맨시티 승) 거의 미리 보는 결승과도 같은 대진이었다. 현 프리미어리그 2위와 분데스리가 1위의 맞대결. 이번 4강 1차전은 맨시티의 압승으로 끝났다. 맨시티의 홈구장인 에티하드 스타디움에서 경기가 펼쳐졌고, 로드리, 베실바, 홀란드의 골로 맨시티가 승리를 거두었다. 로드리의 원더골로 맨시티는 앞서나갈 수 있었다. 베실바의 패스를 받아서, 한 명의 선수를 제친 후 왼발슛. 강력한 슈팅으로 에티하드 스타디움을 열광하게 만들었다. 어시스트를 기록한 베실바가 홀란..

[인공지능] 6장. 컨볼루션 신경망과 컴퓨터 비전2

복습하기 위해 학부 수업 내용을 필기한 내용입니다. 이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다. 그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다. ▶6.3 컨볼루션 신경망의 학습 컨볼루션 신경망은 커널을 학습한다. 6.3.1 손실 함수와 옵티마이저 손실 함수 - 다층 퍼셉트론과 컨볼루션 신경망은 중간층이 다르지만 입력과 출력은 동일하므로 같은 손실함수를 사용한다. 옵티마이저 - 다층 퍼셉트론은 엣지 가중치, 컨볼루션 신경망은 커널의 화소 값을 최적화한다는 점만 다르다. - 학습 원리는 동일하므로 같은 옵티마이저를 사용한다. 6.3.2 통째 학습 (End-to-End) 고전적인 컴퓨터 비전은 수작업 특징을 사용한다. - 사람의 직관으로 설계하기 때문에 어느 정도 성능 달성 ..

[인공지능] 6장. 컨볼루션 신경망과 컴퓨터 비전1

복습하기 위해 학부 수업 내용을 필기한 내용입니다. 이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다. 그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다. ▶6.1 컨볼루션 신경망의 동기와 전개 ▶6.2 컨볼루션 신경망의 구조와 동작 6.2.1 컨볼루션 연산으로 특징 맵 추출 컨볼루션(convolution) 연산 - 특징 추출 또는 신호 변환에 사용한다. - 수용장(파란 부분)과 커널의 선형 결합이다. - z는 입력 신호, u는 커널, h는 커널의 크기 Extra. Convolution convolution - Flip the filter in both dimentions (bottom to top, right to left) - Then apply cross-correlation..

[백준/BOJ] gold4 - 9019번 DSLR (Python)

▶9019 - DSLR ▶문제 네 개의 명령어 D, S, L, R을 이용하는 간단한 계산기가 있다. 이 계산기에는 레지스터가 하나 있는데, 이 레지스터에는 0 이상 10,000 미만의 십진수를 저장할 수 있다. 각 명령어는 이 레지스터에 저장된 n을 다음과 같이 변환한다. n의 네 자릿수를 d1, d2, d3, d4라고 하자(즉 n = ((d1 × 10 + d2) × 10 + d3) × 10 + d4라고 하자) D: D는 n을 두 배로 바꾼다. 결과 값이 9999 보다 큰 경우에는 10000으로 나눈 나머지를 취한다. 그 결과 값(2n mod 10000)을 레지스터에 저장한다. S: S는 n에서 1을 뺀 결과 n-1을 레지스터에 저장한다. n이 0이라면 9999 가 대신 레지스터에 저장된다. L: L 은..

BOJ Code/Gold 2023.04.13

[인공지능] 5장. 딥러닝과 텐서플로3

복습하기 위해 학부 수업 내용을 필기한 내용입니다. 이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다. 그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다. ▶5.7 딥러닝이 사용하는 손실 함수 시험 점수의 역할 - 점수가 낮은 학생에게 F학점 또는 낙방과 같은 벌점을 부여하면 자신을 성찰하고 더 열심 히 공부할 동기 부여 - 점수가 낮거나 높거나 비슷한 벌점을 받으면 공정성이 깨지고 공부 의욕을 꺾는다. 신경망 학습도 비슷하다. - 신경망 가중치가 학생, 손실 함수가 시험 점수에 해당한다. 5.7.1 평균제곱오차 샘플 하나의 오류 - 레이블 y와 신경망이 예측한 값 o의 차이 - e = || y - o || ^ 2 평균제곱오차(MSE, mean-squared error) - 통계학..

[백준/BOJ] gold4 - 1261번 알고스팟 (Python)

▶1261 - 알고스팟 ▶문제 알고스팟 운영진이 모두 미로에 갇혔다. 미로는 N*M 크기이며, 총 1*1 크기의 방으로 이루어져 있다. 미로는 빈 방 또는 벽으로 이루어져 있고, 빈 방은 자유롭게 다닐 수 있지만, 벽은 부수지 않으면 이동할 수 없다. 알고스팟 운영진은 여러 명이지만, 항상 모두 같은 방에 있어야 한다. 즉, 여러 명이 다른 방에 있을 수는 없다. 어떤 방에서 이동할 수 있는 방은 상하좌우로 인접한 빈 방이다. 즉, 현재 운영진이 (x, y)에 있을 때, 이동할 수 있는 방은 (x+1, y), (x, y+1), (x-1, y), (x, y-1)이다. 단, 미로의 밖으로 이동할 수는 없다. 벽은 평소에는 이동할 수 없지만, 알고스팟의 무기 AOJ를 이용해 벽을 부수어 버릴 수 있다. 벽을 ..

BOJ Code/Gold 2023.04.12

[인공지능] 5장. 딥러닝과 텐서플로2

복습하기 위해 학부 수업 내용을 필기한 내용입니다. 이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다. 그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다. ▶5.5 깊은 다층 퍼셉트론 다층 퍼셉트론에 은닉층을 더 많이 추가하면 깊은 다층 퍼셉트론이다. - 깊은 다층 퍼셉트론은 가장 쉽게 생각할 수 있는 딥러닝 모델이다. - 그리고 은닉층 1개만 있어도 다층 퍼셉트론이다. 5.5.1 구조와 동작 깊은 다층 퍼셉트론(DMLP - deep MLP)의 구조 - L - 1개의 은닉층이 있는 L층 신경망이다. - 입력층에 d + 1개의 노드, 출력층에 c개의 노드가 있다. - i번째 은닉층에 ni개의 노드가 있다. (ni는 하이퍼 매개변수) - 인접한 층은 완전 연결, 즉 FC(fully-c..

[백준/BOJ] gold2 - 1167번 트리의 지름 (Python)

▶1167 - 트리의 지름 ▶문제 트리의 지름이란, 트리에서 임의의 두 점 사이의 거리 중 가장 긴 것을 말한다. 트리의 지름을 구하는 프로그램을 작성하시오. ▶입력 트리가 입력으로 주어진다. 먼저 첫 번째 줄에서는 트리의 정점의 개수 V가 주어지고 (2 ≤ V ≤ 100,000) 둘째 줄부터 V개의 줄에 걸쳐 간선의 정보가 다음과 같이 주어진다. 정점 번호는 1부터 V까지 매겨져 있다. 먼저 정점 번호가 주어지고, 이어서 연결된 간선의 정보를 의미하는 정수가 두 개씩 주어지는데, 하나는 정점번호, 다른 하나는 그 정점까지의 거리이다. 예를 들어 네 번째 줄의 경우 정점 3은 정점 1과 거리가 2인 간선으로 연결되어 있고, 정점 4와는 거리가 3인 간선으로 연결되어 있는 것을 보여준다. 각 줄의 마지막에..

BOJ Code/Gold 2023.04.11

[인공지능] 5장. 딥러닝과 텐서플로1

▶5.1 딥러닝의 등장 1980년대의 깊은 신경망 - 구조적으로는 쉬운 개념이다. - 다층 퍼셉트론에 은닉층을 많이 두면 깊은 신경망 - 하지만 학습이 잘 안 된다. - 그레이디언트 소멸 문제 - 작은 데이터셋 문제 - 과다한 계산 시간 5.1.1 딥러닝의 기술 혁신 딥러닝은 새로 창안된 이론이나 원리는 빈약하다. - 신경망의 구조와 동작, 학습 알고리즘의 기본 원리는 거의 동일하다. 딥러닝의 기술 혁신 요인 - 값싼 GPU 등장 - 데이터셋 커짐 - 학습 알조리즘의 발전 - ReLU 활성 함수 - 구제 기법 - 다양한 손실 함수와 옵티마이저 개발 학술적인 측면의 혁신 사례 - 컨볼루션 신경망이 딥러닝의 가능성을 열었다. - 1990년대 LeCun은 필기 숫자에서 획기적인 성능 향상 - AlexNet은 ..

[백준/BOJ] gold4 - 1967번 트리의 지름 (Python)

▶1967 - 트리의 지름 ▶문제 트리(tree)는 사이클이 없는 무방향 그래프이다. 트리에서는 어떤 두 노드를 선택해도 둘 사이에 경로가 항상 하나만 존재하게 된다. 트리에서 어떤 두 노드를 선택해서 양쪽으로 쫙 당길 때, 가장 길게 늘어나는 경우가 있을 것이다. 이럴 때 트리의 모든 노드들은 이 두 노드를 지름의 끝 점으로 하는 원 안에 들어가게 된다. 이런 두 노드 사이의 경로의 길이를 트리의 지름이라고 한다. 정확히 정의하자면 트리에 존재하는 모든 경로들 중에서 가장 긴 것의 길이를 말한다. 입력으로 루트가 있는 트리를 가중치가 있는 간선들로 줄 때, 트리의 지름을 구해서 출력하는 프로그램을 작성하시오. 아래와 같은 트리가 주어진다면 트리의 지름은 45가 된다. 트리의 노드는 1부터 n까지 번호가..

BOJ Code/Gold 2023.04.10

[백준/BOJ] gold5 - 10026번 적록색약 (Python)

▶10026 - 적록색약 ▶문제 적록색약은 빨간색과 초록색의 차이를 거의 느끼지 못한다. 따라서, 적록색약인 사람이 보는 그림은 아닌 사람이 보는 그림과는 좀 다를 수 있다. 크기가 N×N인 그리드의 각 칸에 R(빨강), G(초록), B(파랑) 중 하나를 색칠한 그림이 있다. 그림은 몇 개의 구역으로 나뉘어져 있는데, 구역은 같은 색으로 이루어져 있다. 또, 같은 색상이 상하좌우로 인접해 있는 경우에 두 글자는 같은 구역에 속한다. (색상의 차이를 거의 느끼지 못하는 경우도 같은 색상이라 한다) 예를 들어, 그림이 아래와 같은 경우에 RRRBB GGBBB BBBRR BBRRR RRRRR 적록색약이 아닌 사람이 봤을 때 구역의 수는 총 4개이다. (빨강 2, 파랑 1, 초록 1) 하지만, 적록색약인 사람은..

BOJ Code/Gold 2023.04.10

[인공지능] 4장. 신경망 기초3

복습하기 위해 학부 수업 내용을 필기한 내용입니다. 이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다. 그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다. ▶4.7 다층 퍼셉트론 퍼셉트론은 선형이라는 한계 - 선형 분리 불가능한 데이터에서는 높은 오류율을 가진다. 4.7.1 특징 공간 변환 퍼셉트론 두 개로 특징 공간을 세 개의 부분 공간으로 나눌 수 있다. 두 퍼셉트론을 병렬로 결합하면 (x1, x2) 공간을 (z1, z2) 공간으로 변환할 수 있다. 새로운 공간 (z1, z2)의 흥미로운 특성 - 선형 분리 불가능하던 네 점이 선형 분리가 가능해진다. - 퍼셉트론을 하나 더 쓰면 XOR 문제를 푸는 신경망이 완성된다. 신경망을 공간 변환기로 볼 수 있다. - 원래 특징 공간을 ..

[인공지능] 4장. 신경망 기초2

복습하기 위해 학부 수업 내용을 필기한 내용입니다. 이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다. 그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다. ▶4.4 퍼셉트론 학습 알고리즘 4.4.2 경사 하강법(gradient descent)의 원리 학습 알고리즘은 J의 최저점 w를 찾아야 한다. 학습 규칙 유도 - 경사 하강법은 미분을 이용해 최적해를 찾는 기법이다. - 미분값 ∂J / ∂w1의 반대 방향이 최적해에 접근하는 방향이므로 현재 w1에 -∂J / ∂w1를 더하면 최적해에 가까워진다. - 방향은 알지만 얼마만큼 가야 하는지에 대한 정보가 없기 때문에 학습률 p를 곱하여 조금씩 이동한다. - p는 하이퍼 매개변수로서 보통 0.001이나 0.0001처럼 작은 값을 사용한다..

[인공지능] 4장. 신경망 기초1

복습하기 위해 학부 수업 내용을 필기한 내용입니다. 이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다. 그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다. ▶4.1 인공 신경망의 태동 인공 신경망은 생물 신경망에서 영감을 얻었지만 실제 구현은 다르다. - 컴퓨터의 작동 원리가 생물의 작동원리와 근본적으로 다르기 때문이다. 4.1.1 생물 신경망 사람의 뇌와 컴퓨터 - 뉴런은 뇌의 정보처리 단위로서 연산을 수행하는 세포체이다. - 처리한 정보를 다른 뉴런에 전달하는 축삭, 다른 뉴런으로부터 정보를 받는 수상돌기로 구성되어 있다. - 사람 뇌는 10^11개가량의 뉴런, 뉴런마다 1000개가량의 연결이 있다. -> 고도의 병렬 처리기 - 반면에 폰 노이만 컴퓨터는 아주 빠른 순차 명령어..

[인공지능] 3장. 기계 학습과 인식2

복습하기 위해 학부 수업 내용을 필기한 내용입니다. 이해를 제대로 하지 못하고 정리한 경우 틀린 내용이 있을 수 있습니다. 그러한 부분에 대해서는 알려주시면 정말 감사하겠습니다. ▶3.5 필기 숫자 인식 sklearn이 제공하는 fit 함수로 모델링(학습)한다. predict 함수로 예측한다. 3.5.1 화소 값을 특징으로 사용 화소 각각을 특징으로 간주한다. - sklearn의 필기 숫자는 8*8 맵으로 표현되므로 64차원 특징 벡터이다. - 2차원 구조를 1차원 구조로 변환한다. from sklearn import datasets from sklearn import svm digit = datasets.load_digits() # svm의 분류기 모델 SC를 학습 s = svm.SVC(gamma=0...

728x90