분석 Python/책 구현 리뷰(9)
-
Python) Heap 정리 및 heap sort 구현해보기
우연히 찾은 컴퓨터 알고리즘 강의인데, 출퇴근길에 들어보고 있다. 자료 구조 중의 하나인 Heap에 대해 알아보고 구현하는 것까지 해보려고 한다. 일단 Heap을 사용하는 이유부터 알아보자 Heap은 Prioirty Queue와 같이 우선순위가 존재하는 자료 구조이다. Heap(힙)이란? 완전 이진 트리의 일종으로 우선순위 큐를 위하여 만들어진 자료구조이다. 여러 개의 값들 중에서 최댓값이나 최솟값을 빠르게 찾아내도록 만들어진 자료구조 완전 이진 트리(complete binary tree)에 가까운 형태 이진트리(Binary tree)는 각 노드의 자식수가 2 이하인 경우 완전 이진 트리는 Root 노드부터 Leaf 노드까지 빠짐없이 채워져 있는 트리 종류 최대힙 (max-heap property) 부모..
2022.04.08 -
[책] Deep Reinforcement Learning in Action Code Link
해당 코드에는 multi agent 관련 자료도 있어서 유용할 것 같아서 공유함. 번역된 책으로 보고 있는데, 내가 지식이 부족한지는 몰라도 굉장히 어렵게 들림. github.com/DeepReinforcementLearning/DeepReinforcementLearningInAction DeepReinforcementLearning/DeepReinforcementLearningInAction Code from the Deep Reinforcement Learning in Action book from Manning, Inc - DeepReinforcementLearning/DeepReinforcementLearningInAction github.com
2021.02.22 -
책 러닝 텐서플로 - 코드
https://github.com/Hezi-Resheff/Oreilly-Learning-TensorFlow?files=1 Hezi-Resheff/Oreilly-Learning-TensorFlow Contribute to Hezi-Resheff/Oreilly-Learning-TensorFlow development by creating an account on GitHub. github.com
2020.01.11 -
미술관에 GAN 딥러닝(Generative Deep Learning) Code
https://bit.ly/gdl-code rickiepark/GDL_code The official code repository for examples in the O'Reilly book 'Generative Deep Learning' - rickiepark/GDL_code github.com
2019.11.17 -
파이썬을 활용한 딥러닝 전이학습 책 Code
https://github.com/Transfer-Learning-with-Python/handson-Code?fbclid=IwAR3Jsb35mfOi9JLWh7IyerF4-oes_19E_2JY5M9Mlzcv-9A81w_tmMXf03I Transfer-Learning-with-Python/handson-Code Contribute to Transfer-Learning-with-Python/handson-Code development by creating an account on GitHub. github.com
2019.11.17 -
[ Python ] 자신만의 예외 클래스 정의하기 - 슬기로운 파이썬 트릭 책 中
왼쪽과 오른쪽을 보면 왼쪽은 왜 틀린지는 아닌데, 머가 들어가서 틀린 지를 알 수가 없고, 오른쪽은 머가 들어가서 왜 틀린지 알 수도 있다. 그래서 명확히 이름을 부여하여 이름만 보고 예외를 처리할 수 있는 형태로 봐야 디버깅이 쉬워진다. class NameTooShort(ValueError) : pass def validate(name) : if len(name) < 10 : raise NameTooShort(name) validate("hi") 이렇게 하면 왜 에러가 걸린지를 명시해줘서 쉽게 디버깅이 된다. 이렇게 쓰는 것인지는 모르겠다... 으흠 맞겠지 현재 ValueError 부분을 세세하게 나눠서 처리를 하고 만약 다른 에러가 나올 떄는 KeyError는 KeyError로 다른 예외처리는 Exc..
2019.09.29 -
[ Python ] Decorator - 슬기로운 파이썬 트릭 책 中
간략하게 유용한 경우부터 로그 남기기 접근 제어와 인증 시행 계측 및 시각 측정 비율 제한 캐싱 및 기타 일단 파이썬 같은 경우에는 일급 함수 함수는 객체다 / 함수는 다른 함수 내부에서 정의될 수 있다. Decorator란? 다른 함수를 `장식`하거나 `포장`하고 감싼 함수가 실행되기 전과 후에 다른 코드를 실행할 수 있게 한다! 왼쪽) 이런 모양으로 기존 사용하려는 함수를 감싸는 꼴이다. / 오른쪽) decorator 사용 다중 Decorator 적용 순서는 아래에서 위로 쭉 wrapper 클로저의 정의에서 * 및 ** 연산자를 사용하여서 모든 위치 및 키워드 인자를 수집하고 변수에 저장한다. wrapper 클로저는 수집된 인자를 * 및 ** 인자 풀기 연산자를 사용하여서 입력 함수에 전달한다. 데코..
2019.09.29 -
[ Python ] 파이썬 객체에서 with 사용 - 슬기로운 파이썬 트릭 책 中
슬기로운 파이썬 트릭이라는 책에서 나오는 객체엇 with 사용 부분 일반적으로 먼가 쓰고 닫을 때 다음과 같이 진행을 한다. f = open("hello.txt", "w") f.write("text") f.close() 하지만 이런식으로 진행하다 보면, f.write 도중에 에러가 발생하면 파일이 닫히는 것을 보장하지 않아서 리소스 누수가 발생할 수 있다. 그래서 이것을 다음과 같이 해결할 수 있다. f = open("hello.txt", "w") try : f.write("text") finally : f.close() 하지만 이러면 코드가 굉장히 지저분해보일 수 있다. 그래서 책에서는 with를 사용해서 리소스를 적절하게 확보하고 반환하는 것을 하는 게 좋다고 한다. 책에서는 contextmanage..
2019.09.29 -
*args 와 **kwargs 사용하기 - 슬기로운 파이썬 트릭 中
이전에 했던 것 def doubler(f): def g(x) : return 3*f(x) return g def cal(x) : return x+10 ff=doubler(cal) print(ff(10)) # (10+10) X 3 def cal2(x,y): return x+y g=doubler(cal2) g(1,2) # -> 임의의 수의 인자를 받는 함수 만들어 줘야 한다 # args kwargs -> argument unpacking # 함수 정의에 주로 사용한다. def magic(*args , **kwargs) : print("unnamed args:",args) print("keyword args:", kwargs) magic(1,2,key="word",key2="word2") # args -> 이..
2018.01.01