본문 바로가기

전체 글

(62)
[머신러닝/딥러닝] PART 2 ------------------------------------------- -머신러닝 알고리즘에 주입할 데이터를 준비하는 방법을 배운다. -데이터의 형태가 알고리즘에 미치는 영향을 이해 ------------------------------------------- 지도학습(supervised learning): 훈련을 위한 데이터(input)와 정답(target)이 있어야 한다.(문제집 & 정답지) input 과 target을 합쳐서 훈련 데이터(Traning data)라고 한다. 특성(피쳐, feature): 입력으로 사용된 길이와 무게를 의미, 특성들을 합치면 입력(input)이 된다. 비지도학습(supervised learning) 입력 데이터만 활용한다. 답을 맞추는게 아닌 데이터의 규칙을 파..
[머신러닝/딥러닝] PART 1 (colab 활용 K-Nearest Neighbors 구현) ------------------------------------------- -인공지능, 머신러닝, 딥러닝 차이점 -구글 코랩 사용법 -첫 번째 머신러닝 프로그램 만들고 머신러닝의 기본 작동 원리 이해 ------------------------------------------- 규칙을 일일이 프로그래밍 하지 않아도, 데이터에서 규칙을 학습하는 알고리즘을 연구하는 분야 인공지능의 하위 분야중, 지능을 구현하기 위한 소프트웨어 담당 파트이다. 통계학과 머신러닝은 깊은 관련이 있다. 통계학에서 유래된 머신러닝 알고리즘이 많다. 대표적으로는 오픈소스 통계 SW인 R에는 다양한 머신러닝 알고리즘이 존재한다. BUT 수학이론보다 직접 경험된 지식을 바탕으로 발전하는 경우도 있다. 대표적으로 사이킷런(scikit..
[Git&Github] 깃이란 무엇인가 그리고 깃허브는 어떻게 쓰는건가? part 2 ************************************************** part 1에서는 기본적인 git명령어, git의 3가지 작업영역(워킹 디렉토리, 스테이징 에리어, 레파지토리), git의3가지 파일상태(모디파이드, 스테이징, 언트랙드or커밋티드)이렇게 배웠었다. 이후 git config, git status, git log --oneline 등 사용자 정보 설정, 저장소의 상태, 커밋기록 확인등 다양한 활용법 또한 익히게 되었다. 이제 다시 커밋 로그에서 HEAD, 해시(커밋id)를 알아보도록 하자 ********************************************************** # mater는 알겠어 그럼 HEAD는 뭐야? HEAD 또한 특정 커밋을 가..
[Git&Github] 깃이란 무엇인가 그리고 깃허브는 어떻게 쓰는건가? part 1 ************************************************** 대부분의 회사에서는 고유의 git.net 이라고 팀원들과 함께 작업하는 공간이 존재한다. 사실 나도 깃을 써보았지만, 1달간의 대회 혹은 개인 코테 문제 저장소로만 사용을 하였다. add commit push만 할줄 아는 유치원생 인것이다. 아마 곧 쓰게 될것 같아서 팀워크의 핵심 기술인 git 을 이참에 제대로 공부할려고 한다. 책은 파이썬 코드로 배우는 Git & GitHub를 쓸려고 한다. 학교 도서관에서 있기도 하고 내가 파이썬을 선호하기 때문에 선정한 책이다. 오늘 내로 이걸 마스터 하는게 목적이다. Git이란 무엇이고 어떤 동작원리를 가지는지 파악해보자! ***************************..
[딥러닝] YOLO(You Only Look Once) 객체 탐색 알고리즘 ************************************************** 세미나를 준비하기 전 YOLO 객체탐색 알고리즘, 크라우드 카운팅(군중 숫자 세기)에 대해서 공부를 해야 했다. 머신러닝에서 활용되는 기법중 하나라고 생각을 하였다. you only look once라는 단어의 의미에 맞게 "난 너하나만 본다"라는 의미로 보통의 객체인식은 1개의 이미지를 수천개로 분할하여 모델에 넣지만, YOLO는 단 1개의 이미지만 한번 사용하기 때문에 모델설계가 간단하고, 매우 빠른 처리속도를 가지고 있다. 따라서 실시간 콘서트장, 시위대 등 대규모 인파가 몰리는 곳에서 YOLO 알고리즘을 활용하여 인원파악, 예측경로, 사고위험도를 파악 하는데 사용하기 용이하다는 장점이..
[Python] 1325번: 효율적인 해킹 https://www.acmicpc.net/problem/1325 정수형 4byte, 노드개수 10^4.... 왜 메모리 초과가 발생한거지? 문자열로 바꿔서 할까 3번 연속으로 메모리 초과가 발생한다. 딕셔너리 자료구조를 인접 리스트로 바꾸어도 보았지만 그런다. 눈물이난다 내일 물어봐야 겠다. 그리고 visited를 체크할 필요는 없다고 생각한다. 왜냐? 역류할 가능성이 있나...?? visited 체크는 맞다, 근데? 계속 시간초과가 발생한다. 일단 지금 새벽 3시 이니, 좀 자고 하자 아래는 틀린 코드이다. 내일 DFS로 바꿔서 풀어봐야 겠다. --> 메모리 문제는 해결완료 하지만 시간초과 발생함.... 심지어 다른 분들의 코드도 참고했는데 그것도 시간초과가 남 # 딕셔너리 사용해서 구현한 부분. i..
[Python] 2670번: 연속부분최대곱 https://www.acmicpc.net/problem/2670 2670번: 연속부분최대곱 첫째 줄은 나열된 양의 실수들의 개수 N이 주어지고, 그 다음 줄부터 N개의 수가 한 줄에 하나씩 들어 있다. N은 10,000 이하의 자연수이다. 실수는 소수점 첫째자리까지 주어지며, 0.0보다 크거나 www.acmicpc.net 시간 제한: 1초 메모리 제한: 128MB ************************************************** 흠, 예전에 풀었던 최장연속증가 수열 문제가 떠오른다. Two포인터 기법을 사용해야하나 고민이 되는데, 데이터의 개수가 10^4개이다. 일일이 전부 비교를 하는 브루트포스 방식은 N^2의 시간복잡도로 좀 간당간당하게 통과가 될것 같은 느낌이 든다. 또 ..
[Python] 2847번: 게임을 만든 동준 https://www.acmicpc.net/problem/2847 2847번: 게임을 만든 동준이 학교에서 그래픽스 수업을 들은 동준이는 수업시간에 들은 내용을 바탕으로 스마트폰 게임을 만들었다. 게임에는 총 N개의 레벨이 있고, 각 레벨을 클리어할 때 마다 점수가 주어진다. 플레이어 www.acmicpc.net 시간 제한: 1초 메모리 제한: 128mb ************************************************** 각 레벨을 오름차순으로 만들어야 한다.(다음 혹은 이전 레벨이랑 같아도 안됨) 이때 오름차순으로 만들기 위해서 -1을 몇번 해주어야 하는지 세어주어야 한다. 레벨의 수는 100개를 넘지 않는다. 점수는 20000이하의 양의정수 이다. 거꾸로 뒤집은다음 현재숫자를 ..