Python
-
TENSOR RT - (2)뜯고 또 뜯어보는 컴퓨터/TENSORRT 2021. 10. 7. 16:45
지난시간에 이어서, TENSOR RT RUNTIME API 에 대해 말씀드리겠습니다. 저번 시간에서는 trt.Builder(Logger 설정) 을 통해, builder를 만들어 주었고, 이렇게 만들어진 builder를 통해, builder.create_network(common.BATCH_SIZE) 의 TRT.INETWORK 객체와 builder.create_builder_config()를 통해 TRT.CONFIG()를 생성해주었습니다. 그다음, 네트워크 생성 함수를 통해, Weight 와 INetwork를 일치시켜, network를 설정해주었습니다. 오늘은 그 이후의 단계에 대해 설명 드리겠습니다. TENSOR RT INFERENCE 이제 INETWORK 에 weight를 일치시켜주어 필요한 Netwo..
-
LightGBM 데이터 분류머신러닝(MACHINE LEARNING) 2021. 4. 14. 17:25
LightGMB 의 장점¶ LightGBM 은 XGB보다 더빠른 학습과 에측 수행시간을 가지고 있고, 더작은 메모리 사용이 가능하다. 또한 카테고리형 피처의 자동 변환과 최적변환이 가능하다는 것이 장점이다. LightGBM 의 파라미터¶ LightGBM 은 XGB 와 다르게 리프노드가 계속 분할 되면서, 트리의 깊이가 깊어지므로 이러한 트리 특성에 맞느 하이퍼 파라미터가 필요하다, 주요 파라미터는 다음과 같다. num_iterations : default 값은 100 이며, 반복 수행하려는 트리의 개수를 지정한다. learning rate : default 값은 0.1 이며, 작을 수 록 예측 성능이 좋아지나, 학습이 길어진다는 것도 고려해야 한다. max_depth : 트리 기반의 max_depth 와..
-
백준 _ 3111알고리즘/백준(BOJ) 2021. 4. 13. 11:12
https://www.acmicpc.net/problem/3111 3111번: 검열 첫째 줄에 단어 A가, 둘째 줄에 텍스트 T가 주어진다. A와 T는 알파벳 소문자로만 이루어져 있고, A는 최대 25자, T는 최대 300,000자이다. www.acmicpc.net 문제 김상근은 창영마을에서의 권력을 유지하기 위해 신문을 검열하려고 한다. 상근이는 텍스트 T에서 A라는 단어를 다음과 같은 알고리즘을 이용해서 모두 없애려고 한다. T에 A가 없으면 알고리즘을 종료한다. T에서 처음 등장하는 A를 찾은 뒤, 삭제한다. T에 A가 없으면 알고리즘을 종료한다. T에서 마지막으로 등장하는 A를 찾은 뒤, 삭제한다. 1번으로 돌아간다. 상근이는 마을을 지배해야하기 때문에, 검열을 할 시간이 없다. 상근이의 검열을 ..
-
이진 트리 (전방순회)_BST _ Python알고리즘/알고리즘 (여러가지) 2021. 4. 13. 00:55
- Python 으로 이진트리를 구현하는 방법이다. - 우선 큰 BST라는 나무를 만들기 전에 작은 잎가지 (Node) 클래스를 구현해주자.(하나 하나씩 따라가자.) class Node: def __init__(self,data): self.data=data self.left = None self.right =None - 그 다음, BST를 구현해줄 건데, BST 클래스를 구현해준다음. __init__ data 에 root값을 지정해주자. 이 root 값을 기준으로 값들이 insert 혹은 remove 될 것이다. - insert 함수를 구현해보자. # __insert 함수에서는 어떤 node 에다가 더해줄 것인지를 말해준다. def __insert(self,node,data): # node == Non..
-
백준 11279_Python알고리즘/백준(BOJ) 2021. 4. 12. 20:59
https://www.acmicpc.net/problem/11279 11279번: 최대 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 www.acmicpc.net 문제 널리 잘 알려진 자료구조 중 최대 힙이 있다. 최대 힙을 이용하여 다음과 같은 연산을 지원하는 프로그램을 작성하시오. 배열에 자연수 x를 넣는다. 배열에서 가장 큰 값을 출력하고, 그 값을 배열에서 제거한다. 프로그램은 처음에 비어있는 배열에서 시작하게 된다. 입력 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를..
-
백준 6549_Python알고리즘/백준(BOJ) 2021. 4. 12. 13:56
https://www.acmicpc.net/problem/6549 6549번: 히스토그램에서 가장 큰 직사각형 입력은 테스트 케이스 여러 개로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, 직사각형의 수 n이 가장 처음으로 주어진다. (1 ≤ n ≤ 100,000) 그 다음 n개의 정수 h1, ..., hn (0 ≤ hi ≤ www.acmicpc.net 문제 히스토그램은 직사각형 여러 개가 아래쪽으로 정렬되어 있는 도형이다. 각 직사각형은 같은 너비를 가지고 있지만, 높이는 서로 다를 수도 있다. 예를 들어, 왼쪽 그림은 높이가 2, 1, 4, 5, 1, 3, 3이고 너비가 1인 직사각형으로 이루어진 히스토그램이다. 히스토그램에서 가장 넓이가 큰 직사각형을 구하는 프로그램을 작성하시오. 입..
-
백준 9935 _Python알고리즘/백준(BOJ) 2021. 4. 12. 00:05
https://www.acmicpc.net/problem/9935 9935번: 문자열 폭발 첫째 줄에 문자열이 주어진다. 문자열의 길이는 1보다 크거나 같고, 1,000,000보다 작거나 같다. 둘째 줄에 폭발 문자열이 주어진다. 길이는 1보다 크거나 같고, 36보다 작거나 같다. 두 문자열은 모 www.acmicpc.net 문제 상근이는 문자열에 폭발 문자열을 심어 놓았다. 폭발 문자열이 폭발하면 그 문자는 문자열에서 사라지며, 남은 문자열은 합쳐지게 된다. 폭발은 다음과 같은 과정으로 진행된다. 문자열이 폭발 문자열을 포함하고 있는 경우에, 모든 폭발 문자열이 폭발하게 된다. 남은 문자열을 순서대로 이어 붙여 새로운 문자열을 만든다. 새로 생긴 문자열에 폭발 문자열이 포함되어 있을 수도 있다. 폭발은..
-
백준 9376 _ Python카테고리 없음 2021. 4. 4. 17:49
https://www.acmicpc.net/problem/9376 9376번: 탈옥 상근이는 감옥에서 죄수 두 명을 탈옥시켜야 한다. 이 감옥은 1층짜리 건물이고, 상근이는 방금 평면도를 얻었다. 평면도에는 모든 벽과 문이 나타나있고, 탈옥시켜야 하는 죄수의 위치도 나타 www.acmicpc.net 문제 상근이는 감옥에서 죄수 두 명을 탈옥시켜야 한다. 이 감옥은 1층짜리 건물이고, 상근이는 방금 평면도를 얻었다. 평면도에는 모든 벽과 문이 나타나 있고, 탈옥시켜야 하는 죄수의 위치도 나타나 있다. 감옥은 무인 감옥으로 죄수 두 명이 감옥에 있는 유일한 사람이다. 문은 중앙 제어실에서만 열 수 있다. 상근이는 특별한 기술을 이용해 제어실을 통하지 않고 문을 열려고 한다. 하지만, 문을 열려면 시간이 매우..