2017-09-06 242 views
1

我正在使用RPython,並試圖在一定程度上學習基於文本的分析和NLP文本 - 如何將段落分成更小的句子(沒有指示句末結束)

問題:我如何拆分句子是句子像下面

句子=我喜歡我喜歡的系統,我不喜歡被人跟蹤過程中的應用程序組合。

我想這句話分成

  1. 我喜歡的應用程序
  2. 我喜歡的系統
  3. 我不喜歡這個過程所遵循

注:我能夠分割一個像下面這樣的句子,因爲它有一個.來表示句子的結尾

句子=我喜歡這個應用程序。我喜歡這個系統。我不喜歡這個過程。

VJ

回答

1

我可以提出一個方法,可以幫助你,因爲你沒有句點,就可以進行如下:

  • 套用句法分析提取語法性質的段落。

    例子:我喜歡我喜歡的系統,我不喜歡這個過程所遵循

    會產生應用程序:PP VB DT NN ...

    要提取的句法分析,我建議使用Stanford Parser

    PP:人稱代詞

    VB:動詞

    DT:確定

    NN:名詞

    你可以看到,一個句子有可以用來分割句法模式段落變成句子。

  • 構建句子可能的句法樹模型。通過說一個模型,我的意思是一個文件/數據庫,其中包含句子的句法構建。

    :一個模型可以包含下列行:

    PP VB DT NN - >(I吃蘋果)

    VB ADJ NN - >(創建新方法)

    要構建您的模型,您可以分析許多句子(您的系列句子越大,您的系統就越準確)。您可以使用由您自己構建的corpus

  • 一旦你建立你的模型,你就可以開始編寫你的程序。您的算法的主線將爲:

    1-接收輸入段落(作爲輸入或文件)。

    2-應用Stanford Parser生成段落的句法樹。

    3-開始分裂基於該段的部分進行比較的段落與先前構造語法樹(你的句子型號 - >你的模式)

    你需要衡量的部分的similarity帶有句子模型的段落。

我試着給你一個關於如何做你想做的想法/方法。

可能您需要使用NLTK(自然語言工具包)。

+0

謝謝ZimYth。我正在嘗試這種方法。一旦我到達某處,我會發布代碼和更新。在這一點上,我正在學習NLTK使用基於句法樹模型的解析。 –

+0

@MangalPandey這裏是一本關於自然語言處理(Daniel Jurafsky和James H. Martin的言語和語言處理)的精彩書籍。http://www.deepsky.com/~merovech/voynich/voynich_manchu_reference_materials/PDFs/jurafsky_martin.pdf。我只是喜歡這本書!,如果這是一個有用的答案,也許你可以推測它;) – ziMtyth