본문 바로가기
728x90
반응형

전체 글100

[Python] torch, torchvision 환경 맞추기 torch  > torchtext 0.13버전은 torch 2.0.0 버전을 필요로 한다..이러면 좀 연결이 되려나   + 추가 2024. 6. 24.
[Python] 리스트 요소 중 길이가 긴/ 짧은 리스트 내에 요소중에서 길이가 가장 긴 혹은 가장 짧은 요소를 찾고 싶을 때! lst= ['ㄱㄴㄷ','ㄻㅂ','ㅅㅇㅈㅊㅋㅌㅍㅎ']max(lst, key= len)위와 같이 max 함수를 사용하고 key값으로 len을 사용해주면 len함수를 기준으로 max값을 찾아주는 것 같다.max의 값을 찾아주는게 아닌 max인 요소의 값을 반환한다. 의외로 자주 쓰는데 자꾸 까먹네,, 2024. 6. 24.
[Python] with 구문 파일을 가져와서 코드에서 사용하고 싶을 때!보통 with open 구문을 많이 사용한다. 파일을 열면(open) 항상 닫아(close) 주어야 한다. 파이썬의 with 문으로 이렇게 파일을 열고 닫는 것을 자동으로 처리할 수 있다. f = open("foo.txt", 'w')f.write("Life is too short, you need python")f.close()기존에는 위와 같이 처리 했다면 with open("foo.txt", "w") as f: f.write("Life is too short, you need python")with 구문을 사용하여 다음과 같이 처리할 수 있다.위와 같이 with 문을 사용하면 with 블록(with 문에 속해 있는 문장)을 벗어나는 순간, 열린 파일 객.. 2024. 6. 23.
[Goorm] 딥러닝을 이용한 자연어 처리 1 (토큰화 & 임베딩) 텍스트의 토큰화# 주어진 문장을 단어로 토큰화 하기# 케라스의 텍스트 전처리와 관련한 함수 중 text_to_word_sequence 함수를 불러온다from tensorflow.keras.preprocessing.text import text_to_word_sequence# 전처리할 텍스트를 정합니다.text= '해보지 않으면 해낼 수 없다.'# 해당 텍스트를 토큰화result= text_to_word_sequence(text)print('원문', text)print('토큰화',result)# 결과"""원문 해보지 않으면 해낼 수 없다.토큰화 ['해보지', '않으면', '해낼', '수', '없다']"""> ★ text_to_word_sequence : 문장에서 단어 단위로 토큰화( Tokenizer()를.. 2024. 6. 23.
이코테 2021 - DFS & BFS 재귀함수 재귀함수 (Recursive Function) : 자기 자신을 다시 호출하는 함수def recursive_function(): print('재귀함수 호출') recursive_function()recursive_function()> 파이썬에서는 최대 재귀 깊이 제한이 있어, 이를 실행하면 오류메시지가 뜬다.(RecursiveError : maximum recursion depth exceeded while calling a Python object.)> 따라서, 재귀함수를 사용할 때는 재귀 함수의 종료조건을 명시하여 반복문이 끝나도록 해야 한다.  Ex) 팩토리얼문제# n! = n * (n-1) * (n-2) * ... * 1def factorial_recursive(n): if n  Ex.. 2024. 6. 17.
이코테 2021 - 스택과 큐 탐색(Search)이란 많은 양의 데이터 중에서 원하는 데이터를 찾는 과정.대표적인 그래프 탐색 알고리즘 : DFS/ BFSDFS와 BFS 알고리즘 전 알고있어야 할 자료구조 → 스택/ 큐 스택(Stack) 스택 자료 구조 : 먼저 들어온 데이터가 나중에 나가는 형식의 자료구조= 선입후출ex) 여러개의 박스를 쌓을 때 > 삽입과 삭제의 명령으로 이루어짐stack = []# 삽입(5)- 삽입(2)- 삽입(3)- 삽입(7)- 삭제()- 삽입(1)- 삽입(4)- 삭제()stack.append(5)stack.append(2)stack.append(3)stack.append(7)stack.pop()stack.append(1)stack.append(4)stack.pop()print(stack)# [5, 2, 3, .. 2024. 6. 12.
신경망 keras로 접근하기 - 동일한 코드로 cpu, gpu 모두 사용가능 tensorflow로 만든 코드보다 짧고 쉽게 만들 수 있다. 경사하강법을 이용했던 부분을 'adam'함수를 통해 간단하게 구현 가능from tensorflow.keras.models import Sequentialfrom tensorflow.keras.layers import Denseimport numpyimport tensorflow as tfseed = 0numpy.random.seed(seed)tf.random.set_seed(seed)X = numpy.array([[0,0], [0,1], [1,0], [1,1]])Y = numpy.array([[0], [1], [1], [0]])# 딥러닝 구조를 결정 (모델을 설정하고 실행하는 부분)model =.. 2024. 6. 5.
신경망의 이해 뉴런: 정보처리를 하는 가장 최소의 단위전위가 임계값을 넘으면 다음 뉴런으로 신호를 전달하고, 임계값에 미치지 못하면 아무것도 하지 않음. 파라미터가 뉴런을 비슷하게 흉내낸 것임. cnn -> 영상처리rnn -> 자연어처리 퍼셉트론  y= ax + by : 출력  a: 가중치  x: 입력   다층 퍼셉트론ex) xor 연산 가운데 숨어있는 은닉층으로 퍼셉트론이 각각 자신의 w와 b를 알아낼 수 있다.>> xor 문제의 해결import numpy as np# 가중치와 바이어스w11 = np.array([-2,-2])w12 = np.array([2,2])w2 = np.array([1,1])b1 = 3b2 = -1b3 = -1# 퍼셉트론def MLP(x, w, b): y = np.sum(w * x) + b .. 2024. 6. 5.
이코테 2021 - 그리디 (탐욕법) - 현재 상황에서 지금 당장 좋은 것만 고르는 방법 (= 탐욕법)- 단순히 가장 좋아보이는 것만 반복적으로 고르는 것이 맞는가?> 일반적인 상황에서 그리디 알고리즘은 최적의 해를 보장할 수 없을 때가 많다. 대표문제 1N= 1,260일때 500*2 + 100*2 + 50*1 + 10*1큰 단위의 화폐부터 돈을 거슬러 주는 것이 최적의 해를 보장하는 이유는?> 가지고 있는 동전 중에서 큰 단위가 항상 작은 단위의 배수이므로 작은 단위의 동전들을 종합해 다른해가 나올 수 없기 때문이다n = 1260count = 0# 큰 단위의 화폐부터 차례대로 확인하기array = [500, 100, 50, 10]for coin in array: count += n//coin # 해당화폐로 거슬러 줄 수 있는 동전의 개수 .. 2024. 6. 1.
728x90
반응형