0

私は機械学習と AI は初めてで、最近 NN を使い始めました。

ここですでにスタックオーバーフローに関する情報をいくつか取得していますが、現時点で収集された情報全体からのロジックは理解できません。

4 つの公称値 (ただし順序値ではない) [A、B、C、D] と、既に正規化された 2 つの数値 [0.35、0.55] を取りましょう。NN の文献では、エンコーディングに 4 つの入力ニューロンを使用する必要があることがよくわかります。しかし、それらの名目上のものを予測する必要はありません。エキスパート システムとルールで使用する場合、最大でも 1 つの関係を表す出力ニューロンが 1 つしかありません。

たとえば、それらを[0.2、0.4、0.6、0.8]に正規化すると、NNはそれらを区別できませんか? NNの場合は数字だけですよね?

素朴なアプローチと考え方:

A with 0.35 numerical leads to ideal 1.
B with 0.55 numerical leads to ideal 0.
C with 0.35 numerical leads to ideal 0.
D with 0.55 numerical leads to ideal 1.

このアプローチについての私の考え方に間違いはありますか?

追加情報(編集):これらの公称値は意思決定に含まれます(数値と組み合わせて統計ツールで測定した場合の重要性)、それらが真かどうかによって異なります。バイナリでエンコードできることは知っていますが、公称値のリストは少し大きくなります。

その他の例:

血液検査 1 で症状 A が診断 X につながる(理想) 血液検査 1 で症状 B が診断 Y につながる(理想)

実際にはエキスパートシステムが使用されています。症状は公称値ですが、血液検査値と合わせて診断します。最後に主な質問: 症状を 2 進数でエンコードする必要がありますか、それとも症状を数値に置き換えることができますか? 数値に置き換えることができない場合、NN を使用する唯一の方法がバイナリ表現であるのはなぜですか?

4

1 に答える 1

0

入力

理論的には、入力をどのようにエンコードするかは問題ではありません。異なるサンプルが入力空間内の異なるポイントで表される限り、それらを線で区切ることができます。また、入力レイヤーが何をしているのか (線形の場合)、入力を線形に結合します。ただし、データが入力空間に配置される方法は、学習中の収束時間に大きな影響を与える可能性があります。これを確認する簡単な方法は次のとおりです。2D 空間の原点を横切る一連の線を想像してください。データが原点の周りに散らばっている場合、これらの線の一部がデータを部分に分割する可能性が高く、特にデータが線形に分離できる場合は、「移動」がほとんど必要ありません。一方、入力データが密集していて原点から離れている場合、最初の入力識別行のほとんどは「データを「ヒット」することさえありません。そのため、データに到達するには多数の重みの更新が必要であり、最初のカテゴリに「カット」するには大量の正確な手順が必要です。

出力

カテゴリがある場合、それらをバイナリとしてエンコードすることは非常に重要です。ABおよびの 3 つのカテゴリがあるとしCます。として 2 つの 3 つのニューロンでそれらをエンコードすると、1;0;0学習中および後でノイズの多いデータを使用して、ネットワークが「不明」な点が出力層のようになる可能性があります。それが本当に概念的にとの間の何かである場合、それは理にかなっていますが、確かにそうではありません。1 つの出力ニューロン end encode を選択すると、同じ状況で、ネットワークはとの間の平均の入力を与え、これにより! したがって、答えは「間違いなく0;1;00;0;10.5;0.0;0.5ACBABC123132B」 - 明らかに間違っています!

参考: ftp: //ftp.sas.com/pub/neural/FAQ.html

于 2013-10-02T08:39:39.643 に答える