背景 インテリジェントな顧客サービスから機械翻訳、テキスト要約の生成からユーザーレビューの分析、テキストセキュリティリスク管理から製品説明のモデリングまで、自然言語技術はあらゆる場所で使用されています。人工知能分野の重要な分野として、機械が人間の言語、特に漢字などの強い表意文字をよりよく理解できるようにすることは大きな課題です。 単語埋め込みは、教師なし学習 (手動によるデータラベル付けは不要) を使用して単語を意味ベクトル空間にマッピングするテクノロジーです。たとえば、以前は、コンピューターは「cat: 2123」、「dog: 142」などの下付き文字を使用して単語を表していました。下付き文字が異なるため、マシンはそれらを異なる単語としてのみ認識し、人間のように単語間の意味関係を認識できませんでした。単語ベクトル技術はまさにこの問題を補い、機械が基礎となる意味情報を理解できるようにします。実際、多くの自然言語処理アルゴリズムでは、エンドツーエンドのアルゴリズム モデルを構築するための入力としてこれを使用しています。したがって、高品質の単語ベクトル生成アルゴリズムを設計することは、検討する価値のある問題です。 中国語は数千年にわたる発展と進化を経て、強い表意文字言語になりました。私たちにとっては、単語を知らなくても意味を推測できるかもしれませんが、機械がそれを理解するのは難しいです。例えば、「蘒」という字は私たちには分からないかもしれませんが、その字には「艹」という部首と「禾」という木の部首が含まれているので、字の右下隅のような植物である可能性があります。単語埋め込みの手法を通じて、機械が漢字の各画の間にある謎を理解できるようになることを期待しています。しかし、従来のアルゴリズムでは中国語の特性をうまく活用することができません。この記事では、ストローク情報を使用して中国語の単語埋め込みを改善する方法を提案します。 単語埋め込みアルゴリズムは、自然言語処理の分野における基本的なアルゴリズムであり、シーケンスラベル付け、質問応答システム、機械翻訳などの多くのタスクで重要な役割を果たします。単語埋め込みアルゴリズムは、2013年にGoogleによってword2vecとして初めて提案されました。その後、継続的に改良されてきましたが、そのほとんどはラテン文字(英語など)で構成される単語にのみ適用可能であり、中国語の特徴を組み合わせた単語埋め込みに関する研究は比較的少ないです。 関連研究: 1954年には早くも言語学者ハリスが「分布仮説[1]」を提唱しました。意味的に類似した単語は類似した文脈に現れる傾向があるというものです。この仮定は、単語とその文脈の間の意味的類似性を特徴付けるために数学モデルを使用するという、その後のさまざまな単語ベクトルの言語的基礎を築きました。 Bengioらは2003年にNNLM(ニューラルネットワークベースの言語モデル)を提案した[2]。毎回のソフトマックス計算量が非常に大きいため(分母の計算量はO(|V|)、Vは全語彙)、多くの高速な近似計算戦略が登場した。 上記の問題を解決するために、Googleはword2vec [3,4]アルゴリズムを提案しました。このアルゴリズムには、ネガティブサンプリングと階層的ソフトマックスと呼ばれる2つの戦略が含まれています。ネガティブ サンプリングの核となる考え方: ソフトマックスで毎回すべての単語を計算するのは遅すぎるので、ランダムにいくつか選択して計算します。もちろん、トレーニング コーパスに単語が出現する回数が多いほど、選択されやすくなります。階層型ソフトマックスは、簡単に言えば、ツリー構造を構築し、ルートからリーフ ノードまで毎回上から下まで計算するため、時間の計算量は対数のみです。木の高さをできるだけ小さくするには、この木をどのように構築すればよいでしょうか?ハフマンツリー。 単語ベクトル モデルの核となるのは、単語とそのコンテキスト間の類似度関数を構築することです。word2vec ツールキットには、skipgram と cbow という 2 つの実装方法があります。 図1 SGNSアルゴリズムの概略図 現在の単語 w が「cat」で、コンテキスト単語 c が「sat」であると仮定すると、アルゴリズムの目標は、w が与えられた場合に c が出現する確率を最大化することです (skipgram)。このアルゴリズムでは、各単語は全体として扱われ、外部の文脈構造情報を使用して単語ベクトルが学習されます。 では、単語の内部構造の(サブワード)情報を完全に組み合わせて、より細かい粒度の構造に分割し、単語ベクトルを強化することは可能でしょうか?英語の各単語には多くの文字が含まれており、各文字には実際の意味表現能力がありません。中国語の単語は文字に分解できます。 Chenら(2015年)[5]は、中国語の単語を複数の漢字に分割し、元の単語のベクトル表現と各漢字のベクトル表現を平均して新しい単語ベクトルとするCWEモデルを提案した。
図2 CWEモデルの例 このアルゴリズムでは、「intelligence」は文脈語であり、最初に「智」と「能」という 2 つの漢字に分解され、次に新しい単語ベクトル表現が計算されます。同様に、文脈語「来了」も再計算されます。 CWE は現在の単語を分割せずに保持し、ここでは「era」は変更されません。 漢字を部首に分割することが良い方法であるかもしれないことは想像に難くない。Sun et al., 2014 [6] とLi et al., 2015 [7] は関連する研究を行っている。しかし、部首は漢字の一部に過ぎません。Yu et al., 2017 [8]は、より詳細な分割方法を提案しました。手動で要約された「文字構成要素」に基づいて、漢字を1つずつ小さなモジュールに分割し、単語、漢字、文字構成要素を共同で学習します。 図3 JWEアルゴリズムの概略図 このうち、w、c、s はそれぞれ単語、漢字、文字モジュールを表します。文字レベルの粒度分割は、部首情報のみを使用する方法よりも高いレベルを実現します。 さらに、SuとLee(2017)[9]は、畳み込みオートエンコーダを使用して漢字の画像から特徴を抽出しようとするGWEモデルを提案した。 図4 GWE畳み込みニューラルネットワークの特徴抽出の概略図 中国語の文字画像から特徴を抽出した後、文脈構造情報を組み合わせて中国語の単語ベクトルを学習します。残念ながら、元の説明によれば、この方法で得られる機能は基本的に改善されていないようですが、これは確かに非常に興味深い試みです。 問題と課題: 自然言語処理に関する世界最大の会議である ACL 2017 では、将来に向けた 4 つの主要な研究方向が提案されており、「サブワード」情報をより有効に活用する方法もその 1 つです。中国語の単語ベクトルのシナリオでは、中国語の単語を中国語の文字の粒度に単純に分解するだけで、中国語の単語ベクトルの品質がある程度向上します。中国語の文字の粒度では依然として説明できない状況はありますか? 図5 漢字の粒度の内訳 「wood」と「forest」は意味的に非常に関連のある2つの単語であることがわかりますが、漢字の粒度に分解すると、「木」と「材」という2つの文字は「森」と「材」と同じではありません(通常、単語または漢字を格納するために1つの下付き文字が使用されます)。そのため、この例では、漢字の粒度に分解するだけでは不十分です。私たちが期待しているのは次のことです: 図6: より細分化されたサブワード情報の内訳 「木」と「材」はそれぞれ「木」と「木」(「材」の左半分から派生)の構造に分解できますが、「森」と「林」は複数の「木」の同一の構造に分解できます。さらに、漢字は部首と構成要素に分解することができ、上記の例では意味構造情報を効果的に抽出できます。ただし、次のことも分析しました。 図7 部首と文字構造の分割例 「智」の部首はたまたま「日」であることがわかりますが、「日」は「智」の意味情報を表現できません。実際、部首は辞書で漢字を検索しやすくするために設計されているため、単純な構造と高い出現頻度が主な原則となり、必ずしも漢字の意味情報を表現しているわけではありません。さらに、「智」を文字に分割すると、「失」、「口」、「日」になります。残念ながら、これら 3 つの文字は中国語の意味を表現できません。単語(または漢字)の意味構造を再定義するための新しい方法を設計する必要があります。 図8 サブワード情報のより詳細な内訳の例 ここで、「知」は「智」の意味を表現できるモジュールです。このようなサブワード構造を取得し、文のコンテキストを組み合わせてモデルの最適化目標を設計し、より良い中国語の単語ベクトルを生成する方法は、後で検討する内容になります。 cw2vec モデル: 英語の文字 1 つには意味がありませんが、中国語の文字には強力な意味情報が含まれていることがよくあります。これまでの研究とは異なり、私たちは「n 次元ストローク」という概念を提案しました。いわゆる「n グラム ストローク」は、中国語の単語 (または漢字) の n 個の連続したストロークで構成される意味構造です。 図9 n進ストローク生成の例 上記のように、n 次元ストロークを生成するには 4 つのステップがあります。たとえば、「大人」という単語は、「大」と「人」という 2 つの漢字に分割され、さらにこの 2 つの漢字をストロークに分割し、ストロークをデジタル数値にマッピングして、ウィンドウ スライディングを使用して n 進ストロークを生成します。ここで、n は範囲です。上記の例では、n を 3、4、5 に設定しています。 この論文では、n 次元ストロークに基づいた新しい損失関数を提案しました。 図10 アルゴリズムプロセスの例 上の図に示すように、「ヘイズを制御することが緊急である」という文では、現在の単語が「ヘイズ」で、コンテキスト単語が「制御」と「緊急」であるとします。まず、現在の単語「smog」を n-gram ストロークに分解し、デジタル コードにマッピングします。次に、ウィンドウを描画してすべての n-gram ストロークを取得します。設計した損失関数に従って、各 n-gram ストロークとコンテキスト ワードの類似度を計算し、損失関数に従って勾配を見つけて、コンテキスト ワード ベクトルと n-gram ストローク ベクトルを更新します。 私たちが提案した cw2vec アルゴリズムの有効性を検証するために、公開データセット上で業界をリードするいくつかの単語埋め込みアルゴリズムと比較しました。 図11 実験結果 上図には、2013年にGoogleが提案したword2vec [2,3]の2つのモデル、skipgramとcbow、2014年にスタンフォードが提案したGloVeアルゴリズム[10]、2015年に清華大学が提案した中国語の文字ベースのCWEモデル[5]、および2017年に***が発表したピクセルと文字ベースの中国語単語埋め込みアルゴリズム[8,9]が含まれています。cw2vecは、単語の類似性、単語の類推、テキスト分類、および名前付きエンティティ認識タスクで一貫した改善を達成していることがわかります。同時に、異なる単語ベクトル次元での実験結果も示します。 図12 異なる単語ベクトル次元での実験結果 上図は、異なる次元での単語類推テストセットの実験結果を示しています。左側は 3cosadd テスト方法、右側は 3cosmul テスト方法です。私たちのアルゴリズムは、さまざまな次元設定で良好な結果を達成していることがわかります。さらに、小規模なコーパスでもテストしました。 図13 小規模なトレーニングデータによる実験結果 上の図は、中国語版ウィキペディアのトレーニング コーパスの 20% のみを選択して、単語の類似性に基づいてテストした結果を示しています。skipgram、cbow、GloVe アルゴリズムは、中国語の特徴情報を強化に使用しないため、小規模なコーパスではパフォーマンスが低下しますが、他の 4 つのアルゴリズムは良好な結果を達成しています。その中でも、当社のアルゴリズムは両方のデータセットで最高の結果を達成しています。 図14 事例分析結果 さまざまなアルゴリズムの実際の効果をよりよく調査するために、ケース分析のために特に 2 つの単語を選択しました。 1 つ目は環境に関連する「水質汚染」であり、次にベクトル角度の余弦を使用して単語ベクトルに基づいてその意味に最も近い単語が検索されます。 GWE は「汚い」という言葉に関連する「泥」「染み」「汚れ」などの単語をいくつか見つけましたが、JWE は最後の 2 つの単語「汚染」を強調しました。GloVe は「循環器系」や「神経系」などの奇妙な類似語をいくつか見つけました。 CWE によって検出された類似語にはすべて、「水」と「汚染」という 2 つの文字が含まれています。これは、漢字情報を使用して単語の埋め込みを直接強化しているためだと推測されます。さらに、cw2vec のみが関連単語「水質」を見つけましたが、これは単語ベクトルに対する n-gram ストロークとコンテキスト情報の組み合わせ効果によるものと考えられます。 2 番目の例では、有名な中国の小説「西遊記」と有名な日本のアニメ「ドラゴンボール」に登場するキャラクター「孫悟空」という単語を具体的に選択しました。cw2vec は関連するキャラクターや作品をすべて見つけました。 基礎研究の結果として、cw2vec は Alibaba の多くのシナリオにも適用されています。インテリジェントな顧客サービス、テキストリスク管理、推奨などの実用的なシナリオで役割を果たしてきました。また、中国語の単語埋め込みだけでなく、日本語や韓国語など他の言語でも同様の試みを行っており、関連する発明技術特許を20件近く申請しています。 私たちは、学術界に追いつき、基礎研究で成果を上げたいと考えています。さらに重要なのは、具体的な実践的なシナリオで製品に人工知能技術を真に活用し、ユーザーにより良いサービスを提供したいと考えていることです。 論文をダウンロードする https://github.com/ShelsonCao/cw2vec/blob/master/cw2vec.pdf 参考文献 1. ハリス、ゼリグ S.「分配構造」Word 1954 年。 2. Bengio、Yoshua、他「ニューラル確率言語モデル」JMLR 2003。 3. Mikolov, Tomas, et al. 「ベクトル空間における単語表現の効率的な推定」arXiv プレプリント arXiv:1301.3781 (2013)。 4. Mikolov, Tomas, et al. 「単語と語句の分散表現とその構成性」 NIPS 2013。 5. Chen, Xinxiong、他「文字と単語の埋め込みの共同学習」IJCAI 2015。 6. Sun, Yaming、他「部首強調中国語文字埋め込み」ICNIP 2014。 7. Li, Yanran、他「コンポーネント強化中国語文字埋め込み」arXivプレプリントarXiv:1508.06669 (2015)。 8. Yu, Jinxing 他「中国語の単語、文字、および細粒度サブ文字コンポーネントの結合埋め込み」EMNLP 2017。 9. Su、Tzu-Ray、Hung-Yi Lee。「文字のグリフから中国語の単語表現を学ぶ」EMNLP 2017。 10. ペニントン、ジェフリー、他「グローブ:単語表現のためのグローバルベクトル」EMNLP 2014。 [この記事は51CTOコラムニスト「アリババオフィシャルテクノロジー」によるオリジナル記事です。転載については原著者にお問い合わせください。] この著者の他の記事を読むにはここをクリックしてください |
<<: 企業がクラウドに移行する際、IT 運用と保守は AI を通じてどのようにインテリジェンスを実現できるでしょうか?
モノのインターネットは急速に「あらゆるもののインターネット」になりつつあります。ガートナーは、202...
[[251878]]数日前、もう一つの非常に興味深い広告が私の注意を引きました。それはトルコのテクノ...
近年の退職者の急増は、労働力不足が現実であることを示している。セントルイス連邦準備銀行の調査によると...
近年、大規模言語モデル (LLM) は自然言語処理 (NLP) の分野で革新の波を起こしています。大...
[[430082]] 【51CTO.com クイック翻訳】はじめに今日、機械学習 (ML) は、ビジ...
「私は講義をするときに利益を請求しません。私の目的は、無料の授業、共有、科学普及、コミュニケーション...
[[248958]]今週末、インターネットは再び混乱に陥った。ジャック・マーが2年かけて準備してきた...
デジタル ツインは、物理世界とデジタル世界をつなぐため、常に興味深いものです。将来的には、すべてのも...
侵入テスト サービスの必要性は、システムへの攻撃が頻繁に行われるようになった 1 世紀以上にわたって...
最近では、AI業界に参入したい人が増えており、その増加はますます大きくなっていることは明らかです。 ...
AI は驚異的な進歩を遂げていますが、多くの分野ではまだ限界があります。たとえば、コンピューター ゲ...
保険業界におけるデータ分析の利点は一般的に知られています。調査レポートでは、ビッグデータサプライヤー...