예시를 통해 t-SNE를 이해해보자. 특징에 기반해 동물 유형을 시각화 하는 예시다. 다양한 동물의 데이터 집합이 있고 각 동물에 대해 체중, 키, 수명, DNA 유사성 등 100개의 서로 다른 특징을 측정해 100차원 공간을 만든다고 가정해보자. 우리의 목표는 이러한 특징을 기반으로 국소적 유사성을 유지하면서 2D 공간에서 이러한 동물들이 서로 어떻게 관련되어 있는지를 시각화 하는 것이다. 고차원 유사성 : "고양이"라는 한 동물을 선택해 보자. 데이터 세트의 다른 모든 동물에 대해 해당 동물이 얼마나 "고양이"와 유사한지를 나타내는 확률을 계산하고, 이 유사성은 100차원 공간에서 "고양이"와 다른 모든 동물 사이의 유클리트 거리를 기반으로 한다. 예를 들어, "고양이"와 "호랑이"와 같은 두 동물이..
이전 포스팅에서 설명한 SNE (Stochastic Neighbor Embedding) 의 업그레이트 버전으로, 고차원 데이터의 축소 및 시각화를 위해 설계된 Machine Learning 알고리즘이다. 특히, 기본 구조를 고차원으로 인식하기 어려울 수 있는 데이터 집합을 시각화하는 데 적합하다. 고안된 동기 : PCA 같은 차원 축소를 위한 많은 기법이 있지만, t-SNE는 특히 로컬 구조를 보존하도록 설계됐다. 즉, 고차원 공간에서 서로 가까운 점은 저차원 공간에서도 가깝게 유지되는 경향이 있다. 동작 방식 : 고차원 공간에서 쌍별 유사성 (pairwise similarities) 를 계산하는 것으로 시작한 다음, 고차원 포인트 쌍에 대한 확률 분포를 구성해 유사한 포인트가 선택될 확률이 높아지도록 ..
고차원 데이터의 차원 축소 및 시각화를 위해 많이 사용되는 t-SNE (Machine Learning 알고리즘)을 살펴보기에 앞서, 이전 버전이라고 할 수 있는 SNE (Stochastic Neighbor Embedding)에 대해 알아보자. SNE는 t-SNE와 마찬가지로, 고차원 데이터의 차원 축소 및 시각화를 위한 기법으로, 주요 목표는 고차원 공간에서 저차원 공간으로 데이터를 매핑할 때 로컬 구조를 보존하는 것이다. 고차원 공간과 저차원 공간의 두 가지 확률 분포 사이의 차이를 최소화 하여 이를 수행한다. 동작 방식 : 고차원 공간의 각 데이터 포인트 쌍에 대해 SNE는 해당 포인트의 유사성을 나타내는 조건부 확률을 계산한다. 이 작업은 특정 지점을 중심으로 Gaussian centered을 사용..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/ddaR2z/btswJBHbqlu/3dr5wFGpi7GMKL6iHd3iM0/img.png)
TF-IDF (Terms Frequency-Inverse Document Frequency) 는 흔히 "말뭉치"라고 불리는 문서 모음과 비교해 문서에서 단어의 중요도를 평가하는 데 사용되는 통계적 척더로, 한 문서에서는 흔하지만 전체 말뭉치에서는 드문 단어가 중요할 가능성이 높다는 것이 TF-IDF의 기본 개념이다. TF-IDF는 두 가지로 구성되는데 바로 TF (Terms Frequency, 용어 빈도) 와 IDF (Inverse Document Frequency, 역문서 빈도) 다. TF : 문서에서 용어가 얼마나 자주 나타나는지를 측정한다. IDF : 모든 문서에서 단어가 얼마나 드물거나 흔한지를 측정한다. 많은 문서에 나타나는 단어는 적은 문서에서 나타나는 단어보다 IDF가 낮다. TF-IDF =..
NLP (Natural Language Processing, 자연어 처리) 연구를 위해 특정한 목적을 가지고 언어의 표본을 추출한 집합. 예를 들어, 아래의 Corpus가 사용되는 문맥을 살펴보자. TF-IDF (Terms Frequency-Inverse Document Frequency) 는 "Corpus (말뭉치)"라고 불리는 문서 모음과 비교해 문서에서 단어의 중요도를 평가하는 데 사용되는 통계적 척도다. 한 문서에서는 흔하지만 말뭉치 전체에서는 드물게 사용되는 단어가 중요할 가능성이 높다는 것이 기본 개념. TF-IDF stands for "Term Frequency-Inverse Document Frequency." It's a statistical measure used to evaluate ..
![](http://i1.daumcdn.net/thumb/C148x148.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/VjVO1/btswpWx8K9D/Zi8EBk1NTJCvMpEhe70l0k/img.png)
우선 Graphics Pipeline의 정의에 대해 살펴보면, 전달된 그래픽 데이터를 3D 표현에서 스크린 위에 2D 픽셀로 변형하는 연속된 단계를 말하고, 요즘엔 기존 Fixed-function pipelines가 아닌 Programmable Graphics Pipeline이 사용된다. 한 교수는 Programmable Graphics Pipeline을 vertex/line/triangle의 3D 데이터에서 2D 스크린으로의 여정으로 표현한다. Programmable Graphics Pipeline은 이전에 사용된 Fixed-function pipelines와 비교해 그래픽 하드웨어가 데이터를 처리하는 방식에 변화를 가져왔다. Fixed-function pipelines 시대에는 개발자가 그래픽 하드웨..
UV mapping은 3D 오브젝트에 2D texture를 적용하는 컴퓨터 그래픽 기법이다. "U"와 "V"는 2D 공간의 축으로, 3D 공간의 "X"와 "Y"와 유사하다. 3D 기하학 구조의 각 vertex는 2D texture의 해당 지점에 mapping 되며, 일반적으로 (u, v) 좌표로 지정한다. UV mapping 과정은 재단사가 천을 자르고 펴는 것처럼 3D 오브젝트의 표면을 잘라내 2D 평면에 배치할 수 있도록 평평하게 만드는 작업으로 비유할 수 있다. 그런 다음 이러한 mapping을 사용해 2D texture를 3D 오브젝트에 다시 "재봉"하여 렌더링할 때 texture가 오브젝트의 윤곽을 따라갈 수 있도록 한다. UV mapping의 핵심 포인트: UV Coordinates (UV 좌..
vertex shader의 주요 작업을 세분화 해보자. Transforming Vertex Postion (vertex 위치 변환) : 가장 일반적인 작업은 vertex 위치를 오브젝트 공간 (각 오브젝트가 자체 원점을 기준으로 정의되는 곳)에서 클립 공간 (화면에서 표시된 공간) 으로 변환하는 것. vertex 위치에 model, view, projection 등 여러 변환 행렬을 곱하는 작업이 포함. Normalizing Texture Coordinates (texture 좌표 정규화) : texture 좌표는 texture 모델의 경우 (0, 0)에서 (1, 1)까지로, 때로는 이러한 좌표가 vertex sahder에서 변환되거나 스케일링 될 수 있지만, 이 작업은 애플리케이션에 따라 선택적이다. ..
vertex shader는 컴퓨터 그래픽에서 3D 모델의 vertex 데이터를 조작하는 데 사용되는 shader 프로그램의 한 유형이다. vertex shader는 모델의 각 vertex에 대해 실행되며 vertex 위치 변환 (transforming the vertex position), texture 좌표 정규화 (normalizing texture coordinates) 및 기타 vertex별 작업 수행 (carrying out other per-vertex operations) 등을 수행한다. vertex shader의 출력은 일반적으로 특정 pipeline 구성에 따라 geometry shader와 같은 rendering pipeline의 다음 단계로 전달되거나 fragment shaer로 직접..
- Total
- Today
- Yesterday
- machine learning
- Python
- 딕셔너리
- The Economist
- Hash Map
- I2C
- 소켓 프로그래밍
- DICTIONARY
- vertex shader
- 안드로이드
- 티스토리챌린지
- The Economist Espresso
- 파이썬
- 리트코드
- 투 포인터
- join
- socket programming
- C++
- 오블완
- Android
- min heap
- Computer Graphics
- ml
- tf-idf
- 머신 러닝
- java
- 이코노미스트
- leetcode
- defaultdict
- 이코노미스트 에스프레소
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |