-
6/1 Ridge<Kaggle>/[Mercari Price Suggestion] 2022. 5. 31. 21:19728x90
import multiprocessing as mp # 병렬처리
mp.set_start_method('forkserver', True)
포크 또는 소프트웨어 개발 포크, 프로젝트 포크는 개발자들이 하나의 소프트웨어 소스 코드를 통째로 복사하여 독립적인 새로운 소프트웨어를 개발하는 것을 말한다. 위키백과
from scipy.sparse import csr_matrix
arr = np.array([[0, 1, 0, 2], [0, 3, 4, 5], [0, 0, 0, 0], [6, 0, 0, 7], [0, 8, 0, 0]])
csr_mat = csr_matrix(arr)
csr_mat[Out] <5x4 sparse matrix of type '<class 'numpy.longlong'>'
with 8 stored elements in Compressed Sparse Row format>
from sklearn.feature_extraction.text import HashingVectorizer
# CountVectorizer는 모든 작업을 메모리 상에서 수행하므로 처리할 문서의 크기가 커지면 속도가 느려지거나 실행이 불가능해진다. 이 때 HashingVectorizer를 사용하면 해시 함수를 사용하여 단어에 대한 인덱스 번호를 생성하기 때문에 메모리 및 실행 시간을 줄일 수 있다.
사이킷런의 FeatureUnion을 사용하면 여러개의 pipeline을 하나의 pipeline으로 합칠 수도 있습니다
from sklearn.base import BaseEstimator, TransformerMixin
나만의 변환기 만들기
BaseEstimator를 상속하면 하이퍼파라미터 튜닝에 필요한 두 메서드 get_params()와 set_params()를 얻게 됩니다
fit_transform()은 TransformerMixin으로 구현
from pandas.api.types import is_numeric_dtype, is_integer_dtype, is_float_dtype, is_bool_dtype
from pandas.api.types import is_object_dtype, is_string_dtype, is_categorical_dtype, is_datetime64_dtype
Pandas(판다스, 팬더스)에서 데이터타입이 숫자 또는 문자인지를 확인하는 법에 대해 알아보겠습니다.
os.environ['MKL_NUM_THREADS'] = '4'
os.environ['OMP_NUM_THREADS'] = '4'
os.environ['JOBLIB_START_METHOD'] = 'forkserver'
# https://www.daleseo.com/python-os-environ/
스레드 수(따라서 CPU 코어 수)
Damerau-Levenshtein distance(Edit distance)
정보 이론 및 컴퓨터 과학에서 Damerau-Levenshtein 거리는 두 시퀀스 간의 편집 거리를 측정하기위한 문자열 메트릭입니다.
비공식적으로 두 단어 사이의 Damerau-Levenshtein 거리는 한 단어를 다른 단어로 변경하는 데 필요한 최소 연산 수입니다.
오타 수정 -> 문자열 비교 알고리즘
문자열 A에서 몇 자(character)를 수정(delete, insert, substitute, transpose)하여 B가 되는걸 숫자로 표현한 것을 A와B의 Edit distance라고 부른다.
transpose는 두개의 인접한 문자를 서로 바꾸는 것이다. ex) lettre --> letter
L-distance(Levenshtein distance) : insert, delete, substitute
DL-distance(Damerau-Levenshtein distance) : insert, delete, substitute, transpose
>>> list(range(1, len('abc') + 1)) + [0]
[1, 2, 3, 0]
>>> [0]*100
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
>>> [0, 0]+[1]
[0, 0, 1728x90'<Kaggle> > [Mercari Price Suggestion]' 카테고리의 다른 글
6/2 언어모델 (0) 2022.06.02 5/31 위키피디아로 Word2Vec 학습 (0) 2022.05.31 5/30 (0) 2022.05.30 5/29 (0) 2022.05.29 5/28 (0) 2022.05.28