본문 바로가기
반응형

전체 글30

[ERROR] module 'tensorflow' has no attribute 'optimizers' 텐서플로우를 통해 딥러닝 모델을 구성 중 아래 구문에 대해 ERROR가 발생하였다. [에러 구문] Adam = tf.optimizers.Adam(lr=0.00001) [에러 내용] module 'tensorflow' has no attribute 'optimizers' [원인] 가상환경 텐서플로우 버전 1.15.0 사용에 따른 버전 충돌 [해결 방법] from tensorflow.keras import optimizers Adam = optimizers.Adam(lr=0.00001) 🎥고돌한고돌이 youtube https://www.youtube.com/channel/UCJqvLr-GzRouSGiT235bMuw 2022. 3. 8.
[ERROR] NotImplementedError: Cannot convert a symbolic Tensor to a numpy array [원인] numpy 1.20 버전에 따른 트러블 슈팅으로 발생하는 에러이다. [해결 방법] numpy 1.19.5 버전으로 다운그레이드 진행 pip install numpy==1.19.5 🎥고돌한고돌이 youtube https://www.youtube.com/channel/UCJqvLr-GzRouSGiT235bMuw 2022. 3. 8.
[Jupyter] Jupyter conda install Proceed ([y]/n) 해결 Jupyter 환경에서 pip install이 아닌 conda install 을 진행시!conda install tensorflow 아래의 구문을 만날 수 있다.Proceed ([y]/n)? 이럴 경우 명령문에 --yes 인자를 추가하여 설치하면 해결 할 수 있다.!conda install --yes tensorflow 2022. 3. 8.
[Jupyter] Jupyter lab 가상환경 Kernel 추가, 삭제 모든 개발 분야가 비슷하겠지만 데이터 사이언스 영역에서 개발환경을 맞추기란 정말 귀찮고, 힘든일이다. 예를들어 어떤 딥러닝 알고리즘을 사용하자니 tensorflow 버전 충돌로 인한 트러블슈팅이 일어나는 상황들이 있다. 매번 코드를 진행할때 마다 tensorflow 버전을 바꿔 설치하기에는 너무 손이 많이 가며 비효율적이다. 이러한 라이브러리의 버전관리를 위해서라도 독립적인 개발환경을 가상환경을 통해 관리하는것이 정신건강에 이롭다. 필자는 최근 jupyter lab을 통해 개발을 하고 있는데, jupyter lab에 가상환경 kernel을 추가하고 삭제하는 법을 정리하고자 한다. 1. ipykernel 라이브러리 설치 pip install ipykerenel 2.jupyter lab에 가상환경 kerrn.. 2022. 3. 8.
[DeepLearning] Transfer Learning, Fine Tuning - 1 [Transfer Learning] 딥러닝 모델을 생성시, 가장 좋은 방법은 대용량 즉 가능한 많은 데이터를 확보하는 것이다.(데이터가 많다고 항상 좋은건 아니지만...) 하지만, 현실 세계 real world 에서는 데이터 확보에 대한 비용 등 여러가지 문제에 부딪혀 충분한 데이터를 수집하는 것은 어렵다. 이를 해결하기 위한 방안 중 하나로 Transfer Learning (전이학습) 을 이용한다. Transfer Learning (전이학습) 이란, 어느 특정 분야로 학습된 신경망의 일부 기능을 유사 분야 또는 전혀 다른 새로운분야에서 사용되는 신경망의 학습에 이용하는 방법이다. 이때, 전이 학습에서 이용되는 학습된 신경망을 pretrained model 이라 칭하며, 대규모 데이터셋으로 잘 훈련된 p.. 2022. 3. 8.
[Pandas] 판다스 기초 - Pandas , DataFrame, Series 란? 데이터 사이언스 (Data science) 분야에서 일하다 보면, 데이터 가공 및 분석을 진행할 시 데이터 핸들링에 관한 스킬은 필수적이다. 오늘은 이러한 데이터 핸들링을 쉽고 편하게 할 수 있는 파이썬 라이브러리인 Pandas, DataFrame, Series 에 대해서 알아보자. 판다스(Pandas) ?pandas - Python Data Analysis Library의 약자이며, python을 활용한 데이터 사이언스 영역을 진행 시 필수적인 패키지이며, 통계 분석 시 많이 사용되는 R의 DataFrame을 벤치마킹하여 python에서도 비슷한 형태의 DataFrame을 사용할 수 있도록 제공해주는 라이브러리이다. 이러한 Pandas Dataframe을 활용하면, 수집한 데이터를 Table 형태로 다.. 2022. 3. 8.
[Python] 리스트 원소 랜덤 추출 종종 리스트에서 랜덤으로 원소를 추출할때가 있다. 로직을 세워서 랜덤하게 추출할 수 있지만, 우리의 시간은 소중하니 좀 더 쉽게 접근하는 방법을 정리해본다. 아래의 3가지 방법을 알아보자. 리스트 내 1개 원소 랜덤 추출 리스트 내 복수 원소 랜덤 추출(중복 허용 x) 리스트 내 복수 원소 랜덤 추출(중복 허용 o) 공통사항 우선 랜덤으로 추출하기 위해 random 모듈을 import 해줘야 한다. import random 리스트 내 1개 원소 랜덤 추출 리스트에서 원소를 추출하는 random 모듈의 메소드로는 choice, sample 등이 있는데, 한 가지 원소를 랜덤 추출할 경우 choice 메소드를 사용한다. li = [1,2,3] random_choice = random.choice(li) pr.. 2022. 3. 8.
[Python] Iterator(이터레이터) Iterable(이터러블) 정리 비교 git 이나 여러 레퍼런스에서 머신러닝 관련 소스코드를 참고하다 보면 generator 패턴을 종종 볼 수 있다. 대충 어떤 패턴인지는 인지하고 있지만, 좀 더 자세하게 알아보고자 정리를 해본다. 우선 제너레이터 패턴을 포함하는 이터레이터부터 살펴보자 Iterator(이터레이터) keyword : collection type, sequence type, iterable, iterator 우선 진행하기 앞서 컬렉션 타입과 시퀀스 타입을 살펴보자 컬렉션 타입 - list, tuple, set, dictionary와 같이 여러 개의 요소(객체)를 갖는 데이터 타입 시퀀스 타입 - list, tuple, range, str등과 같이 순서가 존재하는 데이터 타입 컬렉션 타입, 시퀀스 타입을 이해했으면 다음 단계로.. 2022. 3. 8.
[Python] assert raise 비교 파이썬으로 개발을 진행하다 보면 코드 중간에 예외 상황을 미리 확인하고 싶은 경우 에러를 발생시켜야 할 경우가 빈번히 발생한다. 이러한 에러 발생을 통해 예외 상황을 파악하고, 해당 예외를 통해 발생할 수 있는 side effect를 예방하는 작업이 필요하다. 이러한 에러를 일으키는 방법은 여러가지가 있지만 자주 사용하는 Assert 구문과 Raise 구문을 비교해 보고자 한다. Assert 공식문서를 보면 너무 단순하다. if __debug__: if not exp1: raise AssertionError(exp2) 와 동일하다고 명시되어있다. 조건문이 일치하지 않을 시 raise 구문을 통해 AssertionError를 발생시켜 프로그램 동작을 멈춘다. st = ['a', 'b', 'c'] asser.. 2022. 3. 8.
[Python] 파이썬 리스트, 배열 최대값 최소/최대 값 찾기 - min/max 함수 파이썬의 min/max 함수를 사용하면 로직을 짜지 않아도 배열, 리스트에서 최소/최대값을 찾을 수 있다. [배열, 리스트에서 최소값 찾기 - min()] item = [2, 13, 6, 52, 79, 1, 32] min(item) > 1 [배열, 리스트에서 최대값 찾기 - max()] item = [7, 23, 96, 2, 8, 1, 100] max(item) > 100 🎥고돌한고돌이 youtube https://www.youtube.com/channel/UCJqvLr-GzRouSGiT235bMuw 고돌한고돌이 KODORRI 하고싶은거 많은 고돌이의 먹부림 일상 www.youtube.com 2022. 3. 8.
반응형