2オープンソースのPythonパッケージ、ソーシャルメディアセンチメント分析項目についての議論

[

自然言語処理の基礎を学び、2つの有用なPythonパッケージを探ります。

自然言語処理(NLP)は、それが話されたり書かれた言語との言語間の相関のコンピュータ支援分析に対処し、機械学習です。日常生活我々は、リアルタイム音声翻訳、通訳に助けやアドバイスを書いてから、数多くのNLPの技術革新を経験しました。

評判分析:この作品は、NLPの特定のフィールドを説明しています。焦点は、正、負または自然の中で中立入力言語を決定することです。このセクションでは、NLPと心理分析の背景を説明し、2つのオープンソースのPythonパッケージを探索します。

感情分析を学んで、NLPの一般的な理解が役に立つ存在です。この記事では、数学の本質に入ることはありません。代わりに、私たちの目標は、NLPの重要な概念を明確にすることで、これらの概念は、ソリューションにこれらの方法を実際の組み合わせのために不可欠です。

pythonを学習するときに我々は確かに新しい技術の追求だけでなく、多くの困難に遭遇する、ここで私たちはPythonのバックルqunを学ぶお勧めしますものです:784758214、ここではPythonの学習者が集まる場所です!同時に、彼はゼロベースのデータに対処するためにWeb開発に基本的な、爬虫類、ジャンゴ、データマイニングや他のプロジェクトから上級開発エンジニアパイソン、Pythonスクリプトだっ仕上げています。どんな小さなPythonのパートナーに与えられました!毎日の株式学習と細部に注意を払う必要がありますいくつかの方法

自然言語テキストデータ

妥当な出発点は、最初から定義されています。「?何が自然言語である」それは私たち人間が互いに通信方法である、コミュニケーションのメインフォームは話さと書かれています。我々は、テキストのやり取りのみに関心、さらに行くことができます。結局のところ、ユビキタス時代シリ、アレクサなどに住んで、私たちは、声が、計算のセットでテキストとは何の関係もないことを知っています。

データ展望と課題

私たちは私たちが言語に行うと、それをテキストことができるものを、テキストデータの使用を検討しますか?最初は、特に英語は、加えて、多くの例外、多様性と人間の通訳をすることができ、ルールの意味の文脈の違いコンピュータの翻訳はもちろんのこと、混乱しているがありますが、言語です。小学校では、私たちはネイティブスピーカーによる記事や句読点を学んだ、私たちは言葉の直感の独特の感覚を表し見つける能力を得ています。例えば、「A」などの登場は、「」と「または」の記事のように、彼らは、NLPの中で言及されているストップワード、検索がNLPのアルゴリズムは、伝統的順序でこれらの単語を見つける停止するため、。

以来、私たちの目標は、テキストに自動的に感情的なタイプに分類されるので、私たちは、テキストデータ処理方法を計算するための方法が必要です。したがって、我々はマシンにテキストデータを表現する方法を検討しなければなりません。我々はすべて知っているように、利用のルールやテキストサイズや構造を入力して、非常に複雑な言語を解釈が大幅に異なる場合があります。私たちは、好ましい方法マシンと数学である、デジタルデータにテキストデータを変換する必要があります。このシフトは、所属する特徴抽出のカテゴリを。

データのデジタル入力テキスト表現を抽出した後、可能な改善である:統計データや文書データに基づいて分類されているベクトルの集合を決定するために、上記の記事のテキスト入力体が与えられます。例えば、あまりにも多くの作家がコンテンツで埋め用語紙を識別するのに役立つかもしれない怒り副詞、またはストップワードの過度の使用を感じることがあります。確かに、これは感情分析の私たちの目標とあまり関係がない可能性があります。

言葉のバッグ

評価するとあなたは何その極性を評価するためのコンテキストを使用する場合、テキスト文では、正または負のですか?(例えば、正、負または中性の感情かどうかテキスト)の方法は、暗黙的な形容詞である:「気持ち悪い」(嫌)と呼ばれるものは陰性と考えられているが、同じことが呼び出された場合「美しい」(美しい)である、あなたはそれが肯定的であると思うだろう。宣誓は、敵対的なパフォーマンスかもしれませんが、通常は正、親しみ感を与えると言って、定義によると。テキストデータも、その感情で固定顔文字を含むことができます。

テキストに極性影響の単一の単語を理解します言葉のバッグ袋のワード(BOW)モデルが基礎を提供します。これは、単語または単語のグループを解析し、入力テキスト中のこれらの単語の存在または非存在の測定値を抽出します。形成された用語集が知られているテキスト処理の極性によって参照されたトレーニングデータマークマーカーのセットから特徴データを抽出し、次いで、タグに関連付けられた機能とデータとの間の関係を分析します。

かかわらず、空間的な位置やコンテキストのある単一の単語:「言葉のバッグは」名前でその使用を説明しています。トレーニングはトリミングされる傾向にある後の用語集は、通常、構築されたの訓練セットからすべての単語を表示されます。あなたが訓練ストップワードの前にクリーンアップされない場合は、その高い周波数の単語を停止し、低コンテキストが削除されます。めったに使われない言葉もあるため提供される一般的な入力例のための情報の不足のため、削除することができます。

しかし、あなたが(とすべきである)、さらにこれが呼び出され、トレーニングデータインスタンスのうち、一つの単語の場合を考えることができることに注意することが重要です周波数用語頻度(TF)。また、呼ばれる、より重要である低頻度語のすべてのドキュメントに登場し、通常は、すべての学習インスタンスのワードカウントデータを入力することを検討してください逆文書頻度インデックス逆文書頻度(IDF)。これらの指標は、このトピックのシリーズの他の記事やパッケージに記載されたので、彼らは助ける理解されます。

便利な多くのドキュメント分類アプリケーション内の単語のバッグ。しかし、感情の問題の状況認識の欠如が使用されて解析は、物事を解決することができます。次の文を考えてみます。

  • 私たちはこの戦争を好きではありません。
  • 私は雨の日が嫌い、今日は良いことだが、晴れた日です。
  • これは、生と死の問題ではありません。

人間の通訳のためのこれらのフレーズ感情は難しいですが、また、機械翻訳のための単一の語彙のインスタンスへの厳格な配慮からも困難です。

単語はNLPにも使用することができる「nグラム」パケットと呼ばれます。隣接する二つの単語の代わりに(またはそれに加えて)単語の単一の袋からなる群からタプルを考えます。これは、上記の「嫌い」等が挙げられるが、文脈的意味のないこととして、状況を緩和する必要があり、それはまだ問題です。さらに、上述した第2文に、感情的なコンテキストは、負の前半の最後の部分として理解することができます。したがって、この方法は、空間的局所文脈手がかりを失われます。実用上、問題を配合することから抽出された疎与えられた入力テキスト機能です。完全な大語彙については、各単語の数を持っている、それは整数のベクトルとして見ることができます。文書ベクトルのほとんどはゼロカウントベクトルの数が多い、この作業は不要な空間と時間の複雑さを追加します。この複雑さを軽減するための多くの単純な方法が提案されているが、それはまだ問題です。

単語を埋め込みます

単語を埋め込みますWordの埋め込み分散表現され、それは同様の意味を持つ言葉が同様の表現を持つことができます。これは、彼らの周りに関連付けられた実数値ベクトルの使用に基づいています。それはむしろ、彼らの存在または不在だけよりも、単語の使用に焦点を当てています。また、巨大な実用上の利点の埋め込まれた単語は、彼らが集中ベクターに焦点を当てることです。単語によって、より効率的な組み込み型コンピューティングパラダイムと貯蔵時間を提供ワードの対応する数を有するモデルベクトル要素のうちゼロの値をカウント。

ここで埋め込み方法2つの良い言葉があります。

Word2vec

最初は、Word2vec Googleが開発され、。NLPと評判分析上のあなたの深い研究では、この組み込み方法を見ることができます。これは、どちらかが使用することです言葉の連続バッグ言葉の連続バッグ(CBOW)、または連続スキップ-gramモデルを使用して。CBOWでは単語の文脈で訓練で学ぶためにその周りの言葉に基づいています。継続的な学習は、与えられた単語についての学習単語グラムスキップする傾向があります。これは、あなたが対処する必要がありますが、あなたはケースに埋め込まれて自分の言葉を生成直面している場合、Word2vec著者は、速度と単語の頻繁な評価を改善するためのCBOWの方法の使用を提唱し、スキップ-gram方式がより適している質問を超えるかもしれないが埋め込み埋め込む珍しい単語がより重要です。

グローブ

第二は、グローバルワードベクトル表現のためのWordの表現のためのグローバル・ベクトルスタンフォード大学で開発された(手袋)、。それは、結合決定Word2vecで得られたグローバル情報の古典的なテキストの統計的特徴抽出のローカルコンテキストによって試みの拡張Word2vec方法です。他のアプリケーションでWord2vecほど良好ではないながら、実際には、いくつかのアプリケーションでは、手袋の性能は、Word2vecよりも優れています。最終的には、埋め込まれたデータワードに設定された目標は、最適な方法を決定します。そのため、彼らの存在と高レベルのメカニズムの最高の理解、あなたはそれらが発生する可能性があるため。

中に埋め込まれた単語を作成し、使用して

最後に、我々は便利埋め込む単語を取得する方法を知っています。パート2では、あなたは巨人の肩の上に立って、他人のコミュニティ実質的な仕事を使用して、私たちを見ることができます。トレーニングと検証を通じて、既存のモデルの使用:これは、埋め込まれた単語を取得する方法です。実際には、英語や他の言語で利用できる多数のモデルがあり、あなたのアプリケーションを満たし、箱から出して、あなたを聞かせできるモデルがあるでしょう!

、開発に動作しない場合は、他の極端に関係なく、アプリケーションの、あなた自身の独立したモデルを訓練することです。本質的には、トレーニングデータマーカーの多くを得るだろうし、モデルを訓練するために、これらの方法の1つを使用することができます。たとえそうだとしても、あなたはまだのみ、テキストデータを入力してください理解しています。その後、あなたは順番に自分の時間と労力を必要とするあなたのためのモデル(例えば、ソフトウェアのバージョン管理感傷的な値メッセージ)、特定のアプリケーションを開発する必要があります。

これは、時間と労力を削減することができますが、あなたはまた、データ、アプリケーションを訓練するためのワードを埋め込むことができますが、言葉は、その再利用性を削減する特定のアプリケーションに埋め込まれます。

利用できるツールのオプション

多くの時間を考慮し、必要な電力を計算し、あなたはどのように問題の解決策を見つけるために疑問に思うかもしれません。確かに、複雑さの信頼性の高いモデルの開発は困難なように思えるかもしれません。しかし、良いニュースがあります:私たちが必要なコンテンツのほとんどを提供することができます実績のあるモデル、ツールおよびソフトウェアライブラリの多くがありました。それは、これらのアプリケーションのための便利なツールの数を提供するため、私たちは、Pythonのに焦点を当てます。

ぼんやりしました

スペイシーは、入力されたテキストデータと特徴抽出を解析するための言語モデルを多数提供しています。これは、高度に最適化およびライブラリーでは、その種の最速として歓迎されています。すべてのベスト、それはオープンソースです!スペイシーは、音声分類および依存関係のコメントの部分の識別を行います。これは、単語モデルは、言語以上の46種類を抽出するためのこの動作機能、ならびに他の機能を実行するように装着されている含まれています。このシリーズの第二の記事では、あなたはそれがテキスト分析と特徴抽出のために使用されている方法について説明します。

父のセンチメント

vaderSentimentのパッケージには、正、負と中立的な感情の尺度を提供します。これらのモデルは、ソーシャルメディア、テキストデータの開発と調整のために設計されています。VADERであって、ヒトをタグ付けされたトレーニングデータの完全なセットを受信し、共通の顔文字、UTF-8でエンコードされ、絵文字経口用語および略語(例えばMEH、笑、SUX)。

与えられた入力テキストデータについて、vaderSentimentは小数パーセントの極性のトリプルを返します。それはまた呼ばれる単一のスコア、提供vaderSentiment複合インデックスをこれは、[-1, 1]値がより大きくなるために範囲の真の価値、0.05感情がより少ないスコアで陽性と考えられている-0.05負、または中立的と考えられています。

おすすめ

転載: blog.csdn.net/zhizhun88/article/details/90707131