NLP 첫 번째 교훈 (I도 배우기 시작)

  이상 그 이하를 유휴 지루함, 나는 인터뷰에 가서 어느 날 내가 그만, 내가 것, CRUD뿐만 아니라, 또한 프로그래밍 5 년의 경험을 가지고, 자신을 물어 보곤 나는 급여를 기대할 수 있으며, 젊은 졸업생의 낮은 실제로 소프트웨어 프로그래밍, 모든 좋은 드라마를 수행하고 점차 자신이 스스로 그들이 훈련 기관에서 것을 잊지 세뇌주고, 내가 가진 장점이 무엇인가, 나는 전기학과 단지 대학 학생입니다, 그는 말했다 많은 교육 기관이 우리가 일정 비율로 태어나 대학 교육 사람의 차이는, 최종 분석에 아직도 배울 필요가 있다고 말하지 않았다, 나쁜 말을하지 않았다, 불평, 6 개월 이상 파이썬 자신을 가르쳐 휴가를 지금 NLP를 배우고 훈련보고 영어가 결함이, 자신은 그가 무기력했다.

  집 가까이, 내가 당신과 함께 공유하기 위해 온 것을 내가 무엇을 배웠이 시간 (2019년 7월 1일에 2019년 6월 15일).

  우리가 인공 지능을 선택했기 때문에, 우리는 인공 지능이 무엇인지 알아야한다, NLP가 무엇인지, 우리는 먼저 그 권리를 몇 가지 용어를 정의합니다.

  AI (인공 지능), AI에 대한 영어 약어. 그것은 시뮬레이션, 확장하고 새로운 인간의 과학 기술 지능 이론, 방법, 기술 및 응용 프로그램의 확장을위한 연구 개발입니다. 인공 지능은 지능의 본질을 이해하고, 새로운 지능형 기계가 인간의 지능 유사한 방식으로 대응할 수있는 생산하려고 컴퓨터 과학의 한 분야이며,이 분야의 연구는 로봇, 음성 인식, 영상 인식을 포함 자연 언어 처리 전문가 시스템. 인공 지능, 이론과 기술의 탄생이 더 정교 해지고 있기 때문에, 응용 분야가 계속 확장, 미래, 그것은 인간의 지혜가 될 것이다 인공 지능 기술 제품을 제공 것으로 생각된다 "컨테이너입니다." 인공 지능, 의식은 인간의 사고 과정 정보를 시뮬레이션 할 수 있습니다. AI는 인간의 지능,하지만 인간의 지능을 초과 할 수 있습니다, 사람처럼 생각 할 수 없습니다. 인공 지능은 컴퓨터 지식, 심리학과 철학을 이해해야합니다이 작업에 종사하는 도전적인 과학이다. 인공 지능은이 같은 기계 학습, 컴퓨터 비전, 그래서, 일반적으로, 인공 지능 연구의 주요 목표는 약간의 기계가 할 수 있도록하는 것입니다 서로 다른 영역으로 구성되어, 과학의 매우 넓은 범위 보통 완료하는 데 인간의 지능을 필요로 복잡한 작업. 그러나 다른 시간,이 "복잡한 작업"다른 사람들의 이해는 다르다.  [1] 년 12 월 2017, 인공 지능이 등장 "2017 연간 톱 텐 중국 언론의 유행어." (바이 제거)

  나의 부분을 위해, 나는 인공 지능이 우리의 기존 장비는 사람들이 더 일을하고, 인간의 마음에 부여 할 수 있습니다 도움 (컴퓨터, 로봇으로), 기계가 인간의 이성과 인류를 역할을하도록하는 것입니다 생각합니다. 예를 들어, 우리는 등등 스마트 주차, 음성 통화, 자동 로봇 공장과 지금이다.

  NLP는 약어 NLP (신경 언어 프로그래밍)입니다. 일반적으로 자연 언어 처리로 알려진, NLP 나는이 주로 기계가 인간의 마음의 교류와 기능을 제공 정상적인 인간의 언어를 제공 할 수 있도록하는 것입니다 생각합니다. 이러한 뉴스로 채팅 로봇으로 스팸을 분류합니다.

  우리는 중국어 문법이 더 알고,의는, 간단한을 단어를 생성 할 수 있습니다. 종래의 텍스트, 일반적으로

