Coder Social home page Coder Social logo

kpnn's People

Contributors

stannam avatar sunhoi avatar

Stargazers

 avatar

Watchers

 avatar

kpnn's Issues

pull/push에 대한 것

만약 내가 KPNN 프로젝트에 대해 r-studio에서 push를 했으면, 여기에서 pull request는 남성현만 할 수 있는지, 아니면 나도 할 수 있는지 모르겠네. 아무나 할 수 있으면, 동일 파일의 코드가 덮어 써 질 수 도 있을 거 같아서.

사이시옷 문제

어중 C 이전의 'ㅅ'은 무조건 사이시옷으로 가정하고 제거할 수 있는 기능

(preprocessing문제)

generate PNN (based on 1) 문제

source(".\generate_PNN.r", encoding = "UTF-8")

net <- genPNN(data = data,
entry = "entry",
convention = "klat",
# surface = T, #(surface is a parameter to be added for surfacing orthographic form)
unit = "klat",
deletion = T,
pajek = F)
을 돌렸더니

Error in detectCores() : could not find function "detectCores"
Called from: makeSOCKcluster(spec, ...)
Browse[1]>

이런 에러가 나네.

GUI data input

use tcltk or RGtk2 to prompt a window for the user interface

save memory / compromise speed

10만 by 10만 PN Pair generate 가능하려면 연산을 순차적으로 하면서 도중에 자꾸 중간결과물을 출력해야 함

documentation

readthedocs 이용해서 사용된 함수들 문서화할 것

PACKAGE

hangul_converter 가 의존하는 파일들 때문에, 다른 프로젝트에서 KPNN의 일부기능을 가져와 사용하기 불편. 패키지로 만들어서 배포 필요.

의무규칙과 임의규칙

1. 의무 규칙
(1) 평폐쇄음화: 밭 ->받 (coda neutralization)

(2) 비음화 (assimilation)
a. 설측음의 비음화: 금리 -> 금니, 의견란 -> 의견난, 신라면 -> 신나면 (비음의 설측음화 참조)
b. 설측음 앞 평폐쇄음의 비음화 과정:압력 -> 암녁
c. 장애음의 비음화: 돋나물 -> 돈나물

(3) 설측음화 (assimilation)
a. 난로 -> 날로, 신인류 -> 신일류 (단어 내부)
b. 겨울날 -> 겨울랄, 간략 -> 갈략

(4) 경음화 (tensification)
a. 장애음 뒤 경음화 국밥 -> 국빱
b. 어간말 비음 뒤 경음화 안다 -> 안따 (<한국어 사용빈도>에서는 어간만 제시되어 있으므로 이 규칙이 적용된 경우는 없음)
c. 관형형 어미 뒤 경음화 갈 곳이 -> 갈 꼬시 (<한국어 사용빈도>에서는 어간만 제시되어 있으므로 이 규칙이 적용된 경우는 없음)
d. 한자어 경음화 한자어 단어 내부에서 ‘ㄹ’ 뒤에 ‘ㄷ, ㅅ, ㅈ’이 경음
갈등 -> 갈뜽, 결사 -> 결싸, 갈증 -> 갈쯩

(5) 구개음화 (palatalization)
굳이 -> 구지

(6) 자음군 단순화 (complex coda simplification)
넋 -> 넉, 흙 -> 흑
임의 발음 맑다 -> 막따 (표준발음), 말따, 넓다 -> 널따, 넙따 (표준발음)

(7) 격음화(aspiration)
: 놓고 -> 노코, 이웃하다 -> 이우타다

(8) /ㄴ/ 첨가: <표준국어대사전>에 나온 대로 (?)
솜이불 -> 솜니불

(9) /j/ 탈락: ㅈ, ㅊ 뒤에 j 탈락 (2차 작업에서 반영되어야 함) (?)
츄리닝 -> 추리닝

