분류 전체보기 663

[1-3 파이썬] 디버깅, debuging, debug

디버깅이라는 단어는? 'de+ bug' 버그를 빼내다는 뜻 1980년대에 일어났던 사건에서 유래했습니다. 어느날 한 프로그래머의 컴퓨터 안에 나방이 들어갔습니다. 그런데 이 나방으로 인해 컴퓨터에 오류가 생겼죠! 프로그래머가 짜놓은 코드가 컴퓨터 안에 들어간 나방 때문에 작동이 안되었고, 결국 프로그래머는 직접 컴퓨터를 분해하여 나방을 빼냈었다고 합니다. 디버깅이라는 단어의 뜻은, 프로그램 중 오류가 났다면 그 오류를 찾아내 문제를 해결하여 프로그램을 정상 작동하려는 것을 의미합니다. 실제 파이썬에서 코드 작성 중 오류가 나면 아래의 에러들이 뜹니다. 자세한 것은 다음 시간에 배워보겠습니다! syntax 구문 오류 indent 띄어쓰기 오류 EOF 마지막이 완료되지 않았다는 오류 ...

[1-2 파이썬] \n, 한줄씩 출력하기, 문자열 합치기, 공백

1. \n을 알아보겠습니다. \백슬래쉬를 키보드에서 찾아보면.. 아무리 찾아봐도 없습니다! / 반대는 있지만요! 이런 경우에는 아래의 글자를 찾으면 됩니다. 오늘은 백슬래시를 이용해서 한줄을 넘겨 출력하는 방법을 알려드리겠습니다. 아래와 같은 문장을 출력하고자 한다면 Life is wonderful. 끊어주고싶은 곳에 \n을 넣어줍니다. print("Life\nis\nwonderful.") 2. 문자열 합쳐봅시다. 만약에 Life와 is와 wonderful 각각의 문자열을 합치고 싶다면 어떻게 해야할까요? "Life" "is" "wonderful" 단어에 각각 따옴표를 붙여서 +로 더해주면 됩니다. "Life" + "is" + "wonderful" 그런데 이렇게 하는 경우에는 중간에 공백이 없이 모두 붙..

[1-1 파이썬] 출력, print(), string

파이썬을 시작하기 위해 아래의 3가지를 안내합니다. 첫째. 어떤 프로그램을 이용해서 코딩할 것인가? 기본 파이썬 에디터, 주피터, 코랩 등이 많지만 지금은 Replit 사이트를 추천해드리겠습니다. 구글아이디로 간단히 로그인만 하면 코딩을 하고, 출력물을 볼 수 있습니다. > create 버튼을 누르고 > 언어로 python을 선택하고 > create repl 버튼을 누릅니다. https://replit.com/ The collaborative browser based IDE Replit is a simple yet powerful online IDE, Editor, Compiler, Interpreter, and REPL. Code, compile, run, and host in 50+ programmi..

차원감소(dimensionality reduction), SVD

1. 차원감소 dimensionality reduction란? 차원감소 dimensionality reduction은 말 그대로 벡터의 차원을 줄이는 방법을 말합니다. 데이터의 양이 너무 방대할 때, 행렬 내부 원소의 대부분이 0이거나(sparse matrix) 중요도가 낮을 때, 벡터의 차원을 줄이게 됩니다. 이때, 단순히 물질적으로 공간을 축소하는 것이 아니라 중요한 정보는 최대한 유지하면서 줄이는 것이 핵심입니다. 아래의 그림처럼 데이터의 분포를 고려해 중요한 '축'을 찾는 일을 수행합니다. 2. SVD 특잇값분해 차원을 감소시키는 방법 중, 특이값 분해 SVD(Singular Value Decomposition)을 이용하겠습니다. SVD는 임의의 행렬을 세 행렬의 곱으로 분해합니다. U, V는 직..

점별 상호정보량 Pointwise Mutual information(PMI)

1. PMI(Pointwise Mutual information)정의하기 pointwise: 점별의, 즉 주어진 집합의 각점에서 일어나는 경우 mutual: 상호간, 서로의 information: 정보 이를 통해 PMI는 각 벡터에서 일어나는 정보 뿐만이 아니라, 벡터들 간 동시에 일어나는 정보 모두를 고려한다는 것을 유추할 수 있습니다. 2. 식으로 구현하기 PMI는 확률변수 x와 y에 대해 다음 식으로 정의됩니다. P(x,y) 는 x,y가 말뭉치에 동시에 등장할 확률 P(x) x가 말뭉치에 등장할 확률 P(y) y가 말뭉치에 등장할 확률 을 뜻합니다. PMI값이 높다면? 이는 x,y 가 관련이 높다는 것을 뜻합니다. 이번에는 횟수를 사용하여 식을 다시 써봅시다. C(x,y) 는 x,y가 말뭉치에 동시..