= 호스트 "" " 
호스트 = 시간 명사 동사 형용사 명사 피사체가 명사의 중요한 
시간 = 명사 오전, 오후, 어제 정오, 자정, 작년에, 내일을 
대상 명사 = 학생, 사람들, 오래된, 여성, 게이, 삼촌 
형용사 빠르게 = 신속하게, 조용히, 조용히 
동사 = 싸움, 추적, 들리고, 소리,보고 
업무가 명사 = 달팽이, 치타, 오토, 야구, 전투기, 명왕성 
. "" "

우리는 예를 들어, 단어를 구성 할 수있다 문장의 요소의 텍스트의 첫 줄은 몇시 명사 + 주제 + (형용사) + 동사 + (명사 업무)를 가지고 있음을 볼 수있다, 오늘 밤 우리는 치열하게 초과 근무를해야한다. 월도, 내일의 지도자들은 큰 식사를하는 우리를 초대했다.

우리 시대 명사 + 주제 + (형용사) + 동사 + (문제가 명사) 형식으로 위의 텍스트의 구성 될 수에 따라 모든 진술의 코드의 구현을 살펴 보자 (유창하지를 통해 몇 가지 문제를 고려하지 않는다).

아이디어는 포맷에 따라 문장에 접합하기 위하여 요소의 다음 세트 -5- -4- 랜덤 값을 제공하는 2, 3 형식 문장 요소를 절단하는 라인에있어서, 1- 텍스트를 얻었다.

코드 :

# !를 / usr / 빈 / ENV 파이썬 
# - * - 코딩 : UTF-8 - * - 
가져 오기 임의의 

호스트 = "" " 
호스트 = 시간 NP 과목은 형용사 동사 업무는 명사 명사 
시간 명사 = 오전, 오후, 어제 정오, 자정 지난 해, 내일 
주제 명사 = 학생, 사람들, 오래된, 여성, 게이, 삼촌 
형용사 = 신속하게, 신속하게, 조용히, 조용히 
동사 = 싸움, 추적, 들리고, 소리,보고 
업무는 =를 명사 달팽이, 치타, 오토, 야구, 전투기, 명왕성 
"" " 


# 주로 사전에 텍스트 데이터로 변환 
DEF의 create_grammar (grammar_str, 분할 = ' = ' , line_split = ' \ N- ' , code_split = ' , ' ) : 
    문법 = {}
     에 대한 라인 grammar_str.split (line_split)
         경우 라인  ' :
             계속 
        K를, V = line.split (분할) 
        문법 [k.strip ()] = [s.split () 에 대한 S v.split (code_split)]
     반품 문법 


#의 随机의选择의 
선택 = random.choice의 


# 得到句子
DEF (g 대상)를 생성한다 :
     만약 타겟 하지  에서 g :
         반환 대상
     다른 :  = 선택 (g [목표]) 
        문장 =''   # 最终句子的 
        AA = [생성 (그램, t) 에 대한 t 에서 리]
         에 대한 S AA :
             경우하다  하지  ' / N ' : 
                문장 + = S
         리턴 문장 


경우  __name__ == ' __main__ ' :
      범위 (10 ) : 
        ADJ = 생성 (create_grammar (호스트 ' = ' ) = 타겟팅 ' 호스트 ' )
         인쇄 (형용사)

