본문 바로가기

Python3

[Python, AI] 효율적인 리스트 연산 파이썬에서 리스트는 내부적으로 많은 연산이 정의된 데이터 구조 클래스이다. 딥러닝을 하다보면, 특히 자연어 처리에서 데이터셋 클래스를 구현할 때 리스트 연산을 많이 사용하게 된다. 사전에 초기화 함수에서 모든 리스트를 만들어두는 경우가 많지만 데이터가 엄청 큰 경우 메모리에 전부 적재하기가 쉽지 않다. 또한, RoBERTa와 비슷하게 학습 시에 랜덤하게 데이터 객체를 조작하는 경우, 학습 시에 리스트 연산을 하게 될 수 있다. 그렇지만 대규모 학습은 많은 학습 횟수로 이어지므로 하나의 batch를 얻는데 시간을 줄이는 것은 필수적이다. 동일한 결과를 내놓는 다음 실험의 5가지 변형을 통해 간단하게 조사해보았다. 실험 내용) 고정된 길이의 리스트가 있을 때, 어떤 가변 길이의 리스트의 길이만큼은 1로 채우.. 2022. 1. 19.
[Python] 5분만에 음성 인식 구현하기 2019-02-04-speech_recognition 이 글은 David Amos님의 The Ultimate Guide To Speech Recognition With Python 글을 참고하였습니다. 여러 음성인식 API를 사용하여 파이썬에서의 음성 인식을 손쉽게 할 수 있게 하는 SpeechRecognition 패키지를 소개하고자 합니다. python3에서의 설치는 pip를 이용해서 간단히 설치할 수 있습니다.pip install SpeechRecognitionpython2에서의 설치는 약간의 추가적인 단계가 필요하니 python2는 여기를 참고하세요. 위 명령어를 통해 설치를 했으면, 다음 코드를 실행해서 잘 설치되었는지 확인해보세요.import speech_recognition as srsr.__.. 2019. 2. 5.
python 로딩(애니메이션) 쉽게 구현하기 pip를 이용해서 패키지를 설치하거나 케라스를 이용하여 모델을 학습시킬 때, 다음과 같이 콘솔에서 애니메이션처럼 로딩 화면을 출력하는 것을 볼 수 있다. tqdm 모듈을 이용하면 깔끔하지만 본인 입맛에 맞게 출력해주고자 한다면, print 함수의 end 인수의 기본 값인 개행을 다른 값으로 변경해주면 된다. 그런 다음 \r을 이용해서 커서를 맨 앞으로 보낼 수 있다는 점을 이용해 출력해주면 끝이다. for cur, doc in enumerate(docs): if cur % 200 == 10: print("\rcomplete %.2f" % ((float(cur)/total) * 100), end="") 반복문의 진행정도를 알고 싶은거라면 그냥 tqdm을 사용하자. 그렇지 않고 수식의 계산 결과도 같이 보여.. 2019. 1. 23.