목록Computer & Data (155)
이야기박스
§ 지역성의 원칙 ( Principle of Locality )○ 시간적 지역성 ( temporal locality ): 만약 어떤 항목이 참조되면, 곧바로 다시 참조되기 쉬운 성질 ○ 공간적 지역성 ( spatial locality ): 어떤 항목이 참조되면, 그 근처에 있는 다른 항목들이 참조될 가능성이 높음 § 메모리 계층구조( Memory hierarchy ): 여러 계층의 메모리를 사용하는 구조. 프로세서로부터 거리가 멀어질수록 메모리의 크기와 접근 시간이 증가 § 용어○ 블록 (Block) : 캐시에 있을 수도 있고, 없을 수도 있는 정보의 최소 단위○ 적중률 (hit rate/ratio) : 메모리 계층구조의 특정 계층에서 찾을 수 있는 메모리 접근의 비율○ 실패율 (miss rate) : ..
Gradient Descent 방법: 미리 얻은 Cost Function 의 기울기를 이용--> 기울기 만큼 이동하는 방법 ==> 이를 각 원하는 값으로 편미분 ** 코드화 과정에서 주의할 점--> 값을 갱신할 때는 한번에 해줘야 함--> 그렇지 않으면 내가 원하는 값이 안나올 수도..
기계 학습 ( Machine Learning ) ○ 아이디어 --> 프로그램을 짜지 말고 학습시키자 ○ 정의- E ; Experience ( data )- T ; Task- P ; Performance measure ○ 분류- Supervised learning ( 교사 학습): 정답을 주는 경우--> 목표가 분명함 - Unsupervised learning ( 비교사 학습): 데이터는 주지만, 정답은 주지 않음--> 목표가 명확하지 않음 - Reinforcement learning ( 강화 학습 )- Recommender systems ( 추천 시스템 ) § Supervised Learning ( 교사 학습 )○ Classfication (분류)- 값이 명확할 때--> 예 : 개-고양이 / 남자-여자 ..
최적화 문제 (Optimazation Problem)--> TSP (Traveling Salesman Problem) 을 예로 설명--> 여러 대학을 모두 방문하는데 최단 거리는? (한번만 방문한다고 가정) ○ 최적화에서 고려할 점 - 목적 함수 : 차량으로 이동한 거리의 합- 해를 어떻게 표현할 것인가? : 방문한 대학 순서- 어떻게 최적화 할 것인가? ○ 방법- 전수 조사- 랜덤 탐색- Greedy 탐색- Hill Climbing- Genetic Algorithm --> 전수 조사, 랜덤 탐색, Greedy 탐색은 생략 (기본적인 내용이므로) ○ Hill-climbing- 초기에 랜덤값을 줌--> 경사를 이동하며 탐색--> 지역적으로는 최적화된 값을 찾을 수 있다.--> 하지만 전역적으로 최적화된 값..
길 찾기 시나리오 아주 중요합니다.문제를 통해 공부합시다. Question. Goal에 도달하기 위한 방법은? Solutions ○ BFS (Breadth First Search): 기본적인 방식- 그래픽 알고리즘의 넓이 우선 방식 - 짧은 경로라면 문제 없음- 너무 많은 셀을 검색하기 때문에 비용이 큼 ○ A*: Heuristic search algorithm--> 근사할 수 있는 알고리즘--> 시작 노드와 골 노드를 이용하여 짧은 거리를 계산해나간다.--> h(n) : n으로부터 골 까지의 거리 --> 두 개의 측정법 사용- Euclidean distance- Manhatten distance ○ 두 탐색 방법 비교 ○ 기타 탐색 방법 - 직접 시뮬레이션 : 링크- 지도 사례 : 링크- 슈퍼 마리오 ..
§ MCTS ( Monte- Carlo Tree Search)* 몬테 카를로 : 공식이 없어도 시뮬레이션만 수행하면 풀 수 있다.( 대표적인 예 : 파이(3.141592...) - 랜덤 시뮬레이션으로 품 ) ==> 게임 트리를 성장시켜보며 시뮬레이션 하는 기법- Exploration (탐색) : 새로운 것을 찾는 것- Exploitation (활용) : 내가 알던 것을 활용하는 것이 둘 중, 무엇을 중요시 할 것인가에 대한 딜레마가 있다. ○ Bandit Problems : 슬롯 머신을 돌릴 때, 하나의 머신에서 하겟는가? 아니면 여러 머신에서 하겠는가?- UCB1 : 공식을 이용 --> 현실에서 가장 많이 사용- Flat Monte Carlo : 동일한 확률- e-Greedy (입실론 그리디) : e만..
게임 트리를 만약 끝까지 그린다고 하면?--> 용량이 너무 크기 때문에 메모리 에러가 남==> 그렇기 때문에, 중간에 평가함수를 사용한다. ○ MiniMax Algorithm- 평가 함수 사용- 플레이어가 어느 스테이트에서 플레이 하는지의 정보가 필요- 높은 MAX_DEPTH 값이, AI가 플레이하는 값 --> 속도 높이기 위해 : Alpha-Beta Pruning ○ Alpha-beta pruning: 평가하지 않아도 되는 것은 하지 않는다.--> 응답시간을 줄일 수 있다. alpha
Decesion Tree & Behavior TreeBehavior Tree 중점으로 공부 § Behavior Trees: 이해하기 쉬움!○ Task(node)로 구성 --> success / failure- Condition - leaf node- Action - leaf node- Composite - Internal node ○ Condition : 상태 체크 노드○ Action : 캐릭터의 액션과 같은 모든 액션, 대부분 success○ Composite : Condition-Action 조합- Sequence : 순차적으로 실행. 하나라도 실패하면 종료- Selector : 자식노드가 성공할 때까지(하나라도). 자식 노드가 모두 실패하면 실패* 더 있지만, 두 가지만 우선 다룸 ○ 예제- 문제 ..