그는 인간을 따라 할 수있는 수술 후, 우리는 많은 문장은 우리의 언어 습관과 완전히 일치하지, 잘못 찾을 것입니다, 그래서 우리는 임의의 선택이 현명한 선택, 우리가 현명하지 못한 선택을 처리하려고하지 않는, 그래서 수행하려고 음성 출력 모드 "고정 된 형식"워드.

  지금은 TV 프로그램에서 또한, 일반적인 약간의 게임을, 당신은 황금의 냄비, 조명 등의 단어, 생각하자, 팁을 제공, 우리의 대부분이 처음 JDB 생각하는 것, 예를 들어, 우리는 교실, 검은 말 우리는 칠판 생각하는 또 다른 예는, 오후 6시, 우리는 초과 생각합니다. 이전에 주어진 단어에 따라 인간도있다 등, 우리는 즉시 응답을 제공 할 것입니다. 이것은 내가 최근에 배운 것입니다 N-g

  N 그램 언어 모델은 모델 (언어 모델, LM)은, 언어 모델은 입력 단어 (시퀀스의 어순), 문장의 출력 확률, 즉, 그 단어 인 확률 모델 판정한다 공동 확률 (조인트 확률).

  N 그램는 가정에 기초한다 : (숨겨진 마르코프 가정 사이에도) 다른 용어와 연관되지 동안 n 번째 워드는 이전의 n-1 개의 단어에 관련된 표시됩니다. 전체 문장의 출현 확률은 각 단어의 확률의 제품이 표시에 해당합니다. 각 단어의 확률을 통계적 코퍼스에 의해 계산 될 수있다. 일반적으로 N-그램 또는 텍스트 말뭉치에서. 언급 한 음절 N = 1, N = 2 음절을 칭한다 때 두 의존으로, N = 3, 즉, 다음 단어가 가정에서 bigrams의 전면에 나타나는 단어 따라 그것의 앞에 나타나는, 트라이 그램에서의 가정 다음 단어라고 단어, 그래서 그 괘합니다. 이론적으로, n은 더 큰, 더 나은 경험, 사용되는 가장 괘는, 그러나, 원칙적으로 음절을 해결하는 데 사용할 수있는, 결코 괘를 사용하지 않습니다.

  의 몇 가지 공식을 살펴 보자 :

  1 g : P (W3, W2, W1, ..., WN) = P (W1) P (W2 | W1) P (W3 | w1w2) P (W4 | w1w2w3) ... P (WN | w1w2 ... WN-1) ≈P (W1) P (W2 | W1) P (W3 | W2) P (W4 | W3) ... P (WN | WN-1)

  2 g : P (W3, W2, W1, ..., WN) = P (W1) P (W2 | W1) P (W3 | w1w2) P (W4 | w1w2w3) ... P (WN | w1w2 ... WN-1) ≈P (W1) P (W2 | W1) P (W3 | w1w2) P (W4 | w2w3) ... P (WN | 2wn WN-1)

  아마 설명 무엇 (W1)이 / 확률, 즉, 계산 (W1) 코퍼스 P에 표시 W1 총이며, P (W2 | W1) W1 뒷면에 표시 W2 확률, 즉 수 (w1w2입니다 ) / 수 (W2) 우리는 다음 실제 예를 살펴 2 그램.

  P (참조 | 우리가 좋아) | 우리는 읽고 싶은, 우리는 책을보고 싶어 단어로 절단 한 후, 다음 P (우리가 볼 책을 좋아하는) = P (우리) P (우리와 같은)이된다 P (책 |보고 싶다)

  P (우리) "우리가"단어 내부의 신체에 나타나는 확률을 표현;

   P (같은 | 우리)이 단어가 나타납니다 "좋아요"를 "우리"확률 뒤에 (단어 분모, 분자와 같은 당신과 같은 단어의 발생 수로 표시 횟수 등)

 

   | p는 (참조 우리가 좋아)라는 단어는 "우리가 좋아"뒤에 확률에 나타납니다 "를 참조하십시오」를 나타냅니다 (숫자가 분모로 나타납니다보고, 우리는 분자로보고 싶어 발생 횟수)

 

   p는 (도서 |보고 싶다) 단어가 나타납니다 "책"을 의미 확률의 뒷면을 "우리가보고 싶다". (분모로 책의 발생 수는 분자로 읽는처럼 나타납니다)

  

  우리는 2 그램을 사용할 때 그리고, 만에 처음 두 단어를 고려한다.

 

  그리고 우리는 그들의 숫자는 0-1 곱한 얻을 것이다, 0에 무제한 가까운 문이 1 시간에 무한히 가까운, 잘못 될 가능성이 있음을 나타냅니다는 문이 잘 될 가능성이 있음을 나타냅니다

 

  코드 구현은 아직 완료되지 않았습니다. 최근의 작업 딜레마, 코드 부분을 쓰기 완전히 그에서 수행되지있다. 며칠이 채워집니다.

추천

출처www.cnblogs.com/cxiaocai/p/11121574.html