(ここで言う)ニューロン
複数入力単一出力の関数
- 多くの場合:
- 一次関数(線型結合)からの
- 活性化関数(非線型変換。ヒンジ関数など)
ニューラルネットワーク
ニューロンを非巡回につないだもの
- {3, 2, 1} なる3層全結合な例
正確には、リカレントニューラルネットワークには
巡回があると見なすこともできるが……
どんな問題を解かせるか?
無数。例えば
- 単語のセンチメント分析
- 翻訳
- クエリに対するドキュメントスコアリング
問題をどうエンコードするか?
ニューラルネットワークの入出力は数値
- テキストをどう扱うか?
- ラベルをどう扱うか?
エンコード
One-Hot Encoding
この語彙はこの入力・出力、と割り振る
- 限られた語彙は扱える、系列(テキストなど)は扱えない
| 語彙 | Face | Hugging | I | Love |
|---|---|---|---|---|
| 添字 | 0 | 1 | 2 | 3 |
| 添字 | 0 | 1 | 2 | 3 |
|---|---|---|---|---|
| 語彙 | Angry | Happiness | Negative | Positive |
Label Encoding
語彙に数値を振り、数値を書き並べて系列とする
- 一般に系列は可変長なので、特殊な語彙で終端する
- 英文から和文への sequence-to-sequence な例
| 語彙 | Face | Hugging | I | Love | ... | [EOS] |
|---|---|---|---|---|---|---|
| 数値 | 456 | 345 | 123 | 234 | ... | 901 |
| 数値 | 357 | 579 | 135 | ... | 913 |
|---|---|---|---|---|---|
| 語彙 | HuggingFaceが | 大好き | 私は | ... | [EOS] |
埋め込み (Embedding)
Encoder-Decoder
中間層の出力を取り出すと、いわゆる埋め込みが出る
Neural Information Retrieval
Neural Information Retrieval
ニューラルネットワークが強力なので、
情報検索に使おうという試み
- 例えばクエリとドキュメントを2系列として入力し、
単一の数値を出力する - 数値は、その降順でドキュメントをソートすれば
ユーザが満足するようなもの(スコア)とする
問題はレイテンシ
クエリが来てから全ドキュメントをスコアリングするのが大変
Two-Tower Model
2系列をなるべく後で相互作用させると、
一方の入力から他方の入力までの間に処理を進められる