2017-06-27 10 views
-1

私はユニークな問題があり、私の助けとなるアルゴリズムは認識していません。多分、ここの誰かがします。テキストデータを使用した正規のクラスの決定

私は、さまざまなソース(チーム)から集められたデータセットを持っています。特に、1つのフィールドは「タイプ」と呼ばれます。

APLE、りんご、APPLS、ornge、果物、オレンジ、オレンジZ、梨、 カリフラワー、colifower、brocli、brocoli、ネギ、野菜、野菜:ここではいくつかの例のタイプの値です。

私ができることを望むのは、それらを一緒にグループ化することです。果物、野菜などのように、私は親レベルの変数(この例では果物や野菜)のさまざまな順列の複数のスペルを持っているので、私は可能な限りグループ化する必要があります。

データの潜在的に関連性のある唯一の機能は、各チームがデータを入力する方法にある程度の一貫性があると仮定して、入力したチームです。

私は複数の綴りと短い綴り(リンゴやりんごなど)を数百万件記録しており、何らかの方法でそれらをグループ化したいと考えています。果物や野菜によるこの例では。

クラスタリングは、各エントリが最も頻繁に1,2語であり、用語間の距離を計算するのが難しいため、困難です。

人間が作成した膨大なルックアップテーブル(何百万行もありそうもない)を作成するのではなく、この問題を解決する方法はありますか?

+5

これはまだ統計的な作業ではありません。単語ごとに略語を復元する必要があります(ボキャブラリー形式を復元する)。しかし、多くの単語が不規則で乱雑な略語である場合には、文字化/略語化さえするソフトウェアですらほとんど助けにならないでしょう。私は実際に最も簡単な方法は、その何百万という言葉のリストを通過し、それぞれを完全な形に最初に変換することだと私は信じています。ほとんどの典型的なスペルミスを例として、あらかじめ自動的に行うことができるレコーディングの一部です(例:ornge - > orange)。 MS Wordやいくつかのインターネットサイトのようなプログラムは、正書法をチェックするときに誤ったスペルを速く修正するのに役立ちます。 – ttnphns

+0

こんにちは@ttnphns、私はそれを行い、データを完全に綴っています(うまくいけばそこには魔法の図書館があります)、どうすればいいですか? 「教えてください」という言葉は私にとっては新しい言葉です。私の目標は言葉を軽量化することですか?あなたはそのためのパッケージを知っていますか?これまでの情報をありがとう –

+0

あなたはそれらを一緒にクラスタ化することができるどのような情報がありますか?各エントリには、オブジェクトの緑色や葉色に関する追加情報がありますか? 「リーク」や「リンゴ」はコンピュータにとって無意味な文字列です。データセットや外部ソースからの追加情報なしに、コンピュータを使って「果物」や「野菜」に分類するアルゴリズムはありません。 - 人間でさえそれができないので、我々は外部情報(文字列 "leek"と "apple"が表すもの、そしてそれらの表現されたオブジェクトの特性、例えば緑や味)も使用します。 – Chill2Macht

答えて

1

Googleスケールデータでスペルを修正する方法を学ぶことができない限り、まずスペルの問題を解決する必要があります。

それでも "Apple"は果物やコンピュータである可能性があります。アップルと "おばあちゃんのスミス"はまったく違う。この2番目の段階では、と大文字のに訓練されたword2vecのようなものです。その後、高次元の単語ベクトルを取得し、まともな結果を得るまでには、最終的にはクラスタリングの課題を解決しようとすることができます。がんばろう。

関連する問題