並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 39 件 / 39件

新着順 人気順

類似度の検索結果1 - 39 件 / 39件

タグ検索の該当結果が少ないため、タイトル検索結果を表示しています。

類似度に関するエントリは39件あります。 機械学習数学Python などが関連タグです。 人気エントリには 『「一番厨二臭いホトトギス詠んだ奴優勝」の中で元ネタと類似度が高い奴優勝 - Qiita』などがあります。
  • 「一番厨二臭いホトトギス詠んだ奴優勝」の中で元ネタと類似度が高い奴優勝 - Qiita

    概要 だいぶ前に「一番厨二臭いホトトギス詠んだ奴優勝1」というネタがありまして。 哭かぬなら 虚無に誘え(いざなえ) 時鳥(ホトトギス) とか 哭け 我が漆黒の刄 炎斗闘斬(ホトトギス) みたいなやつです。 どの作品も好きなんですが、この手のって元ネタとあまりかけ離れすぎていてもダメで、元ネタと似た形や意味を保ちつつも厨二感を漂わせるくらいが一番味があるんじゃないかなと思ってます。 そこで今回は、「厨二臭いホトトギス」と本家ホトトギス三句2を自然言語処理によって比較し、最も類似度が高いものを優勝とする決定戦を開催することにしました。 (図. コンテストイメージ) 「厨二臭いホトトギス」作品リスト クリックで展開 鳴かぬなら そこで朽ちてけ ほととぎす 鳴かぬなら 深淵に呑まれろ! ダークインフィニティ!! 鳴けぬなら、 邪鳴で叫べ、 ホトトギス 啼かぬなら 啼くまで悠久の時を待とう なあ

      「一番厨二臭いホトトギス詠んだ奴優勝」の中で元ネタと類似度が高い奴優勝 - Qiita
    • コサイン類似度とは? 新しい検索体験を支えるベクトルDBの基本技術を押さえる

      生成AI(人工知能)のRAG(検索拡張生成)の導入など企業で使われ始めたベクトルデータベース。その特徴は検索にある。ベクトルデータベースとはどのようなデータベースで、なぜ「意味」で検索できるのか。ベクトルデータベースの基本技術についてデータベースの専門家が解説する。(編集部) ベクトルデータベースは自然言語処理などAI技術の発展の中で生まれたデータベースであり、ベクトルの概念を用いてデータを管理するデータベースです。生成AIの登場とともに注目を集め、いまや多くの既存のDBサービスやその応用サービスにベクトルデータベースの機能が組み込まれています。 以下で検索を例にベクトルデータベースの特徴や動作の仕組みを解説します。 ベクトルによる「類似度」の判断 ベクトルデータベースがストアするのは数値の羅列です。単語や文章などの「意味」「文脈」を数値化したデータであり、個々の数値を取り出して意味や違い

        コサイン類似度とは? 新しい検索体験を支えるベクトルDBの基本技術を押さえる
      • 実用アルゴリズムの基礎「動的計画法」と機械学習の基礎「類似度」を知る

        実用的なソフトウエアを開発するにはアルゴリズムの知識は欠かせない。基礎から機械学習まで、厳選した10個のアルゴリズムをPythonによる実装とともに解説する。 [7 動的計画法] レーベンシュタイン距離 多くの人にとって、アルゴリズムの学習の最初の壁となるのが、「動的計画法」ではないでしょうか。動的計画法は、「問題の部分的な結果を記録・利用しながら、最終的な結果を求める」手法の総称です。クイックソートや深さ優先探索のような手法よりも、1 段か2段、抽象的な概念である点と、アルゴリズムを可視化しにくい点が、難しく感じる原因なのだと思われます。また、“動的計画法”という名称が内容に合っていないことも、動的計画法をわかりにくくしていると言えるでしょう。 しかし、多くの有用なアルゴリズムは動的計画法の手法を使っているので、避けて通ることはできません。 ここでは、動的計画法で「レーベンシュタイン距離

          実用アルゴリズムの基礎「動的計画法」と機械学習の基礎「類似度」を知る
        • OpenAIのEmbeddings APIを使って文の意味上の類似度を計算

          はじめに おはようございます。こんにちは。こんばんは。 GMOアドマーケティングのY-Kです。 前にBERTを使って文をベクトルに変換してからなんやかんやする記事を書いてから約半年が経過したのですが、その間にChatGPTが大きく流行り、言語生成系AIに大きな風が吹きました。 というわけで今回は、OpenAIのEmbeddings APIを利用し、記事タイトルの類似度を見てみようと思います。 準備 今回も例のごとくGoogle Colab上で行います。 https://colab.research.google.com/?hl=ja OpenAIのEmbeddings APIを利用できる様にAPIキーは事前に取得しておいてください。 まずは必要なライブラリを使えるようにします。

            OpenAIのEmbeddings APIを使って文の意味上の類似度を計算
          • Pythonで文字列の類似度を120倍高速に計算するRapidFuzzを勧めたい - Qiita

            はじめに みずほリサーチ&テクノロジーズ株式会社の@fujineです。 本記事では、文字列同士の類似度を計算する「レーベンシュタイン距離」をRapidFuzzで超高速に処理する方法を解説いたします。 この方法で実装すると、1万件の文字列同士の類似度計算において、 一般的なlevenshteinライブラリよりも120倍近く高速に計算することが可能です! (RapidFuzzのGitHubリポジトリより引用) 本記事の概要 Pythonで一般的に用いられているlevenshteinライブラリは、比較対象データが多いと処理が長時間化し、実用的ではない RapidFuzzは上記ライブラリよりも約120倍高速であり、エンタープライズ規模のデータにも十分に適用可能 RapidFuzzはレーベンシュタイン距離以外のアルゴリズムや、並列処理、前処理など多様な機能を提供しているため、読者の皆さんには積極的に

              Pythonで文字列の類似度を120倍高速に計算するRapidFuzzを勧めたい - Qiita
            • Attentionと類似度は異なるという話

              はじめに 「Transformerのattentionはトークン間の類似度をモデリングしている」という説明をよく聞くが、この表現は適切でないことを示す。 なお、このような説明がよくされる背景としては、Transformerのdot-product attentionは内積で計算され、コサイン類似度も正規化されたベクトルの内積で計算される点によるものと思われる。しかしながら両者は正規化の有無に違いがあり、ベクトル空間に埋め込んだ時の数学的性質はかなり異なるということを本稿では指摘する。 TL; DR Attention(dot-product attention)は類似度とは異なる数学的性質を持つ 類似度はトークン間の近接関係はモデリングできるが、それ以外の多様な関連をモデリングするには適さない。 dot-product attentionはトークン間の近接関係を含むさまざまな関連をモデリン

                Attentionと類似度は異なるという話
              • ジャッカード類似度(Jaccard Similarity)/ジャッカード係数(Jaccard Index)とは?

                連載目次 用語解説 数学/統計学/機械学習におけるジャッカード類似度(Jaccard Similarity)とは、2つの集合が「どのくらい重なり合っているか」の計算値で類似性を表す尺度である。具体的には、「2つの集合の共通部分(=積集合:∩)」に含まれる要素数を、「2つの集合全体(=和集合:∪)」に含まれる要素数で割ることで計算される(図1)。このジャッカード類似度の値は、0~1の範囲に正規化され、1なら「完全に同じ集合(=似ている)」、0なら「全く共通点のない集合(=似ていない)」を意味する。 ジャッカード類似度は、ジャッカード係数(Jaccard Indexや、Jaccard similarity coefficient)とも呼ばれる。これらの用語は同じ概念を指しており、文脈によって使い分けられる。一般的に、Jaccard Similarityは類似度の強調や実際の応用で使われることが

                  ジャッカード類似度(Jaccard Similarity)/ジャッカード係数(Jaccard Index)とは?
                • 投資家IPランドスケープ・スタートアップ支援IPランドスケープ・大学支援用に改良中 更新中)tfidf etc embeddings cluster reconstructing vis: 特許など長文の、動的な文章間類似俯瞰図可視化・迅速閲覧・解析・探索手段。および第三の特許検索手法、動的な知識抽出管理手法、特許自動生成 (類似度ベクトルと小規模言語モデル及びChatGPTを用いた空白領域における特許生成追加) - Qiita

                  投資家IPランドスケープ・スタートアップ支援IPランドスケープ・大学支援用に改良中 更新中)tfidf etc embeddings cluster reconstructing vis: 特許など長文の、動的な文章間類似俯瞰図可視化・迅速閲覧・解析・探索手段。および第三の特許検索手法、動的な知識抽出管理手法、特許自動生成 (類似度ベクトルと小規模言語モデル及びChatGPTを用いた空白領域における特許生成追加)自然言語処理NLP可視化Visualization特許 ジョブスの述べる知性 1982 https://m.youtube.com/watch?si=lzbF1DfhLzeRzI4V&v=ymbD_a-G1IQ&feature=youtu.be 「 多様な経験と創造性:未来のために考えるべきこと 知性と視点 講演者は、知性とは「ズームアウト」して全体像を見る能力であり、細部に囚われ

                    投資家IPランドスケープ・スタートアップ支援IPランドスケープ・大学支援用に改良中 更新中)tfidf etc embeddings cluster reconstructing vis: 特許など長文の、動的な文章間類似俯瞰図可視化・迅速閲覧・解析・探索手段。および第三の特許検索手法、動的な知識抽出管理手法、特許自動生成 (類似度ベクトルと小規模言語モデル及びChatGPTを用いた空白領域における特許生成追加) - Qiita
                  • 自然言語処理モデル(BERT)で文の意味上の類似度を計算

                    はじめに この記事は GMOアドマーケティング Advent Calendar 2022 21日目の記事です。 おはようございます。こんにちは。こんばんは。 GMOアドマーケティングのY-Kです。 今回は、 「最近話題の自然言語処理の機械学習のモデルを自分でも軽く触ってみたい! でも、難しいこと書かれててわからない(号泣)」 という層に向けて、 数ある自然言語処理モデルの中でも有名なBERTモデルを使って、文同士の意味の類似度を計算するという簡単なタスクを難しいことは極力置いといてやっていきます。 準備 今回もGoogle Colab上で行います。 https://colab.research.google.com/?hl=ja BERTの学習には時間と膨大な学習データ、豊富なインターネットリソースが必要なので、 Hugging Face上で公開されている学習済みBERTモデルを利用してい

                      自然言語処理モデル(BERT)で文の意味上の類似度を計算
                    • コサイン類似度(Cosine Similarity)とは?

                      用語「コサイン類似度」について説明。2つのベクトルが「どのくらい似ているか」という類似性を表す尺度で、具体的には2つのベクトルがなす角のコサイン値のこと。1なら「似ている」を、-1なら「似ていない」を意味する。主に文書同士の類似性を評価するために使われている。 連載目次 用語解説 数学/統計学/機械学習におけるコサイン類似度(Cosine Similarity)とは、2つのベクトルが「どのくらい似ているか」という類似性を表す尺度で、具体的には(ベクトル空間における)2つのベクトルがなす角のコサイン値のことである。この値は、2つのベクトルの内積(=向きと大きさを持つベクトル同士の掛け算)を、2つのベクトルの大きさ(=L2ノルム)で割ることで計算される。 この計算によって値が-1~1の範囲に正規化されるので、コサイン類似度が、 1なら「0度で、同じ向きのベクトル=完全に似ている」 0なら「90

                        コサイン類似度(Cosine Similarity)とは?
                      • Spotifyデータから「世界のヒットチャート類似度」を可視化してみる...日本は最も他国と似ていない国?|こちら徒然研究室(仮称)

                        Spotifyデータから「世界のヒットチャート類似度」を可視化してみる...日本は最も他国と似ていない国? 日本に住む私達が普段よく聴いている音楽というのは、どれくらい他国と似ているのでしょうか? そこでSpotifyが公開している世界72ヶ国のWeekly Top 200チャートのデータを使って「72ヶ国の国同士のヒットチャート類似度」の分析を行ってみました。 日本のチャートは世界で最も他国と似ていない分析には2022年全週分のデータを使い、楽曲の重複度合いだけでなく「順位」の要素も加味して計算し、ヒートマップとして視覚化してみました。 国名は、他国との順位相関係数合計の降順にソートしており、色が濃赤に近いほど似ていて、青に近いほど似ていないということになります。 日本は... 一番下に現れます。 つまり日本のヒットチャートは「世界で最も他国と似ていない」ということになります。 そしてち

                          Spotifyデータから「世界のヒットチャート類似度」を可視化してみる...日本は最も他国と似ていない国?|こちら徒然研究室(仮称)
                        • 医療分野の大規模テキストデータで学習した分散表現から、疾患の類似度を求める

                          概要 人間が記述した文章から特定の意味や関係性を抽出する行為は情報抽出と呼ばれ、自然言語処理におけるタスクの一つです。人間により収集された情報はオントロジーや知識グラフのような関係性を持つ構造として表現することで、抽出した概念の関係性を理解してきました。こうした知識の構築は、言語の文法構造を利用しルールベースで半自動で抽出する方法が広く用いられていますが、近年では単語の意味的な情報を活用し自動獲得する方法が出てきました。 私は最近Ubieという医療の問診AIを開発している会社にジョインしたのですが、医療自然言語処理の世界でもこうした情報抽出の研究が行われています。そうした特定のドメインでの自然言語処理ではデータやタスクにユニークなものが多く、そうした分野間の違いが現れるところが自然言語処理の面白いところです。 そこでこの記事では、ウェブから収集した医療分野における大規模テキストデータから、

                            医療分野の大規模テキストデータで学習した分散表現から、疾患の類似度を求める
                          • [AI・機械学習の数学]ベクトルの基本と類似度の計算

                            機械学習では、普通、多くの変数や係数を同時に取り扱う。そのような場合にそれぞれの変数や係数を別々に取り扱うと数式が煩雑になってしまう。ベクトルや行列を利用すれば、複数の値をひとまとめにして取り扱えるので、数式が極めて簡潔になる。今回はベクトルについて、基本的な計算方法を紹介する。 連載目次 第4回~第8回までは微分について説明しました。機械学習の数学において微分は特に重要です。もう一つ重要なのが線形代数です。今回からは線形代数について学んでいきます。まずはベクトルの基本を学びましょう。 ベクトルについては、「大きさと向きを持った矢印のようなもの」というイメージを持っている人も多いと思います。高校の数学でもそういった例から話が始まっているはずです。もちろん、それは間違いではありませんが「位置」と「角度」を表す方法としてベクトルを使う、と言った方が応用の幅が広がります。また、ベクトルというもの

                              [AI・機械学習の数学]ベクトルの基本と類似度の計算
                            • 「コサイン類似度」で文書がどれだけ似ているかを調べてみた | DevelopersIO

                              今年のマックフルーリー「ストロベリー ココアクッキー」が個人的大ブームになっています。暖かい部屋で猫と触れ合いながらアイスを食べる至福の時間を楽しんでいるのですが、実はお腹が弱いので色々なものとトレードオフでアイスを食べて家で仕事を頑張る日々です。 ▲ ラムレーズンのアイスも好きです、オススメがあったら教えてください こんにちは。データアナリティクス事業本部 インテグレーション部 機械学習チームのShirotaです。 これは「 クラスメソッド 機械学習チーム アドベントカレンダー 2022 」12/21(水)の記事となっております。 前日 12/20(火)の記事は以下よりご覧ください。自然言語処理においてTransformersなどで有名なHugging FaceのモデルをVertex AIにデプロイするという、Google CloudとHugging Faceの個人的には嬉しい二つを活用

                                「コサイン類似度」で文書がどれだけ似ているかを調べてみた | DevelopersIO
                              • コサイン類似度のいろんな書き方 - どこにでもいるSEの備忘録

                                前にこんなことやってました。 www.nogawanogawa.work コサイン類似度の計算を高速化したくなることがちょくちょくあるのですが、「ぶっちゃけどれくらいのスループットが出せるもんなの?」というのが気になったので完全に興味本位でやってみます。 コサイン類似度 定義と素朴なpythonでの実装 コサイン類似度の2つの計算パターン 諸条件 2つのベクトルの配列間ですべての組み合わせのコサイン類似度を計算 baseline numpy sklearn xlr8 pytorch jax Numba 実行速度結果 2つのベクトルの配列間で同じインデックスの組み合わせのコサイン類似度を計算 baseline numpy jax Numba 実行速度結果 使用したコード 参考文献 感想 コサイン類似度 定義と素朴なpythonでの実装 コサイン類似度は下記のような式になります。 これがなんの

                                  コサイン類似度のいろんな書き方 - どこにでもいるSEの備忘録
                                • 文章間の類似度を測定する方法まとめ - Qiita

                                  はじめに 先日、文章間の類似度を測定したくなりました。サクッとできると思っていたのですが、なかなか思うような精度が出なくて苦労しました。 調査の過程で類似度を測定する方法は色々とあることを学んだのでまとめておきます。 精度に関しての言及は今回私が試した文章(=チャットのような短文)を対象としています。 文章間の類似度測定の流れ 文章間の類似度を測定するときはまず文章分散表現を取得します。文章分散表現を取得する方法は色々とあります。 その後、取得した分散表現同士を比較することで文章間の類似度を測定します。分散表現同士の比較方法はコサイン類似度を使うのが一般的です。 そのためこの記事では、色々な文章分散表現の取得方法を紹介します。 文章分散表現の取得方法 単語分散表現を基に文章分散表現を算出 単語分散表現を取得した後、取得した単語分散表現から文章分散表現を算出します。 それぞれについて色々なや

                                    文章間の類似度を測定する方法まとめ - Qiita
                                  • 【Python】文字列の類似度を測るdifflib.SequenceMatcherの使い方

                                    なお,SequenceMatcherの類似度計算では,「ゲシュタルトパターンマッチング」というアルゴリズムを使用しているそうです。私は詳しくわかりませんので,詳細は割愛。 リストからキーワードに類似の文字列を抽出する あるリストから,特定のキーワードに類似している文字列を抽出することもできます。これには,get_close_matchesを使用します。まずはコードを見てみましょう。 from difflib import get_close_matches keyword = "ほうれんそうとえのきの和え物" lst = [ "ほうれんそうとエリンギのごま和え", "ほうれんそうの明太子和え", "ほうれんそうのたらこ和え", "ほうれんそうとにんじんのごま和え", "ほうれんそうのおかか和え", "ほうれんそうのごま和え", "ほうれんそうのソテー", "ほうれんそうのソテー温泉たまごの

                                      【Python】文字列の類似度を測るdifflib.SequenceMatcherの使い方
                                    • 【imgsim】画像の類似度をPythonで手早く測りたい - Qiita

                                      Introduction データセットを追加してリネームを繰り返していると、同一画像が複数枚混ざっていることに気が付きました。 効率的に取り除く方法としてimgsimというライブラリを用いて画像の類似度を測定しました。 過学習の原因となる同一画像の削除、似たような画像の分類等に役立てられます。 ※詳細は下記 GitHub の方でご確認ください。 本記事が少しでも読者様の学びに繋がれば幸いです! 「いいね」をしていただけると今後の励みになるので、是非お願いします! 環境 Ubuntu22.04 Python3.11.1 imgsim とは 異なる画像の特徴ベクトル間の距離や類似度の差を計算します。 AugNetというディープラーニング学習パラダイムを用います。 差が 0 なら同一画像、値が大きくなるほど特徴量の異なる画像です。 AugNet とは 教師なし学習を使用して、画像の表現学習を行う

                                        【imgsim】画像の類似度をPythonで手早く測りたい - Qiita
                                      • 徒然研究室✍🏻 on Twitter: "Spotifyに続いて #Netflix の全期間データを使って、世界各国の視聴Top 10の「国どうしの類似度」を計算して、ヒートマップを描画してみました。映画を含まないドラマ等のTVカテゴリから。 日本は...下から二番目、… https://t.co/rOJugwG5iu"

                                        Spotifyに続いて #Netflix の全期間データを使って、世界各国の視聴Top 10の「国どうしの類似度」を計算して、ヒートマップを描画してみました。映画を含まないドラマ等のTVカテゴリから。 日本は...下から二番目、… https://t.co/rOJugwG5iu

                                          徒然研究室✍🏻 on Twitter: "Spotifyに続いて #Netflix の全期間データを使って、世界各国の視聴Top 10の「国どうしの類似度」を計算して、ヒートマップを描画してみました。映画を含まないドラマ等のTVカテゴリから。 日本は...下から二番目、… https://t.co/rOJugwG5iu"
                                        • [Python]文字列の類似度計算3つの手法を実装・比較 | pixelbeat sandbox

                                          はじめに 文字列の類似度を定量化する手法を調べたのでPythonでの実装方法と簡単な結果をメモします。 3つのアプローチを紹介します。 ゲシュタルトパターンマッチング 概要 文字列同士の連続する共通部分を抜き出し、抜き出した文字列の前後に対しても同じ処理を繰り返すというアプローチです。 Pythonの標準ライブラリdifflibが採用しています。 その考え方は、”junk” 要素を含まない最も長い互いに隣接したマッチ列を探すことです。ここで、 “junk” 要素とは、空行や空白などの、意味を持たない要素のことです。 (junk を処理するのは、Ratcliff と Obershelp のアルゴリズムに追加された拡張です。)この考え方は、マッチ列の左右に隣接するシーケンスの断片に対して再帰的にあてはめられます。この方法では編集を最小にするシーケンスは生まれませんが、人間の目からみて「正しい感

                                            [Python]文字列の類似度計算3つの手法を実装・比較 | pixelbeat sandbox
                                          • Pythonで文書類似度算出!MeCabで形態素解析後にTf-idfとCos類似度を使ってみよう|スタビジ

                                            当サイト【スタビジ】の本記事では、形態素解析器であるMeCabとPythonを用いて形態素解析を行いその後Tf-idfとCos類似度を使い最終的に文章の類似度を算出していきます。また、文章の著者が誰なのかをMeCabとLight gbmを用いて予測していきます。

                                              Pythonで文書類似度算出!MeCabで形態素解析後にTf-idfとCos類似度を使ってみよう|スタビジ
                                            • 【DTWとは】動的時間伸縮法で2つの時系列データの類似度を調べる

                                              DTW(Dynamic Time Warping)とは、2つの時系列データの類似度を調べることができるアルゴリズムです。 2つの時系列データの各サンプル値間の距離(コスト)を総渡りで計算していき、距離(コスト)が最小となる関係性(経路)を見つます。よって ●サンプル数が異なる時系列データ同士の比較が可能 ●時間や位相軸が異なっていても、波形が似ていれば類似度が高くなる という優れた利点があります。つまり、周期や動きが似ているが、サンプル数が異なる時系列データ同士を比較できます。 【アルゴリズム】類似度の算出(計算例つき) アルゴリズムを計算例つきで解説します。 ● 2つの時系列データ(X, Y)を用意します。ます。 x = [1, 2, 3] y = [2, 3, 4] ● 各サンプル点に対して総当たりで距離を計算し、要素がデータ点同士の距離となる行列D(m × n)を作成します。 D =

                                                【DTWとは】動的時間伸縮法で2つの時系列データの類似度を調べる
                                              • 【日本語CLIP基礎】画像とテキストの類似度計算、画像やテキストの埋め込み計算、類似画像検索 - Qiita

                                                日本語CLIPクラス 日本語CLIPモデルを表すクラスを定義します。クラスは次の3つで構成されます。 ClipTextModel: CLIPのテキストエンコーダーモデル ClipVisionModel: CLIPの画像エンコーダーモデル ClipModel: CLIPモデル。ClipTextModelとClipVisionModelの両方を内包する。 どのクラスも基本構造は同じで、学習済みモデルの読み込み(__init__)、テキストや画像のエンコード(encode*)、推論(forward)、保存(save)を行うメソッドを持っています。 その中でも特に重要なのがエンコードメソッド(encode_text/encode_image/encode)です。 本記事ではエンコードメソッドの使いこなし方について例を用いて説明をしていきます。 import os import torch from

                                                  【日本語CLIP基礎】画像とテキストの類似度計算、画像やテキストの埋め込み計算、類似画像検索 - Qiita
                                                • 脳機能データの類似度を用いたAIで男女の相性の一部が予測可能に

                                                  京都工芸繊維大学(京工大)と高知工科大学(KUT)は6月24日、機能的磁気共鳴画像法(fMRI)を利用した脳活動計測実験と参加者同士が対面して会話を行う行動実験により、初対面の男女が会話した際の相性を、事前に取得した脳機能データの類似度を用いた人工知能(AI)アルゴリズムによって一部予測可能であることを明らかにしたと発表した。 同成果は、京工大 人間科学系の梶村昇吾助教、KUT フューチャー・デザイン研究所の伊藤文人講師、同・出馬圭世教授らの研究チームによるもの。詳細は、脳科学の中でも海馬を含めた大脳皮質に関した題材を扱う学術誌「Cerebral Cortex」に掲載された。 考え方や価値観、行動パターン、思想、嗜好、趣味、好み、直感的な好き嫌いなどは人それぞれで、そうした違いがあるからこそ、個性が存在する。他者と照らし合わせた場合、それらは一致するものもあれば、部分的に一致するもの、まっ

                                                    脳機能データの類似度を用いたAIで男女の相性の一部が予測可能に
                                                  • Pythonで文章の類似度を計算する方法〜TF-IDFとcos類似度〜 | データサイエンス情報局

                                                    Pythonで、2つの文章の類似度計算をしてみます。 理論編は以下をご覧ください。 2文章の類似度の計算〜Bag-of-wordsとcos類似度のしくみ〜 今回は例題として、以下の3つの文章について、それぞれの類似度を計算してみます。 文章A「私は犬が好きです。」 文章B「私は犬が嫌いです。」 文章C「私は犬のことがとても好きです。」 形態素解析 文章を単語ごとにバラバラにする「形態素解析」を行うパッケージはMeCab、Janome、など幾つかあります。 いずれも素晴らしいパッケージで、大きく違いは無いのですが、Windows環境ではJanomeが最もスムーズに使えるようです。 (Mac,Linuxではどれでも変わりないように思います。) ここでは、試しにJanomeを使ってみます。 以下、文字列を入力すると、単語ごとに分断されたものがリストになって返ってくる関数です。 janomeパッケ

                                                      Pythonで文章の類似度を計算する方法〜TF-IDFとcos類似度〜 | データサイエンス情報局
                                                    • 【永久保存版】複数のベクトル群同士のコサイン類似度を一気に算出する方法 - Qiita

                                                      はじめに この記事では,コサイン類似度の概要から,複数のベクトル群同士のコサイン類似度を一気に算出する方法をpythonコードを用いて解説します. コサイン類似度とは コサイン類似度を一言で表すと「2つのベクトルがどの程度似ているかを表す尺度」です.この尺度は,2つのベクトルの内積を2つのベクトルの大きさ(L2ノルム)で割ることによって計算できます. コサイン類似度は,-1~1の範囲に正規化され,その値によって以下のように解釈が異なります. 1なら「2つのベクトルの成す角度が0度 → 同じ向きのベクトル → 完全に似ている」 0なら「2つのベクトルの成す角度が90度 → 独立・直行したベクトル → 似ている/似ていないのどちらにも無関係」 -1なら「2つのベクトルの成す角度が180度 → 反対向きのベクトル → 完全に似ていない」 2つのベクトルの大きさにかかわらず,2つのベクトルの向きが

                                                        【永久保存版】複数のベクトル群同士のコサイン類似度を一気に算出する方法 - Qiita
                                                      • Networkxのネットワーク類似度 – S-Analysis

                                                        目次1. NetworkXの概要 2. NetworkXの類似性の測定 3. 実験 ・NetworkX環境設定 ・共通部分のノードとエッジの可視化 ・Jaccard係数の集合の類似度 ・graph_edit_distance ・optimal_edit_paths ・optimize_graph_edit_distance ・simrank_similarity 1. NetworkXの概要NetworkXは、グラフ/ネットワークの作成、加工、構造分析をのPythonのパッケージです。そもそも、数学者、物理学者、生物学者、コンピューター科学者、社会科学者などの分野で活用されています。ソーシャル ネットワーク、分子グラフ、通信ネットワーク、物流ネットワーク、エネルギーネットワークなどの分析を対応します。 このライブラリは多くの機能があり、今回はネットワーク類似度を解説します。 2. Netw

                                                        • レーベンシュタイン距離で文字列の類似度を高速に取得する

                                                          はじめに文字列の類似度について考えます。具体的には、レーベンシュタイン距離を使用して文字列の類似度を測定します。ただし、レーベンシュタイン距離では、速度が遅いため、高速化します。高速化に伴ってレーベンシュタイン距離とは別物になってしまいますが、類似度としての役割は果たせます。 最終的には、文字列類似度としてレーベンシュタイン距離ではなくn-gramを使用する方法を採用しました。レーベンシュタイン距離では、高速化しても遅すぎるのとn-gramの類似度が使用目的に合致していたため、採用しました。 n-gramで文字列の類似度を測定する※ウェブページで使用したかったため、使用言語はJavaScriptです レーベンシュタイン距離の概要としては、文字列Aから文字列Bへ変更するのに、挿入・削除・置換を何回行えば変更できるかの問題を解くアルゴリズムです。 オーダーは、O(N*M)で正直遅いです。ただ、

                                                            レーベンシュタイン距離で文字列の類似度を高速に取得する
                                                          • カーネル関数って結局なんなの?→サンプル間の類似度と理解するのがよいと思います!

                                                            サポートベクターマシン (Support Vector Machine, SVM) や サポートベクター回帰 (Support Vector Regression, SVR) や ガウス過程回帰 (Gaussian Process Regression, GPR) などでよく出てくるカーネル関数についてです。

                                                              カーネル関数って結局なんなの?→サンプル間の類似度と理解するのがよいと思います!
                                                            • 時系列データの視覚的類似度と株価予測への応用 - Qiita

                                                              機械学習で株価予測や競馬予測のアルゴリズムを開発している人は多くないですが、興味ある人はそれなりにいると思います。Qiitaを検索すると機械学習手法の勉強のためにちょっと触ってみたという感じの人は結構見かけます。投資や競馬に興味がなくても、ルールが決まっていて、勝つというゴールがシンプルなため機械学習の勉強と相性が非常に高いですので、個人のスキルアップにもおすすめなテーマだと思っています。今回は株価の時系列予測に関連した技術を紹介します。 一般的な時系列データの類似度 時系列データの類似度というと、dynamic time warpingが王道な手法として思い浮かぶかと思います。DTWをQiitaで検索すると以下の記事に説明がありました。 DTW(Dynamic Time Warping)/動的時間伸縮法について話す 時系列同士の長さや周期が違っても類似度を求めることができます。 なので、

                                                                時系列データの視覚的類似度と株価予測への応用 - Qiita
                                                              • PHPを使って形態素解析と文章の類似度を出してみる - エキサイト TechBlog.

                                                                ご無沙汰しております。 taanatsuです。 今回は珍しくPHPの記事を書いていこうと思います。 ExciteといえばPHPですからね!しらんけど。 形態素解析 皆さんは「形態素解析」という言葉を耳にしたことがありますでしょうか? 機械学習だ!AIだ!と騒がれる昨今、文章の解析で使われる手法の一つがこの形態素解析です。 私は漢字が4つ以上並ぶと読めなくなるので、形態素解析という言葉が苦手ではあります。 形態素解析とは、文章を「形態素」、いわゆる名詞・動詞・形容詞・副詞のような、日本語の最小単位の単語に分割する処理のことを言います。 形態素解析器「MeCab」 形態素解析を行ってくれるツールです。 今回はよく使われる「MeCab」を利用していきたいと思います。 で、Windowsの方はすいません。。。 会社のPCがMacなので、この記事はMac用になります。 私個人はWindows機を利用

                                                                  PHPを使って形態素解析と文章の類似度を出してみる - エキサイト TechBlog.
                                                                • WRD(Word Rotator's Distance)で文書間の距離(類似度)を計算する - Qiita

                                                                  背景 文書(テキスト)間の類似度を計算する処理は、検索やレコメンドなど様々な分野で使われていると思います。 現在(2020年9月時点)、文書間の類似度を計算する方法は、次のようにコサイン類似度から計算する方法と、距離から計算する方法の大きく2種類に分類することができます。両者とも、単語の分散表現を利用するというのが前提にあります。 単語の分散表現を利用して文書をベクトル化し、そのベクトル空間上で文書間のコサイン類似度を計算する 文書に含まれる単語の分散表現をベクトル空間上にマッピングし、そのベクトル空間上で文書間の距離を計算する。 1の手法については、文書に含まれる単語の分散表現の(加重)平均を取り、各文書をベクトル化します。そして、そのベクトル空間上でコサイン類似度を計算するという手法です。クックパッドやマイクロアドをはじめ、実際のビジネスの現場でも幅広く使われています。 2の手法につい

                                                                    WRD(Word Rotator's Distance)で文書間の距離(類似度)を計算する - Qiita
                                                                  • 文字列の類似度を算出したらリストの名寄せや管理の負担が軽くなった話 - CrossMarketing Group Tech Blog

                                                                    概要 レーベンシュタイン距離というものをご存じだろうか?ざっくりと説明すると、ある文字列と別の文字列を同じ文字列に編集するために最小でどれくらい手数が必要か算出するアルゴリズムで、文字列同士の類似度に応用が可能になる。これは表記ゆれ問題でつきまとう、いわゆる「名寄せ」作業で効果を発揮する。これを活用して、社内のIT資材管理業務のユーザーリスト管理作業の負荷軽減ができた事例について紹介させていただく。 レーベンシュタイン距離については、詳しく解説されている下記サイトを参照して欲しい。 【技術解説】似ている文字列がわかる!レーベンシュタイン距離とジャロ・ウィンクラー距離の計算方法とは 管理は続くよ、どこまでも まず、IT資材管理業務を簡単に説明すると、セキュリティ担保の文脈で、情シスにて管理するIT資材(PCなど)を、社内外の誰に貸与しているのか、使用権を割り当てているのか、また使用されていな

                                                                      文字列の類似度を算出したらリストの名寄せや管理の負担が軽くなった話 - CrossMarketing Group Tech Blog
                                                                    • 文字列や単語の類似度を測る6つの手法

                                                                      単語の類似度を計算するプログラムを書いていたところ、「文字列の類似度」や「単語の類似度」という表現を見て、何が違うんだと感じたので調べた結果をまとめます。 調べた結果、筆者の認識では「文字列の類似度は(手法は問わず)文字列の一致度」、「単語の類似度は(手法は問わず)文章中の文脈に基づいた意味の一致度」という認識になりました。さらに、単語の類似度だけでなく、文章の類似度を計算する手法も見つけましたので合わせて整理します。自分が知りたかったのは単語ベクトルに変換した後での類似度の計算でしたので後者、加えて文章の類似度であることがわかりました。 いずれの手法も処理対象が文字列であったり単語であったり文章であったり異なるため、解析したい目的に合わせて使用しましょう。 動作環境 Ubuntu20.04 Python3.8.10 環境構築 以下のライブラリをインストールします。 requirement

                                                                        文字列や単語の類似度を測る6つの手法
                                                                      • 文の類似度を計算する方法

                                                                        機械翻訳の翻訳性能を示す指標として、BLEU(bilingual evaluation understudy)スコアをはじめ、いくつかの指標が提案されています。その多くは、機械翻訳で翻訳された訳文が、人間が翻訳した「正しい」訳文とどれだけ似ているか(あるいはどれだけ異なっているか)を表しています。 機械の訳文が人間の訳文に似ていればいるほど、機械翻訳の性能がよいと考えられます。そこで、文の類似度を自動的に計算できれば、翻訳の品質を自動的に評価することが可能になります。 人間が訳した参照訳を用意できない場合でも、原文を機械翻訳にかけたのち、訳文を機械翻訳で原語に戻し、元の原文との類似度を計算することが考えられます。原文と逆翻訳文が似ていればいるほど、訳文の品質がよい可能性が高いでしょう。 では、2つの文の類似度を計算するには、どうすればよいでしょうか。いくつかの計算方法がありますが、この記事

                                                                          文の類似度を計算する方法
                                                                        • 技術文章と法令文の類似度を算出するAI技術の仕組み ニュースイッチ by 日刊工業新聞社

                                                                          日立製作所研究開発グループは、技術文章と輸出管理法令を関連付けて照会する技術を開発した。英語を介して技術文章と法令文の類似度を人工知能(AI)技術で算出する。英語を介することで表記揺れを抑えた。輸出管理担当者が確認すべき法令を探し当てる負荷を低減できると見込まれる。 企業の複数拠点間でデータを共有するなどの国をまたぐデータ移動を想定する。技術情報を国境を越えて移動させると輸出管理法令の規制対象になる。そこで技術文章に関連する法令をAI技術で探し当てる。 まず英語法令文や英語技術文章を合わせてAIの言語モデルを構築する。同モデルで技術文章や法令文から文ベクトルを算出する。文ベクトルのコサイン距離を計算して文章の類似度を判定する。 輸出関連法令は法務省から英訳された法令文が提供されており、翻訳の質が高い。技術文章は人手や機械学習で翻訳した英文を用いる。英語を介することで技術用語などの表記揺れを

                                                                            技術文章と法令文の類似度を算出するAI技術の仕組み ニュースイッチ by 日刊工業新聞社
                                                                          • ライブラリsentence-transformersのサンプルコードを動かし、英語や日本語テキストからembeddingsやその類似度を計算する - nikkie-ftnextの日記

                                                                            はじめに アヤさん、たんじょーび、おめでとう!! nikkieです。 みんなアイうた見ていて嬉しい限り♪ sentence-transformersというPythonのライブラリがあります。 こいつでembeddings(テキストの埋め込み表現)が計算できるらしく、気になったので触ってみました。 ※レベル感としては使い出しレベル、やってみた系です。 目次 はじめに 目次 動作環境 ドキュメントの例でembeddingsを計算(英語テキスト) 日本語テキストからembeddingsを計算 終わりに 動作環境 macOS 12.6.6 CPU環境です Python 3.10.9 sentence-transformers 2.2.2 pip install sentence-transformersで入ったライブラリのうち主なもののバージョンはこちら torch 2.0.1 transform

                                                                              ライブラリsentence-transformersのサンプルコードを動かし、英語や日本語テキストからembeddingsやその類似度を計算する - nikkie-ftnextの日記
                                                                            • 似ている画像を探したい Pythonでかんたんに画像の類似度を計算する - Qiita

                                                                              膨大な画像から似た画像を探すのはたいへん 現代は画像があふれる時代ですが、似ている画像を目で探すのは大変です。 類似度を数値化すれば、自動で探せる 画像感の類似度を数値化できれば、その数値を比較して、もっとも似ている画像をかんたんに探せます。 機械学習モデルをつかって画像類似度を数値化してくれるimgsim 手順 imgsimをインストールして、画像を768の数値に埋め込み、埋め込み間の差分を計算する。 import imgsim img0 = cv2.imread("cake.jpg") img1 = cv2.imread("pancake.jpg") vtr = imgsim.Vectorizer() vec0 = vtr.vectorize(img0) vec1 = vtr.vectorize(img1) dist = imgsim.distance(vec0, vec1) prin

                                                                                似ている画像を探したい Pythonでかんたんに画像の類似度を計算する - Qiita
                                                                              • Ruby: gem `amatch` を使って文字列同士の類似度を測る👩‍🔬 - Madogiwa Blog

                                                                                こんにちは、まどぎわです(・∀・) rubyで文字の類似度とか測るgemとか無いかなーと探してたらamatchというgemを見つけたので、使い方とかをメモしておきます✍ amatchとは? 使い方 実際に解析してみた パフォーマンス おわりに 参考 amatchとは? This is a collection of classes that can be used for Approximate matching, searching, and comparing of Strings. They implement algorithms that compute the Levenshtein edit distance, Sellers edit distance, the Hamming distance, the longest common subsequence length,

                                                                                  Ruby: gem `amatch` を使って文字列同士の類似度を測る👩‍🔬 - Madogiwa Blog
                                                                                1

                                                                                新着記事