1

つまり、私は仕事用のプロジェクト (ソフトウェア サポート) の「設計」段階にあり、森の奥深くに入る前に、コミュニティの意見やアイデアなどを収集したいと考えています。最終的には、Twitter のトレンド ページに非常によく似た Web ページを作成しています。これは、私がそれをどのように使用するかの高レベルの概要です。

当社のサポート担当者は、顧客から電話がかかってきたときにチケットを作成します。チケットのテキストはリアルタイムでキャプチャされ、「Hoss」と呼ばれる別のサーバーに送信されます。Hoss がデータを受け取ると、テキストの解析を開始します。ここでの主な関心は、サポート担当者が顧客が抱えている問題の簡単な要約を入力するテキストエリアです。この情報を取得して解析し、「トレンド」トピックを一覧表示する Web ページに表示して、マネージャーが顧客からの問い合わせ内容をリアルタイムで把握できるようにしたいと考えています。

さて、楽しいことと、方向性を知りたいところです...この例について。要約テキストエリアに次のものが含まれているとしましょう:

「アップデートをインストールしようとすると、「update.exe でエラーが発生しました」というエラーが表示されます。

Hoss サーバーはこのテキストを取得したので、解析を開始できます。トレンド フィードのキーワードを取得することに関心があります。この例では、「error」、「install」、「update.exe」です。ただし、一緒に表示されるキーワードをキャプチャ/追跡することも重要です。つまり、「エラー」と「インストール」を簡単に把握し、基本的に、これらの単語が特定の時間に何回出現したかを数えることはできますが、それらを単独で使用した場合ほど多くの洞察は得られません。

繰り返しますが、私はこのプロジェクトの非常に初期の段階にいるため、コード例などを添付していません。この時点で立ち入り禁止のものはありません! 前もって感謝します!何時間もかけて投稿を読んだ後、このコミュニティの力を学びました。これは非常に貴重なリソースです!!!

4

3 に答える 3

1

これは、それ自体が非常に大きな研究分野である自然言語処理に入り込んでいます。

あなたを正しい方向に導くはずのいくつかの考え。

  1. ストップリストを定義します。これらの単語は無視されます。意味のない単語 (is、of、a、when) を含める必要があります。また、多くのチケット (顧客) に表示される可能性が高いため、ほとんど意味のない言葉も含まれます。

  2. 同義語、つまり同じことを意味する別の単語を定義します。文字列をトークン化するときに、一致する単語をルート ワードに置き換えて分散を減らすことができます。

  3. キーワードを 1 ~ 3 のキーワード フレーズで索引付けします。次に、これらの発生を要約して数えます。

これは、より多くのデータが利用可能になるにつれて、おそらく微調整を続けるものです.

于 2013-03-11T15:32:30.347 に答える
0

Carrot2 ( http://project.carrot2.org/ ) のようなクラスタリング サーバーを使用し、チケットの内容または件名をドキュメントとして渡すことをお勧めします。使用するアルゴリズムを選択できます。クラスタリングが開始されると、クラスターの数によってトレンド トピックを取得できます。Carrot2 は Java ですが、試してみることができるコードで利用できる便利な php の例 (ドキュメントを送信し、結果とカウントを取得するため) があります。また、php curl または guzzle で使用できる REST API もあります (curl の負担を軽減します)。

于 2013-03-11T15:37:02.237 に答える
0

フィードが Hoss に送信されるたびに、解析中にpreg_match()フィードで a を実行するか、フレーズが表示されて保存される回数を数えます。デシベル。

注目している 10 個の単語の配列がある$support_words=array('word1','word2','word3', ...'wordn');とします。配列項目の数をカウントし、ループを実行してカウントを確認します。例えば。foreach($support_words as $words){$count = substr_count($feed_from_customer_reps, $word); // insert the word and count into the database here. or better still fetch word if exists from database, get the current count and add the new count to it. // }

これは、テストされていないコードであり、実際のプログラム コードというより疑似コードです。ロジックを理解していただければ幸いです...不明な場合はお知らせください。

リソース: php substr_count マニュアル

于 2013-03-11T15:38:37.467 に答える