기본 콘텐츠로 건너뛰기

Discussion

Data in this post is from Quora, Reddit, Stack Overflow and so on, where people usually discuss about concepts.


[ Quora ]

Why are rule based methods becoming unpopular in NLP? [Original]
[정리]
- 질좋은/많은 데이터가 없을 경우 rule-based가 큰 역할을 한다.
- 만약, 어떤 문제를 fast-and-dirty하게 풀 때, pattern(=rule)을 리스트화하는게 가장 좋을 것이다.
- tokenization/ stemming/ sentence_breaking/ morphology와 같이 deterministic을 요구하는 경우(그다지 복잡하지 않은 경우)에 rule-based가 좋다. 즉, linguistic data frame에는 rule-based의 pre/post processing이 필수적이다. 그리고 이러한 pre/post processing은 ML-classifier의 성능에 큰 영향을 준다. 따라서, rule-based와 ml-based는 서로 뗄레야 뗄수없는 하나의 framework이다. 단지 서로의 역할만 정해져 있고, 어디에 초점을 맞추는지에 따라 달라질 것이다.
- 하지만, rule-based는 scale 하기 어렵다.  즉, 수백/수천/수만개의 rule들이 있으면, 서로 매우복잡하게 얽히고 설켜 결국엔 시스템이 엉망이될 수도 있다.  
- 좋은 방법은 시스템을 여러 단계로 나눈 후, 정교한 feature가 정의되면 rule-based로 각 단계를 해결하고 (아마 pre/post processing에 해당), 그 다음 feature들을 combine하고 싶을 때는 ML-based로 가는 것(generalization을 더 잘하기 위해)이다. 참고로 rule-based는 overfitting을 확인할 방법이 없다.
- Classification 문제에서 목표는 적합한 Decision Boundary를(이하DB) 찾는 것이다. rule-based는 복잡한 DB를 찾기 쉽지 않다. 반면, ML-based는 regression을 통해 복잡한 DB를 찾을 수 있다. DB를 찾는 측면에서, rule-based는 discrete spectrum이라 생각할 수 있고, ML-based는 continuous spectrum이라고 생각할 수 있다. 이를 과장해서 보면, 각각discrete과 continuous에 해당한다고 볼 수 있기 때문에, 장단점이 존재한다. 




[ Reddit ]





[ Stack Overflow ]


댓글

이 블로그의 인기 게시물

Pattern Discovery in Data Mining

Coursera Illinois at Urbana-Champaign by Jiawei Han 2015.03.19 CONTENT 1. A brief Introduction to Data Mining 2. Pattern Discovery : Basic Concepts 3. Efficient Pattern Mining Methods 4. Pattern Evaluation 5. Mining Diverse Patterns 6. Constraint-Based Pattern Mining 7. Sequential Pattern Mining 8. Graph Pattern Mining 9. Pattern-Based Classification 10. Exploring Pattern Mining Applications Lecture 1 : A brief Introduction to Data Mining - We'are drowning in data but starving for knowledge ( a lot of data are unstructured ) - Data mining : a misnomer ! -> Knowledge mining from data - Extraction of interesting patterns (non-trivial, implicit, previously unknown and potentially useful) or knowledge from massive data. - Data mining is a interdisciplinary field (machine learning, pattern recognition, statistics, databases, big data, business intelligence..) Knowledge Discovery (KDD) Process Methodology View: Confluence of Multiple Disciplines Lecture 2 : Pattern Discovery : Ba...

Introduction to Data Structure Using C

윤성우의 열혈 자료구조 자료구조에 대한 기본적 이해 프로그램 = 자료구조(데이터 표현) + 알고리즘(데이터 처리) 자료구조가 결정되어야 그에 따른 효율적인 알고리즘 설계 가능하다. 알고리즘은 자료구조에 의존적이다. 알고리즘의 성능분석 방법 시간 복잡도(Time Complexity) - 속도      연산의 횟수를 통해 알고리즘의 빠르기 판단           데이터 수의 증가에 따른 연산횟수의 변화 정도 판단           탐색 알고리즘에서 시간 복잡도를 결정하는 핵심 연산자는 동등비교(==)이다. 공간 복잡도(Space Complexity) - 메모리 사용량 일반적으로 알고리즘 성능 평가할 때 메모리 사용량보다 실행속도에 초점을 둔다. 일반적인 알고리즘의 평가에는 논란의 소지가 거의 없는 '최악의 경우(worst case)가 선택된다. Big-Oh Notation은 '데이터 수의 증가에 따른 연산횟수의 증가패턴을 나타내는 표기법이다.' 또는 '데이터 수의 증가에 따른 연산횟수 증가율의 상한선을 표현한 것'이다. Recursive 하노이 타워      가장 작은 단위 패턴을 코딩하고 이를 일반화시키면 된다. 리스트 (List)      순차 리스트 (배열 기반)           배열 자료구조 특징인 Index를 통해서 어느 곳이든 바로 이동이 가능하다.           하지만, 프로그램 실행 전에 크기가 결정되어야 한다.           그리고 배열은 메모리의 특성이 정적이므로 메모리 길이 변경이 불가능하다.           정적인 배열은 필요로 하는 메모리의 크기에 유연하게 대처하지 못한다. ...

Logistic Regression

By Andrew Ng 1. Logistic Regression      1.1   Visualizing Data Part             └ plotData function     1.2   Advanced  Optimization  Part             └ mapFeature function             └ costFunctionReg function             └ fminunc function         1.3   Decision Boundary and Prediction   Part             └ plotDecisionBoundary function             └ predict function 1. Logistic Regression We'll implement regularized logistic regression to predict whether microchips from a fabrication plant passes quality assurance (QA). During QA, each microchip goes through various tests to ensure it is functioning correctly. Suppose you're the product manager of factory and you have the test results for some microchips on two different tests. From...