전체 글 65

텍스트에서 단어 빈도 세기 간단한 예제

1. 텍스트 파일을 읽어 line으로 저장해준다. wiki=open('wiki.txt',"rt") lines=wiki.readlines() line=[] for i in range(len(lines)): line.append(lines[i]) wiki.close() print(line) 2. 불필요한 부분은 제거해준다. import re line=re.sub('\n','',line[0]) line 3. 띄어쓰기, 반점, 온점을 기준으로 각각의 단어로 분해해서 wordlist에 담아준다. wordlist=[] for word in re.split('[,. ]',line): if not word: continue wordlist.append(word) wordlist ['As', 'the', 'country..

파이썬 2023.05.09

[딥러닝이론] 인공신경망

1950년대 퍼셉트론이 시초 : 여러개의 입력으로부터 하나의 결과를 도출해내는 것 신경 뉴런을 그대로 모방하여 만듦 외부로부터 신호를 받아서 신호를 다음 뉴런으로 전달할 것인지 판단하는 구조를 가짐 w : 입력값, x : 가중치 activation function으로 계산된 값이 임계치를 넘어가면 1을 출력(전달), 아니면 0을 출력(소멸) x -> wx+b -> sigmoid -> y(0~1) : 로지스틱 회귀 => 여러개 => 인공신경망 모델 Softmax Cross-Entropy 각각의 선형회귀방정식으로 들어온 값을 시그모이드가 아닌 소프트맥스 함수에 넣어 각각을 확률로 변환한 값 중 가장 큰 값을 출력한다. 지금은 Leaky ReLU가 가장 많이 쓰임. XOR 문제를 기준의 퍼셉트론으로는 해결하지..

ML & DL 2023.05.03

[programmers] 프로세스 / 큐

문제 더보기 문제 설명 운영체제의 역할 중 하나는 컴퓨터 시스템의 자원을 효율적으로 관리하는 것입니다. 이 문제에서는 운영체제가 다음 규칙에 따라 프로세스를 관리할 경우 특정 프로세스가 몇 번째로 실행되는지 알아내면 됩니다. 1. 실행 대기 큐(Queue)에서 대기중인 프로세스 하나를 꺼냅니다. 2. 큐에 대기중인 프로세스 중 우선순위가 더 높은 프로세스가 있다면 방금 꺼낸 프로세스를 다시 큐에 넣습니다. 3. 만약 그런 프로세스가 없다면 방금 꺼낸 프로세스를 실행합니다. 3.1 한 번 실행한 프로세스는 다시 큐에 넣지 않고 그대로 종료됩니다. 예를 들어 프로세스 4개 [A, B, C, D]가 순서대로 실행 대기 큐에 들어있고, 우선순위가 [2, 1, 3, 2]라면 [C, D, A, B] 순으로 실행하게..

[programmers] 기능개발 / 큐

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(progresses, speeds): answer = [] endIndex = 0 # 실제 배포가 끝난 index # for j in range(10): 로직 개발시 임의로 for값을 제한하는 것이 풀기 쉽다! while True: endCount = 0 # 배포된 수를 계산 for i in range(endIndex, len(progresses)): progresses[i] += speeds[i] for i in range(endIndex, len(progresses)): if pro..

[programmers] 가장 큰 수 / 조건정렬

프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr from functools import cmp_to_key def solution(numbers): numbers.sort(key=cmp_to_key(lambda x, y: int(str(y) + str(x)) - int(str(x) + str(y)))) numbers = list(map(str, numbers)) return str(int(''.join(numbers))) cmp_to_key라는 조건정렬 기능을 사용하면 쉽게 해결할 수 있다. 마지막 답을 return할 때, int로 한번 전환해주지 않으면 ..

[programmers] 베스트 앨범 / 해시

문제 더보기 문제 설명 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 많이 재생된 장르를 먼저 수록합니다. 장르 내에서 많이 재생된 노래를 먼저 수록합니다. 장르 내에서 재생 횟수가 같은 노래 중에서는 고유 번호가 낮은 노래를 먼저 수록합니다. 노래의 장르를 나타내는 문자열 배열 genres와 노래별 재생 횟수를 나타내는 정수 배열 plays가 주어질 때, 베스트 앨범에 들어갈 노래의 고유 번호를 순서대로 return 하도록 solution 함수를 완성하세요. 제한사항 genres[i]는 고유번호가 i인 노래의 장르입니다. plays[i]는 고유번호가 i인 노래가 재..