2013-10-21 7 views
6

私は臨床ドキュメントパイプライン をJavaから実行する方法を理解しようとしています。私はプレーンテキストとして一連の臨床文書を持っています。私はこれらのドキュメントを解析し、ドキュメントdoc_IDにあるリストを抽出したい、周波数の周波数を持つCUIがある。私は数日間cTAKESをインストールし、解決策を探しました。私はそれをClinicalPipelineWithUmls.javaに絞り込み、ここでテストを取得し、AnaylisisEngineDescriptionでSimplePipelineを実行します。ここでは、コードの一部です:臨床ドキュメントを解析するためにcTAKESを使用

String documentText = "Text of document to test goes here, such as the following. No edema, some soreness, denies pain."; 
InputStream inStream = InputStreamCollectionReader.convertToByteArrayInputStream(documentText); 
CollectionReader collectionReader = InputStreamCollectionReader.getCollectionReader(inStream); 
AnalysisEngineDescription pipelineIncludingUmlsDictionaries = AnalysisEngineFactory.createAnalysisEngineDescription(
      "desc/analysis_engine/AggregatePlaintextUMLSProcessor"); 
AnalysisEngineDescription xWriter = AnalysisEngineFactory.createPrimitiveDescription(
      XWriter.class, 
      XWriter.PARAM_OUTPUT_DIRECTORY_NAME, 
      AssertionConst.evalOutputDir, 
      XWriter.PARAM_XML_SCHEME_NAME, 
      XWriter.XMI, 
      XWriter.PARAM_FILE_NAMER_CLASS_NAME, 
      CtakesFileNamer.class.getName()); 
SimplePipeline.runPipeline(collectionReader, pipelineIncludingUmlsDictionaries, xWriter); 
System.out.println("Done at " + new Date()); 

問題は、それが「InputStreamCollectionReader」を見つけることができないです。私はそれを探したが、これまでのところ成功していない!あなたは私にヒントを与えたり、いくつかの方向を示してくれませんか?助けてくれてありがとうございました !

答えて

3

InputStreamCollectionReaderを使用する特別な理由はありますか?それ以外の場合は、TextReader hereの使用方法に関する例があります。

+1

あなたの回答をいただきありがとうございます。はい、私は各単語に関連するUMLS CUI(概念一意識別子)を抽出するためにcTAKESを使用しています。私はこのコードをcTAKESの文書で見つけました。ただし、 "InputStreamCollectionReader"が見つかりません。私はこのメイプルとエクリプスの世界では初めてです。申し訳ありませんが、それは愚かな質問です!コメントとヒントを感謝します。 – user2600417

+1

さて、 'TextReader'を代わりに使ってみましたか?それはあなたのために働くはずです。 – Renaud

0

私たちは、臨床テキストをリクエストとして送信し、解析された出力をJSONレスポンスとして返すことができるcTAKES用のRESTサービスを実装しました。

github repoでcTAKES RESTモジュールを見ることができます。これは、Webアクセスに興味のあるcTAKESユーザーには適していると思います。

関連する問題