機械学習での文字列入力


8

ロジスティック回帰やニューラルネットワークなどの一般的な機械学習アルゴリズムでは、入力を数値にする必要があります。

私が興味を持っているのは、これらのアルゴリズムを非数値入力(短い文字列など)で機能させる方法です。

例として、入力機能の1つが送信者アドレスである電子メール分類システム(スパム/非スパム)を構築しているとしましょう。

学習アルゴリズムを使用できるようにするには、送信者アドレスを数値として表す必要があります。1つの方法は、送信者に単純に番号を付けることです1..n。トレーニングセットは次のようになります。

機械学習の入力

ただし、ロジスティック回帰やニューラルネットワークなどのアルゴリズムは入力データのパターンを学習するため、これは機能しませんが、この例では、出力はアルゴリズムに対して完全にランダムに見えます。実際、大学のクラスに入ると、このようなデータセットでニューラルネットワークをトレーニングしようとしましたが、ネットワークは何も学習できませんでした(学習曲線はフラットでした)。

この例では、ロジスティック回帰またはニューラルネットワークを使用しますか?はいの場合、その方法は?そうでない場合、送信者アドレスに基づいて電子メールを分類する良い方法は何でしょうか?

完璧な答えは、一般的なMLでの短い文字列の処理だけでなく、メール分類の例についても説明します。

回答:


4

人気のモデルの1つは、Bag of Wordsモデルです。

また、単語を整数としてモデル化することもできます。それらには「相対距離メトリック」があり、分類プロセスの本質を捉えることができます。ただし、これの欠点は、前処理ステップが高価でありドメインに関する知識が必要になることです。

d(walk,talk)<d(walk,plod)

メトリックは、分類プロセスのコンテキストに依存します。たとえば、韻を踏む単語を分類するための距離メトリックは、同義語/類似の意味を伝える単語を分類するために設計されたものとは異なります。文字列メトリックのリストについては、このウィキペディアの記事をご覧ください。

また、このレビューペーパーもご覧ください。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.