분류 전체보기
[LeetCode] 560. Subarray Sum Equals K
560. Subarray Sum Equals K Medium Given an array of integers nums and an integer k, return the total number of subarrays whose sum equals to k. A subarray is a contiguous non-empty sequence of elements within an array. Example 1: Input: nums = [1,1,1], k = 2 Output: 2 Example 2: Input: nums = [1,2,3], k = 3 Output: 2 Constraints: 1
Text normalization 이란? 텍스트 정규화란?
Text normalization 이란? 테스트를 처리할때 텍스트를 편리한 표준 형식으로 변환하는 것을 포함한다. Text normalization 과정 텍스트 전체를 문장으로 분할 문장들을 단어들로 분할(Tokenization) 단어 형식을 표준화 단어 Tokenization 알고리즘 Regular Expression-based 접근 방식(정규식 기반) 정규식을 사용하여 토큰화를 진행하면 토큰화 속도가 매우 빠르다. Penn Treebank 토큰화(펜트 트리뱅크) 하이픈으로 연결된 단어를 하나의 토큰으로 유지 구두점을 별도의 토큰으로 유지 Linguistic Data Consortium 에서 배포하는 많은 기본 데이터 세트를 토큰화에 사용 하위 단어 토큰화 e.g. Byte-Pair Encoding(B..
Words 에 대해서?
'Word' 로 취급하고 싶은 것은 무엇인가? 문서 또는 텍스트 말뭉치 내의 최소 단위 (Token) 은 무엇인지 결정해야한다. 특정 응용 프로그램에 대해 보관할 Token 이나 제거할 Token 을 결정해야한다. 각 단어와 각 문장 부호 'punctuation' 은 일반적으로 다른 Token 이다. 문장 부호는 문장의 경계, 의미 측면에서 질문 등을 식별하는 데 도움이 될 수 있다. 때때로 단어내의 부분 텍스트도 Token 이라고 할 수 있다. e.g. 'uh' 와 'main-' 은 'I do uh main- mainly business data processing' 과 같은 말하는 문장 (구어) 에서 Token 역할을 한다. Inflection 이란? 단어가 시제, 대소문자, 음석, 사람, 숫자, 성..
Regular Expressions 이란? 정규식이란?
Regular Expressions 이란? 텍스트에서 패턴을 검색하기 위한 표준화된 '언어' 이다. 예시 텍스트 문서에서 모든 이메일 주소 찾기 텍스트 문서에서 모든 가격 찾기 응용 프로그램 텍스트 문서에서 정보를 찾을때 문자열이 매핑된 키워드 찾기 보다 강력하다. 텍스트에서 구조화된 정보를 추출한다. 기본 검색 특정 문자, 숫자 또는 문자열 찾기 하나의 범위내에서 문자 또는 숫자 찾기 특정 문자, 숫자를 제외한 문자 또는 숫자 찾기 Anchors (고정자) 는 문자열의 특정 위치 일치하는 정규식을 연결한다. 행의 시작 부분에만 패턴을 일치시킬때 e.g. /^The/ 줄의 끝에만 패턴을 일치 시킬때, 행의 마지막 마침표와 일치 e.g. /^\./ 일치 단어 경계 e.g. /\bthe\b/ 'the' 는 ..
[LeetCode] 531. Lonely Pixel I
531. Lonely Pixel I Medium Given an m x n picture consisting of black 'B' and white 'W' pixels, return the number of black lonely pixels. A black lonely pixel is a character 'B' that located at a specific position where the same row and same column don't have any other black pixels. Example 1: Input: picture = [["W","W","B"],["W","B","W"],["B","W","W"]] Output: 3 Explanation: All the three 'B's ..
[LeetCode] 623. Add One Row to Tree
623. Add One Row to Tree Medium Given the root of a binary tree and two integers val and depth, add a row of nodes with value val at the given depth depth. Note that the root node is at depth 1. The adding rule is: Given the integer depth, for each not null tree node cur at the depth depth - 1, create two tree nodes with value val as cur's left subtree root and right subtree root. cur's original..
NLP 란? Natural Language Processing 자연어 처리란?
Natural Language Processing(NLP) 란? NLP 는 언어를 소리내어 말하는 구어, 그리고 글로쓰는 문어를 생성하고 이해하는 것을 다루며, 인공지능의 가장 중요한 분야이다. 자언여 처리 응용 프로그램의 예 Information retrieval 정보 검색 Information retrieval 은 일부 문서 집합안의 D 문서에서 Query q(사용자가 요청한 정보) 와 가장 잘 맞는 문서 d 를 찾는 작업이다. 보통 한개의 문서가 찾아지는 대신에 하나의 문서 목록이 검색되는 경우가 많다. Information extraction 정보 추출 구조화 되지 않은 텍스트를 구조화된 데이터로 가공한다. 객체들 간의 의미적인 관계를 추출한다. 예를 들어 X 는 Y 에 속하고 X 는 Y 의 자식..
[LeetCode] 112. Path Sum
112. Path Sum Easy Given the root of a binary tree and an integer targetSum, return true if the tree has a root-to-leaf path such that adding up all the values along the path equals targetSum. A leaf is a node with no children. Example 1: Input: root = [5,4,8,11,null,13,4,7,2,null,null,null,1], targetSum = 22 Output: true Explanation: The root-to-leaf path with the target sum is shown. Example 2..