手がかりを数えてレビューをスコア化する
肯定的な一致数から否定的な一致数を差し引く
「手がかりを数えてレビューをスコア化する」はCoddyKit上の無料NLP Academyレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはNLP Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 NLP Academyコースには全4レッスンが含まれています。
中心となる考え方
レビューを判定するには、positiveの手がかりとなる単語とnegativeの手がかりとなる単語をそれぞれ数えて比較します。このシンプルなスコアだけでも、感情の多くを捉えられます。
まずトークン化する
数える前に、レビューを単語に分割します。それぞれのトークンが、positiveとnegativeのリストと照合できる1つの要素になります。
tokens = review.lower().split()該当語を数える
トークンを順に処理して、一致した数を集計します。positive集合に含まれる単語があるたびにposへ加算し、negativeの単語があるたびにnegへ加算します。
pos = sum(t in positive for t in tokens)
neg = sum(t in negative for t in tokens)引き算でスコアを出す
全体のスコアは、positiveの該当数からnegativeの該当数を引いた値です。数値が大きいほど明るいレビューを表し、負の値は不満を表します。
score = pos - negスコアをラベルに変換する
数値を判定結果に変換します。0より大きければpositive、0より小さければnegative、ちょうど0ならneutralです。
label = "positive" if score > 0 else "negative" if score < 0 else "neutral"実例で確認する
I love this but the price is badの場合、positiveとnegativeが1つずつ該当するため、スコアは0となり、判定結果はneutralです。
関数にまとめる
手順を再利用可能な関数にまとめれば、同じ処理を繰り返さず、1回の呼び出しで任意のレビューをスコアリングできます。
def score_review(text):
toks = text.lower().split()
return sum(t in positive for t in toks) - sum(t in negative for t in toks)数える方法の長所
この方法は高速で、学習データが不要で、説明も簡単です。この透明性により、どのプロジェクトでも最初のベースラインとして適しています。
単語の順序を無視する
数える方法ではテキストを単語の寄せ集めとして扱うため、good notとnot goodを区別できません。順序を失うことが最大の弱点です。
手がかりの繰り返しは加算される
great, great, greatのように繰り返すと3回分として数えられ、スコアは正しく高くなります。強い感情では重要な単語が繰り返されることが多いためです。
数えるだけでは不十分な場合
複数の感情が混ざったレビューや微妙な言い回しでは、誤解を招く0が出ることがあります。これは、後で学習済みのモデルを使ったほうがよいというサインです。
簡単な確認
短い文で処理の流れを追ってみましょう。
まとめ
手がかりを数えてレビューをスコアリングしました。トークン化し、集計し、引き算をして、符号に応じてラベルを付けます。高速で明快ですが、単語の順序を無視します。次は否定による落とし穴を解決します。✅
AI チューターと学ぶ Python — 無料
ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。
- コース
- 30
- レッスン
- 120
よくある質問
「手がかりを数えてレビューをスコア化する」レッスンは無料ですか?
はい。「手がかりを数えてレビューをスコア化する」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、NLP Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 NLP Academyコースには全4レッスンが含まれています。
「手がかりを数えてレビューをスコア化する」で何を学びますか?
肯定的な一致数から否定的な一致数を差し引く ブラウザで直接実行するハンズオンコードでNLP Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
NLP Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのNLP Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。
「手がかりを数えてレビューをスコア化する」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このNLP Academyレッスンでコードを書いて実行できますか?
はい。すべてのNLP Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- 感情分析とは何か
- 肯定語と否定語のリストを作る
- 手がかりを数えてレビューをスコア化する
- 否定表現とエッジケースに対応する