(10) /ㅎ/ 탈락 (inter-vocalic 'ㅎ' deletion
좋아 -> 조아

2. 임의 규칙
(1) 양순음화 (?)
신문 -> 신문, 심문, 맏며느리 -> 만며느리, 맘며느리

(2) 연구개음화 (?)
손가락 -> 손까락, 송까락

(3) 동일 조음 위치 장애음 탈락 (?): <표준국어대사전>에서는 인정하지 않았으므로 임의 규칙으로 분류하였으나, 신지영·차재은(2003)은 이를 최종 규칙으로 보고 최종적으로는 장애음이 탈락되는 것으로 보았다.
집필 -> 집필(표준국어대사전), 지필 (신지영·차재은(2003))

(4) /ㅎ/ 탈락 (?) (임의)
외할머니 -> 외알머니, 외할머니, 문화 - > 무놔, 문화
(5) ‘의’ -> ‘이’ 변화: 단어 처음을 제외하고.

3. 모음의 중화 (의무적으로)
ㅔ, ㅐ는 ㅐ 로
ㅞ, ㅚ, ㅙ는 ㅚ (표준국어대사전)
ㅖ, ㅒ는 ㅒ로

위 규칙들 중 이미 코드 작성된 규칙이 아닌 규칙들 중 코드 작성 가능한 것이 있을까?

특정 품사에 해당하는 단어와 그 정보 추출

data_cleaning.r 코드의 일부인

extractPOS <- function(data, POS=NULL) {
if (!any(class(data)=="data.frame")){
stop("Please input a data.frame or tbl object.")
}
if (is.null(POS)){
stop("Please enter a value for POS.")
}

if (!is.null(data[[POS]])){
options <- as.factor(data[[POS]])
options <- paste(levels(options)[1:5],collapse=" ")
print(paste0("Some of your POS codes are: ", options))
whatPOS <- readline(prompt = "Enter a POS code? ")
data <- data[grep(whatPOS,data[[POS]]),]
}

return(data)
}
이 그 기능을 하는 듯한데, 예를 드련 data 가운데 NNG만 추출하려면 어떻게 하는가?

지금까지 코드로 원데이터로부터 얻을 수 있는 데이터

내가 예전 코드로 얻을 수 있는 건 (가능)이라고 표시하고, 아직 얻을 수 없는 건 (아직 미정)이라 표기하였음. github에서 다운 받은 KPNN 새 코드에서 얻을 수 있는 것과 얻을 수 없는 것을 표시해 주기 바람.
월요일 미팅에선, 이 표를 중심으로 새 코드들에 대해 설명을 듣고 토론하면 좋겠음.

  1. 꼬리표 등 각종 기호 제거된 단어 목록 (가능)
  2. 동음이의어 제거된 단어 목록 (가능)
    3. 품사별 단어 목록 (예전 코드론 가능, 그러나 이번 코드론 아직 미정)
  3. 음소 기준 단어 철자, 예: 문자 -> ㅁ ㅜ ㄴ ㅈ ㅏ (가능)
  4. 발음기호로 변환된 단어 목록 (가능)
  5. 음소 기반 음운 이웃 (가능)
  6. 음소 기반 음운이웃 시각화 (가능)
  7. 음소 기반 음운이웃 지표값 산출 (가능)
  8. Pajek 작동 파일 작성 (가능)
  9. 기존 데이터를 기반으로 random lexicon 만들기 (가능)
  10. 기존 데이터의 단어 목록을 n-gram 발음기호로 만들기 (가능)
  11. 기존 데이터의 단어 목록 n-gram 발음기호를 다시 한글 n-gram으로 만들기 (가능)
    13. 음절 경계를 포함한 발음기호 n-gram 만들기 (아직 미정)
    14 음절 경계를 포함한 한글 n-gram 만들기 (가능)
  12. 음절 기반 음운이웃 (가능)
  13. 음절 기반 음운이웃 시각화 (가능)
  14. 음소 기반 음운이웃 지표값 산출 (가능)
  15. 단어 위치별 음절 목록 및 그 정보 산출 (가능)
  16. 노드 별 지표 산출 (가능)
    20. 사이시옷 관련 자료 (아직 미정)
    21. 각종 규칙 적용 데이터 생산 (아직 미정)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.