Multimodal Joint Attribute Prediction and Value Extraction for E-commerce Productを読む
概要
ECの商品情報のテキストに含まれるAttributeとその値の抽出を行う。テキストの系列ラベリングだけでなくAttributeのクラス分類と同時学習させ、素性にはテキストと画像を用いたマルチモーダルにしつつも画像からのノイズをフィルタリングするためのGateを含めたArchitectureを提案。
EMNLP2020で採択
[2009.07162] Multimodal Joint Attribute Prediction and Value Extraction for E-commerce Product
著者
- Tiangang Zhu (JD AI Research)
- Yue Wang (JD AI Research)
- Haoran Li (JD AI Research)
- Youzheng Wu (JD AI Research)
- Xiaodong He (JD AI Research)
- Bowen Zhou (JD AI Research)
問題設定
商品名や商品詳細のようなテキストに対して商品特徴のNERを行う。商品特徴は「色」「襟の種類」など。 提案手法ではNERを行う際に画像特徴量も用いる。
Figure 1の例では「This golden lapel shirt can be dressed up with black shoes...」というテキストがある時に"golden"は色かもしれないし素材かもしれないが画像から"golden"は色だと分かるし、"black"という単語は画像を見れば対象商品に対するものではないので抽出しないということが可能になる。
(goldenが素材かもしれないというのがよく分からないが、アクセサリーなどで素材が金といったことを指しているのでは無いかと思われる)
contribution
提案手法
提案手法では以下の2つのタスクを解く。
- Product Attribute Prediction (sequence-level multi-label classification)
- Product Value Extraction (sequence labeling task)
Encoder
Text Encoder
BERTを使う。
Image Encoder
ResNetを使用。global visual featureとregional image featureの2つを用いる。
- global visual feature : 最終Pooling層の出力を用いる。
- regional image feature :ResNetのconv5の7 x 7 x 2048 の特徴量を用いる。K=49。(恐らく位置情報は考慮せずに49個=7x7の2048次元のベクトルとして扱う)
Product Attention Prediction
画像がテキストの意味を表現できない場合に画像情報がノイズとならない様に、Gateを設置する。
式(5)の第1項はtoken-tokenのAttention。はBERTの出力。
式(5)の第2項はtoken-image regionのAttention。
GateのはBERTの出力と画像全体の特徴量に依存する。
token-tokenとtoken-image regionのattentionをかけた、BERTの出力、BERTの[CLS]トークンの出力を用いてマルチラベル分類を行う。
が正解のAttributeを表しており、Attributeを持つときは1が立つ。Attributeは全部でL個。
Lossはクロスエントロピーを用いる。
実験
データセット
中国のEC(https://www.jd.com/)から取得したデータセットを用いる。ラベルはクラウドソーシングで作成。
既存手法との比較
提案手法はM-JAVE(Multimodal Joint Attribute prediction and Value Extraction)。
JAVEは提案手法からGateを外して画像特徴量を入れずにテキスト情報だけでタスクを解くモデル。
既存手法は恐らく全てtextのみを使った手法。そのため、既存手法との比較はJAVEと行った方が良い。既存手法に比べて若干JAVEの方がF1スコアが高いが、そこまで大きな差はない。
M-JAVEにするとF1スコアが3ポイントほど上昇するので、この3ポイントが画像の効果と思われる。
カテゴリ毎のAttribute PredictionとValue ExtractionのF1スコア
カテゴリ毎にほとんど差はない。(論文中に対して考察は書いてない。たぶん)
Attribute毎のAttribute PredictionとValue ExtractionのF1スコア
(論文中に対して考察は書いてない。たぶん)
F1が高いAttribute:Shape, Pant Length, Neckline Depth, Slit Type, Elasticity(弾性)
F1が低いAttribute:Pocket Type, Thickness
テキストだけで当てられる、画像が無いと当てるのが難しいといった違いは見られない。人間が見ても判断が難しいどうかが影響している気もするが不明。Pant LengthのF1は高いが、Sleeve LengthやSkirt LengthのF1が低いのは気になるが、特に理由は書いてなかった。
Ablation Study
テキストだけのJAVEに対してAblation Studyを行う。
- w/o MTL:MultiTaskLearningを行わない(具体的にどう学習させるかは書いてない)
- w/o AttrPred:Value Extractionを行う際にAttribute Predictionの結果を使わない(式9のを除外する)
- w/o KL-Loss:学習時のKL-Lossを外す(式14のを0にする)
- UpBound of Attribute Task:Value Extractionが全て正解だった場合のAttribute PredictionのF1
- UpBound of Value Task:Attribute Predictionが全て正解だった場合のValue ExtractionのF1
元々の問題設定としてはValue Extractionだけ解けばよいのだが、Attribute Predictionがあることで若干だが精度が上がっている事がわかる。また、UpBoundのパターンでは片方の精度が上がればもう片方も上がることが示されているので、互いに相関関係にあるといえる。
画像特徴量も含めたM-JAVEのAblation Studyを行う。
- w/o Visual Info:JAVEと同じ状態
- w/o Global-Gated CrossMAtt:global-gated cross-modality attentionを除外する(式5の右辺を除外。画像全体の特徴量が加算されなくなる)
- w/o Regional-Gated CrossMAtt:regional-gated cross-modality attentionを除外する(式9の一番右の項を除外。画像のregion毎の畳み込み特徴量が加算されなくなる)
- w/o Global Visual Gate:global visual gateを除外する(式5のを除外する。gateの値は除外するが、画像全体のcross-modality attentionはそのまま加算される)
- w/o Regional Visual Gate:regional visual gateを除外する(式9のを除外する。gateの値は除外するが、画像Region毎のcross-modality attentionはそのまま加算される)
Gateが無い場合のF1スコアの下がり幅が最も大きく、テキストのみのJAVEよりもF1スコアが低くなってしまう。即ち画像特徴量をAttention込みで組み込んでも精度が上がらず、画像特徴量を用いて精度を上げるためにはGateを用いたフィルタリングが有効であることが示されている。
一方でcross-modality attentionを除外すると画像の全体かregion毎のどちらかが考慮されなくなるが、テキストのみのJAVEよりはF1スコアが高くなる。
Low-Resource Evaluation
ランダムサンプリングで学習データの量を減らした場合のF1スコアを評価。学習データが少なくなるとJAVEとM-JAVEの差が大きくなり、学習データが少ない時ほど画像の効果があることが分かる。