본문 바로가기

전체 글346

DL : NVDIA Driver Deep Learning OS : Linux OS 우선, 딥 러닝을 위해 Linux OS를 사용하는 것이 좋다 (Linux에는 드라이버를 하나만 선택할 수 있음). Game Ready Driver & Studio Driver 솔직하게 스튜디오 또는 게임 레디 드라이버를 사용하든 상관 없다. Game Ready Driver는 새로운 게임 릴리스 등을위한 패치로 더 자주 업데이트됩니다. 딥 러닝에는 필요하지 않습니다. Studio Driver는 그다지 많은 업데이트를 받지 않으므로 더 안정적입니다. 특히 생산적인 환경에서 기계를 사용하는 경우 Studio Driver를 사용하는 것이 좋습니다. http://blog.daum.net/geoscience/1418 GPU를 지원하는 텐서플로(TensorFlow) .. 2020. 5. 4.
Python : @property, @function.setter @property 파이썬에서는 @property 데코레이터를 이용하여 위의 get , set 메소드보다 더욱 직관적으로 표현이 가능하다. class Person : def __init__(self): self.__name = 'hong' @property def name(self): return self.__name @name.setter def name(self, name):self.__name = name person = Person() print(person.name) # hong person.name = 'park' print(person.name) # park get의 역할은 property , set의 역할은 setter가 한다. property 가 setter 보다 윗줄에 사용되어야 한다. .. 2020. 5. 4.
MongoDB : 기본 구조 DB internal structure MongoDB의 데이터 저장소는 메모리 맵 파일(Memory Mapped File)을 사용한 가상 메모리를 사용한다 MongoDB의 데이터 구조 : 데이터를 저장 : Record // 인덱스를 저장 : Bucket Record : BSON 객체를 저장하는 노드를 레코드로 정의, Record는 BSON 객체의 이중연결리스트 (double linked list)구조로 구성 Bucket : 인덱스는 레코드에 저장된 데이터를 빠르게 찾기 위해 b-tree 형태로 저장된 노드 구조를 가짐 b-tree 노드를 버켓(Bucket)이라고 정의 Extent : MongoDB는 대용량 데이터를 HDD에 쉽게 저장할 수 있는 단위로 레코드들을 grouping한다. 이를 Extent라고.. 2020. 5. 3.
Python : raise raise raise는 try, except 구문에서 특정 조건에서 내가 원하는 Error를 일으킬 수 있는 함수이다. 위의 예시를 보면, raise ValueError 를 적었는데, href_list의 갯수와 paper_list의 갯수가 다르다면 ValueError를 일으키라는 구문이다. 2020. 4. 21.
Python : inheritance, 상속 : 부모 class 자식 class class father(): # 부모 클래스 def __init__(self, who): self.who = who def handsome(self): print("{}를 닮아 잘생겼다".format(self.who)) class sister(father): # 자식클래스(부모클래스) 아빠매소드를 상속받겠다 def __init__(self, who, where): super().__init__(who) self.where = where def choice(self): print("{} 말이야".format(self.where)) def handsome(self): super().handsome() self.choice() girl = sister("아빠", "얼굴") girl.handsome() 출처: .. 2020. 4. 21.
Python : Crawling : requests vs urllib.parse & request import requests import requests session = requests.Session() headers = { "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_5) AppleWebKit 537.36 (KHTML, like Gecko) Chrome", "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8" } url = "https://www.nature.com/search?q=gold+nanoparticle+synthesis&page=1" html = session.get(url, headers=headers).content pr.. 2020. 4. 21.
Python : Selenium의 Webdriver Webdriver는 여러가지 버전이 존재한다. 내가 이번에 쓴 driver는 chromedriver로 https://www.seleniumhq.org/docs/03_webdriver.jsp Selenium WebDriver — Selenium Documentation Fetching a Page The first thing you’re likely to want to do with WebDriver is navigate to a page. The normal way to do this is by calling “get”: driver.get("http://www.google.com"); driver.Url = "http://www.google.com"; driver.get "http://www.googl.. 2020. 4. 21.
Computer Sturcture : Multiprocess vs Multithread Multiprocess vs Multithread - 공통점 멀티프로세스와 멀티스레드는 양쪽 모두 여러 흐름이 동시에 진행된다는 공통점을 가지고 있다. - 차이점 멀티프로세스에서 각 프로세스는 독립적으로 실행되며 각각 별개의 메모리를 차지하고 있는 것 멀티스레드는 프로세스 내의 메모리를 공유해 사용할 수 있다. 또한 프로세스 간의 전환 속도보다 스레드 간의 전환 속도가 빠르다. - 장점 멀티스레드의 다른 장점은 CPU가 여러 개일 경우에 각각의 CPU가 스레드 하나씩을 담당하는 방법으로 속도를 높일 수 있다는 것이다. 이러한 시스템에서는 여러 스레드가 실제 시간상으로 동시에 수행될 수 있기 때문이다. - 단점 멀티스레드의 단점에는 각각의 스레드 중 어떤 것이 먼저 실행될지 그 순서를 알 수 없다는 것이 .. 2020. 4. 17.
Computer 부품에 대하여 HDD RPM : 회전속도, 높을수록 data transfer 가 빠르다. buffer : HDD의 파일을 읽거나 저장시 데이터를 임시로 저장하는 메모리로 버퍼 용량이 높을수록 데이터를 읽어오는 대기시간이 단축된다. SSD MLC 와 TLC이다. MLC은 multi-level이라 한 비트를 여러가지 표현이 가능한 제품이다. 내가 1개 or 2개 하도록 선택이 가능하다. TLC는 Triple 이라서 0,1,2 3개를 표현이 가능하다. 따라서 성능적인 면에서는 control이 가능한 MLC가 좋지만, TLC는 대신 많은 용량을 포함할 수 있어서 가격이 싸고 저장용량이 MLC보다 뛰어나다. 내가 만약 집 컴퓨터로 쓸거면 TLC도 좋지만, 난 이번에 성능이 우선이라 SSD MLC로 512G 두 개를 샀다.나중에.. 2020. 4. 17.
Chemistry : PVP (Poly Vinyl Pyrrolidone) PVP (Poly Vinyl Pyrrolidone) structure Role in nanoparticle synthesis surface stabilizer growth modifier nanoparticle dispersant reducing agent Mechanism of PVP process characteristic hydrophilic (include N, O) and hydrophobic (include C, CH2) = 어느 solvent에서나 적용이 가능하다. bulky, non-toxic, non-ionic polymer PVP의 length에 따라 nanowire처럼, 오른쪽 그림처럼 capping 정도에 따라 NP은 달라진다. Goog Stabilizer , Dispersant: .. 2020. 4. 16.
ML : Scikit-learn : Parameter & Atrribute & Method 요즘 대학원에서 연구생활을 하다보니, 코딩을 공부할 기회가 많이 적어지긴 했다.... 그러면서 동시에 포스팅에 너무 뜸해지다가, 다행히 수업 중 신경망입문을 들으면서 sklearn에 대해서 다시 자세히 배우는 것 같아 다행이다. 까먹기 전에, 그리고 중간고사가 닥치기 전에 미리미리 해두기 위해 오늘 블로그 포스팅을 미리 해두려 한다. 다른 블로그 포스팅을 보더라도, scikit-learn, sklearn에서 생성자로 쓰이는 파라미터들에 대한 설명이 자세히 없는 것 같아 내가 미리 적어두어서 나중에 사용하고자 한다. Parameter Perceptron( penalty=None, alpha=0.0001, fit_intercept=True, max_iter=1000, tol=0.001, shuffle=Tru.. 2020. 4. 15.
Chemistry : Particle in a box https://ko.wikipedia.org/wiki/%EC%83%81%EC%9E%90_%EC%86%8D_%EC%9E%85%EC%9E%90 상자 속 입자 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 상자 속 입자(영어: particle in a box) 또는 무한 퍼텐셜 우물(infinite potential well)은 양자역학에서 다루는 가장 기본적인 문제 중의 하나로, 입자가 무한히 깊은 퍼텐셜 우물에 갇혀 있어 나가지 못하는 시스템을 말한다. 여기에서 입자가 벽과 충돌할 땐 에너지와 운동량이 모두 보존되는 완전 탄성 충돌이 일어난다고 가정한다. 고전역학적인 관점에서 이 문제를 보면 단순히 입자가 등속 직선 운 ko.wikipedia.org 2020. 3. 31.