반응형 분류 전체보기83 행렬 분해 (Matrix factorization) matrix factorization은 우리가 방정식을 인수분해 하는것처럼, 한 행렬을 두가지 이상 행렬의 곱으로 다시 분해하여 표현하는 것이다. 우리가 방정식을 인수분해 하면, 보이지 않았던 인수도 보이고, x값도 찾을 수 있는것처럼, 행렬도 분해를 하면 그 안에 숨겨진 데이터나 특징을 이용할 수 있다. LU factorization LU 분해는 비즈니스나 산업에 많이 쓰이는 방법중 하나다. 행렬을 하삼각행렬과 상삼각행렬 두 개의 곱으로 나타내는것이다. 상삼각, 하삼각 행렬은 그림에서 보다싶이 대각성분 기준으로 아래쪽 삼각형이 채워지면 하상각 반대면 상삼각이다. 왜 중요한가? 삼각형 형태로 만들면 앞서 배웠던 기본행렬 연산만 적용하면 되므로 계산하기가 쉽다. 그리고 우리가 합성함수 계산을 할때를 생각해.. 2023. 6. 15. 행렬 연산 (역행렬, 기본행렬) n차의 정사각행렬 A에 대하여 다음을 만족하는 행렬 B가 존재하면 A는 가역 (invertible, nonsingular)이라고 한다. AB = I = BA 이때 B를 A의 역행렬(inverse matrix)이라고 하며, 이러한 B가 존재하지 않으면 A는 비가역(noninvertible, singular)이라고 한다. 역행렬 존재 여부 > determinant 가 0이 아니어야 한다. A (nxn)이 가역일때 모든 b 에 대해서 Ax=b는 유일한 해를 갖는다. If A is an invertible (n x n) matrix, then for each b in Rn, the equation Ax = b has the unique solution x = A^(-1)b 항등행렬(단위행렬 - identity .. 2023. 6. 15. 벡터공간과 부분공간 더 확실히 이해하기(Vector spaces) https://jubrodev.tistory.com/10 대수구조 이해하기(추상대수학, 벡터공간) 선형대수학을 공부하다 대수학(추상대수학)에서 다루는 대수구조도 나오는데, 잘 이해가 가지 않아 정리하면서 공부하겠다. 대수학의 대는 큰 대(大)가 아니라 대신할 대(代)의 대수학이기 때문 jubrodev.tistory.com 저번시간에 대수구조를 알아보며 벡터공간을 배웠는데, 뒤로 더 갈수록 벡터공간에 대해 확실히 알고가야할거 같아서 다시한번 정리하고자 한다. 벡터공간 - 벡터를 다를 수 있는 공간. 벡터를 더하거나 실수배 할 수 있는 공간. 저번글 (위 링크) 에 쓴 벡터공간의 조건은 다음과 같다. ≪벡터공간의 조건≫ 1. (V, +)는 아벨군이다. - ( 즉 교환법칙, 항등원, 역원의 공리가 성립해야함... 2023. 6. 7. 대수구조 이해하기(추상대수학, 벡터공간) 선형대수학을 공부하다 대수학(추상대수학)에서 다루는 대수구조도 나오는데, 잘 이해가 가지 않아 정리하면서 공부하겠다. 대수학의 대는 큰 대(大)가 아니라 대신할 대(代)의 대수학이기 때문에, 수를 대신한다의 의미이다. 수를 대신한다는 의미는 무엇인가? 바로 수를 대신할 연산이나 일정 규칙의 공리인 것이다. 수학이 단순히 수 뿐만 아니라 수많은 연산규칙으로도 이루어진걸 보면 수를 대신한다는 의미를이해할 수 있을 것이다. 또한 우리가 초등학생때 미지수를 네모로 잡고, 중학생때는 그걸 x,y로 잡고 등등 하는것도 모두 대수의 의미를 활용하는 행위이다. 대수구조 선형대수학의 벡터공간도 하나의 대수구조이다. 반군 : 집합과 그 위의 결합법칙을 가지는 하나의 이항연산을 갖춘 대수구조. 여기서 이항연산은 두개의 항 .. 2023. 6. 2. C언어로 게임 만들기(7) - 완성. (코드, 구현 영상) https://jubrodev.tistory.com/8 C언어로 게임 만들기(6) - 점수 및 랭킹시스템(파일 입출력) https://jubrodev.tistory.com/6 C언어로 게임 만들기(5) - 게임 씬 추가(getch함수, exit함수) https://jubrodev.tistory.com/4 C언어로 게임 만들기(4) - 적 구현(rand함수, srand함수, time함수) https://jubrodev.tistory.com/3 C언 jubrodev.tistory.com 지난시간 점수와 랭킹시스템을 넣음으로써 C언어 게임만들기가 끝이 났다. 사실 자잘한 버그(이름 입력시 가끔 이름 중복 등) 이 있지만 게임자체에 지장이 안가기에 패스.... 이제 이 프로젝트를 놓아주려고 한다 ㅎㅎ 그리고 이.. 2023. 6. 2. C언어로 게임 만들기(6) - 점수 및 랭킹시스템(파일 입출력) https://jubrodev.tistory.com/6 C언어로 게임 만들기(5) - 게임 씬 추가(getch함수, exit함수) https://jubrodev.tistory.com/4 C언어로 게임 만들기(4) - 적 구현(rand함수, srand함수, time함수) https://jubrodev.tistory.com/3 C언어로 게임 만들기(3) - 총알 발사 및 정보표시 지난 시간에는 캐릭터 이동까지 구현 jubrodev.tistory.com 저번시간에 사실상 게임의 모든 구조는 다 완성했다. 이제 부가적으로 조금 더 욕심을 내자면, 점수 기능을 추가해서 랭킹시스템을 만들 것이다. 점수 시스템 구성 점수는 간단하게 main함수 안에 count++을 해줘서 올려주고 1 2 3 4 5 6 7 8 9 1.. 2023. 6. 1. 행렬 용어정리(Matrix) 성분 = 행렬안에 배열된 구성원(=향=원소) 행 = 가로줄 / 열 = 세로줄 i는 행, j는 열을 나타낸다. i,j 수가 크면 행렬사이 ,를 쓰기도 한다. 주대각선 = 행렬의 왼쪽 위에서 오른쪽 아래를 가르는 선 대각성분 = 주대각선에 걸치는 행과, 열의 지표수가 같은 성분 (i와 j 성분이 같은 항) 영행렬 = 모든 성분이 0인 행렬 전치행렬A^(T) = a_ij에 대해 a_ji인 행렬(주대각선을 기준으로 선대칭시킨 행렬) 위 A행렬을 주대각선 기준으로 선대칭 하면 위와같은 행렬이 된다. 대칭행렬 = 처음 행렬과 전치행렬이 같은 행렬 정사각행렬 = 행, 열의 개수가 같은 행렬 단위행렬 = 모든대각성분이 1이고, 그 외의 성분은 0인 정사각행렬 2023. 5. 31. C언어로 게임 만들기(5) - 게임 씬 추가(getch함수, exit함수) https://jubrodev.tistory.com/4 C언어로 게임 만들기(4) - 적 구현(rand함수, srand함수, time함수) https://jubrodev.tistory.com/3 C언어로 게임 만들기(3) - 총알 발사 및 정보표시 지난 시간에는 캐릭터 이동까지 구현했다. C언어 게임 만들기(2) - 캐릭터 출력 및 이동 https://jubrodev.tistory.com/1 C언어로 게 jubrodev.tistory.com 저번시간엔 적 구현까지 끝냈습니다. 사실 게임의 메인화면은 구성이 다 끝난것이죠, 근데 처음 시작메뉴화면이랑, 게임오버 화면을 만들며 더 부족한 부분을 수정하려고 합니다!! 게임시작 화면 화면전환은 쉽습니다. Unity의 Scene order처럼, 각 화면에 해당하는.. 2023. 5. 28. 다재다능한 윈도우 내장 계산기!!(그래프 그리는 계산기, 공학용 계산기) 대학 수학(미분적분학, 선형대수학, 일반물리학 등등) 수학 및 공학 공부를 할 때, 공학용 계산기가 필요하다던가 아니면 그래프 그리는 기능이 필요한 경우가 있다. 일단 흔한 사이트 및 앱은? Desmos : https://www.desmos.com/calculator?lang=ko Algebra : https://www.geogebra.org/3d?lang=ko 위 두 사이트, 물론 앱으로도 있다. 윈도우 계산기 하지만 매번 사이트 들어가기도 귀찮을때? 윈도우 내장 계산기에도 이 모든걸 지원해준다는 사실! 일단 본인은 윈도우 10을 쓰는데, 여느 윈도우던 기본 계산기가 다 있을것이다. 왼쪽 위의 메뉴를 눌러보면 우리가 필요로 하는 공학용 계산기, 그래프 계산기 말고도 여러 모드의 계산기 및 변환기가 있다.. 2023. 5. 23. C언어로 게임 만들기(4) - 적 구현(rand함수, srand함수, time함수) https://jubrodev.tistory.com/3 C언어로 게임 만들기(3) - 총알 발사 및 정보표시 지난 시간에는 캐릭터 이동까지 구현했다. C언어 게임 만들기(2) - 캐릭터 출력 및 이동 https://jubrodev.tistory.com/1 C언어로 게임 만들기(1) - (콘솔창 세팅, window.h, conio.h) 학교 동아리 프로젝트에서 C jubrodev.tistory.com 지난 시간에는 총알 구현과 UI 표시를 하였다. 오늘은 이제 적을 구현해볼거다! 난수생성 랜덤함수 - rand(), srand(), time() 오늘 중점적으로 이용할 함수는 rand()함수 이다. rand함수란? 0 부터 RAND_MAX사이의 정수를 반환해준다. RAND_MAX는 stdio.h에 정의된 상수.. 2023. 5. 20. 이전 1 ··· 5 6 7 8 9 다음