タグ

graphに関するsh19910711のブックマーク (246)

  • グラフ分析ナイト - グラフデータ分析 入門編

    sh19910711
    sh19910711 2024/10/12
    "GCN: 周波数空間での畳み込みとノード空間の畳み込みを結びつけた / Errica: いくつかのモデルについて、丁寧な性能比較 + グラフ分類タスクにおいて注意しなければならないポイントがわかる" arXiv:1912.09893 '20
  • 知識グラフを対象とした初歩的な検索技術 - Qiita

    この記事は情報検索・検索技術 Advent Calendar 2022の21日目の記事です。また、ナレッジグラフ Advent Calendar 2022の21日目の記事です。 検索に関わることなら何でもOKということで、知識グラフ(ナレッジグラフ: KG)を対象とした検索について初歩的な記事を書かせていただきます。すでにこういった記事はたくさんあるとは思いますが、情報が埋もれやすい昨今ですので、一部最新情報を含めて改めてまとめてみました。急いで書きなぐったので誤字脱字等ご容赦ください。。。 対象読者 ・KG初心者 ・情報検索でKGを扱ってみたい人 目次 ナレッジグラフとは 代表的なナレッジグラフ SPARQLを使った検索 DBpedia検索 Wikidata検索 ナレッジグラフ推論チャレンジ【実社会版】 ナレッジグラフとは ここ数年ずっと米ガートナー社のハイプ・サイクル for AIで過

    知識グラフを対象とした初歩的な検索技術 - Qiita
    sh19910711
    sh19910711 2024/10/09
    "RDFはもともとWeb上でのデータの共有を意図しているので、全てのリソースに一意なURIを付与 / ある条件を満たしているものはLinked Open Data (LOD)と呼ばれ / ConceptNet: 一般的な単語のLOD" '22
  • GraphRAGを使ったKnowledge-Graphの構築にチャレンジ! - CCCMKホールディングス TECH LABの Tech Blog

    はじめに GraphRAG GraphRAGのKnowledge Graph構築フロー Phase1. Documentの分割 Phase2. Graph情報の生成 Phase3. Graph情報の強化 Community Graph Embedding Phase4. Community情報の要約 Phase5. Documentの処理 Phase6. Graphの可視化 Knowledge Graphに対するクエリフロー Local Search Global Search やってみる セットアップ .envファイルの設定 setting.yamlの設定 Knowledge-Graphの構築 Global Searchを試してみる。 Knowledge-Graphの可視化 まとめ こんにちは、CCCMKホールディングスTECH LABの三浦です。 最近雨の日が続いています。季節の変わり

    GraphRAGを使ったKnowledge-Graphの構築にチャレンジ! - CCCMKホールディングス TECH LABの Tech Blog
    sh19910711
    sh19910711 2024/10/09
    "GraphRAG: 設定済みのフローを使うのであれば、コマンドを数回実行することでKnowledge-Graphの構築が可能 / 54,644トークンで構成されるドキュメントからKnowledge-Graphを構築するのにgpt-4oを使った場合はUSDで$14.04ぐらい"
  • Langchain+Neo4j で「GraphRAG」を実装してみる

    「GraphRAG」は、Microsoft Researchによって提案された知識グラフを利用した新たな検索拡張生成(Retrieval Augmented Generation; RAG)手法です。知識グラフを利用することでRAGの検索部分を改善し、従来のベクトルベースの手法に比べてより関連性の高いコンテンツを取得することができるとされます。 今回はLangchainで紹介されている方法で GraphRAG を実装し、実際にいくつかの質問をして精度を検証していきます。 参考: GraphRAG: Unlocking LLM discovery on narrative private data - Microsoft Research[1] GraphRAG の特徴 GraphRAGはLLMを用いてドキュメントから知識グラフを構築し、グラフに基づいた検索を行うRAG手法です。この手法では

    Langchain+Neo4j で「GraphRAG」を実装してみる
    sh19910711
    sh19910711 2024/09/29
    "ベクトルベースの検索に比べて関係性を正しく認識しやすくなるため、複数のマニュアルの関係性を考慮する必要がある複雑な質問への対応ができるようになる可能性 / 実装にはLangchainの`LLMGraphTransformer`"
  • SSII2020SS: グラフデータでも深層学習 〜 Graph Neural Networks 入門 〜

    SSII2020 技術動向解説セッション SS1 6/11 (木) 14:00~14:30 メイン会場 (vimeo + sli.do) グラフ構造をもつデータに対する DNN、すなわち Graph Neural Networks (GNNs) の研究はこの2、3年で参加する研究者が急増している。現状、様々なアーキテクチャの GNN が様々なドメインや様々なタスクで個別に提案され、概観を捉えるのも簡単ではない状態になっている。チュートリアルは、広範に散らばった GNN 研究の現状についての概観と基盤技術を紹介するとともに、時間が許す範囲でコンピュータビジョン領域における応用例の紹介にも取り組みたい。Read less

    SSII2020SS: グラフデータでも深層学習 〜 Graph Neural Networks 入門 〜
    sh19910711
    sh19910711 2024/09/25
    "Oversmoothing: GCNのレイヤを重ねていくと全ノードの隠れ埋め込みベクトルが同じような値に近づいていく + そもそも「繋がったノードの潜在ベクトルを近づける」最適化問題を近似的に解いているため NT_Maehara19revisit" '20
  • 侵入検知システムのためのグラフ構造に基づいた機械学習および可視化 / Graph Based Machine Learning and Visualization for Intrusion Detection System

    第44回インターネットと運用技術研究発表会 https://www.iot.ipsj.or.jp/meeting/44-program/

    侵入検知システムのためのグラフ構造に基づいた機械学習および可視化 / Graph Based Machine Learning and Visualization for Intrusion Detection System
    sh19910711
    sh19910711 2024/09/06
    "トラフィックのどの要素が検知結果に対して影響していたか / グラフ化したトラフィックデータをGCNNで学習 + 検知結果(異常)を説明できる部分グラフの可視化 / 異常度: 正常な相関グラフがどれだけ崩れたか" '19
  • レコメンド技術 論文メモ Metapath-guided Heterogeneous Graph Neural Network for Intent Recommendation - Qiita

    レコメンド技術 論文メモ Metapath-guided Heterogeneous Graph Neural Network for Intent RecommendationRecommendationembeddingGNN 初めに お盆休み期間にTaobaoを運営しているAlibaba会社2019年に発表したレコメンド技術の論文を読んで、論文中提出した「term embedding」からいくつかのインスピレーションを受けました。特にItemとqueryよりユーザー属性を表すの部分現在でも活用できそうを感じました。 記事内容大体自分の理解を踏まえたの翻訳が多い、一部感想も含めています。 (一部の翻訳はGPT-4より文脈チェックや修正を行っています。) 背景 近年、モバイルeコマースプラットフォームが急速に普及する中、ユーザーの購買意向を正確に予測し、パーソナライズされた推薦を提供する

    レコメンド技術 論文メモ Metapath-guided Heterogeneous Graph Neural Network for Intent Recommendation - Qiita
    sh19910711
    sh19910711 2024/09/06
    "Intent Recommendation: ユーザーの過去の行動履歴に基づいて検索queryを生成 / モバイルでの検索queryの入力時間を短縮 + 検索したい商品をどのように表現すればよいか迷っているユーザーにも利便性を提供" doi:10.1145/3292500.3330673
  • GCNの実装をちゃんと理解する - Qiita

    はじめに GCN,ちゃんと理解していますか? グラフ深層学習屋さんなら誰でも知っている叩き台ことGCNですが,有名すぎてネットのそこら中に実装が転がっていて,コピペすれば動いてしまいます. なんとなく何をしているかは知っていても,具体的な実装を見たことはない……そんな状況を解消するため,GCNの実装を細かいところまで見ます. GCNの論文 Semi-Supervised Classification with Graph Convolutional Networks 基 GCNは隣接ノード間で属性情報を伝播し,畳み込んでノードの埋め込みとする. 何度か繰り返すと,2-hop, 3-hop先の情報を取れる. 元コード pygcn のリポジトリでGCNが実装されているので,これを見ていきます. import torch.nn as nn import torch.nn.functional

    GCNの実装をちゃんと理解する - Qiita
    sh19910711
    sh19910711 2024/06/21
    "GraphConvolution: 特徴量にウェイトをかけて扱いやすい大きさの空間に埋め込んだ後,隣接ノードの中間表現の和を取る / 複雑なコードかと思っていましたが,隣接行列と特徴量の乗算で畳み込みが実装できる"
  • グラフ向け深層学習ライブラリDeep Graph Library (DGL)の初歩の初歩 - Qiita

    グラフ向けの深層学習ライブラリDeep Graph Library(DGL)の基的な使い方について紹介します。公式ドキュメントに事例やAPIの説明が詳細に載っていたりチュートリアルも豊富にありますが、DGLの一番基的な動作(だと個人的に思っている)ノードの特徴量のmessageとreduceという2つの処理について、丁寧に説明している記事がなかったので説明してみます。 Deep Graph Library (DGL)とは? New York UniversityとAWSが開発しているPytorch-basedの(?)グラフと対象としたDeep Learningのライブラリです。 画像や言語など従来よく研究されているデータ構造ではTensorFlow, Pytorch, Chainerなど有名なライブラリがあり、CNNやRNNなどが1つの関数(公式ではbuilding-blocksと言っ

    グラフ向け深層学習ライブラリDeep Graph Library (DGL)の初歩の初歩 - Qiita
    sh19910711
    sh19910711 2024/06/20
    "DGL: New York UniversityとAWSが開発しているPytorch-basedの(?)グラフと対象としたDeep Learningのライブラリ / ちなみにDGLのリポジトリに結構最新のモデルも実装されているので使えそう" 2019
  • Graph DBでOLTPする方式とGraph DBベースの組織情報管理アプリについて - たなかこういちの開発ノート

    私は以前の記事で、「Graph DBでは、排他制御の設計が難しいのでOLTPに向かないのではないか?」という見解を書きました。 その後、Amazon Aurora技術的基礎となっているLog-Structured Storageについて学んだり、その他"Append-Only"方式のDB製品があることを知りました。 そうする内に、"Append-Only"方式な設計を適用すれば、Graph DBで極めてスマートにOLTPを実装できるだろうことに気づきました。「更新」の都度、アクティブなノード(Vertex)を表すリンク(Edge)を繋ぎ足すことや、変更履歴となる「チェックポイント領域」の複数のエントリーからのリンクを多重に持つことなどは、Graph DBでは素直に設計することができます。 さらに考えると、(DatomicやCouchDBといった製品を用いないで、)"Append-Only

    Graph DBでOLTPする方式とGraph DBベースの組織情報管理アプリについて - たなかこういちの開発ノート
    sh19910711
    sh19910711 2024/06/19
    "Log-Structured Storageについて学んだり、その他"Append-Only"方式のDB製品があることを知り / そうする内に、"Append-Only"方式な設計を適用すれば、Graph DBで極めてスマートにOLTPを実装できるだろうことに気づきました" 2015
  • GraphRAGの簡易検証 ~Azure Document Intelligence, Neo4jを用いて~ - Qiita

    GraphRAGの簡易検証 ~Azure Document Intelligence, Neo4jを用いて~rag事前学習生成AILLMDocumentIntelligence はじめに 記事の背景 Retrieval-Augmented Generation(RAG)は、クエリに基づいた情報検索を行い、その結果を基に回答を生成する技術です。これは大規模言語モデル(LLM)の活用法の一つであり、新しい知識や企業文書などに対しても効果的に利用できます。しかし、RAGにはいくつかの課題があり、特に情報の関連付けや意味的理解の不足が精度の低下につながることがあります。 通常のRAGは、主にベクトル類似性を利用して情報を検索します。これは、情報断片の表面的な類似性を評価するものであり、深く複雑な関連性を捉えることが難しいです。また、ベクトル化された情報は独立したエンティティとして扱われるため、文

    GraphRAGの簡易検証 ~Azure Document Intelligence, Neo4jを用いて~ - Qiita
    sh19910711
    sh19910711 2024/06/19
    "通常のRAGは、主にベクトル類似性を利用して情報を検索 / 表面的な類似性を評価するものであり、深く複雑な関連性を捉えることが難しい / GraphRAG: 情報の関連付けや意味的理解の課題を克服"
  • Loomを用いたグラフ・ネットワーク分析 - Qiita

    はじめに LoomはClojureのグラフ・ネットワークライブラリです。Loomは純Clojureで実装されており、基的なネットワーク分析に必要な機能がそろっています。Clojureには統計解析等に関する優秀なツールがあり、データ分析には事欠きませんが、これでネットワーク分析も行うことができるようになります。 稿では、Loomの基的な使い方の説明と、実世界のネットワークを対象とした簡単な分析を行っていきます。 基的な使い方 インストール 以下をLeiningenやBootの依存設定に追加します。

    Loomを用いたグラフ・ネットワーク分析 - Qiita
    sh19910711
    sh19910711 2024/06/19
    "Loomは純Clojureで実装されており、基本的なネットワーク分析に必要な機能がそろっています / 一方で、Loomにはページランクなどの中心性の計算のような高度なアルゴリズムが実装されていません" 2016
  • R Shinyでネットワークグラフを可視化する方法 - Qiita

    R Shinyアプリ上でigraphで作成したネットワーク(グラフ)を可視化する方法を自分へのメモもかねて説明します。 誤りや改善点がありましたぜひ教えてください! 【背景】 ネットワーク(つまりノードとエッジでできた下記のようなグラフ)を可視化して、インタラクティブに操作できる簡易なアプリをR Shinyで作りたい。 というのも、すでに行ったRのMarkdownベースで行ったK-popのコラボネットワークの分析レポート(https://dacss.github.io/Social_Networks_Spring_2023/posts/Final_Project_Kpop_network_Erika_Nagai.html#network-overview)をより、見やすくしたかった。 Markdown上でのネットワークのプロットは動的ではないため、ズームができず、大きなネットワークになると

    R Shinyでネットワークグラフを可視化する方法 - Qiita
    sh19910711
    sh19910711 2024/06/15
    "Shinyアプリ上でigraphで作成したネットワーク(グラフ)を可視化する / visNetworkライブラリのvisNetworkOutputという関数を使う / データフレームにtitleカラムを追加 + カーソルをあてると、そのノードの名前が表示される" 2023
  • Knowledge-Graph, Ontologyについて調べてみました。 - CCCMKホールディングス TECH LABの Tech Blog

    こんにちは、CCCMKホールディングスTECH LAB三浦です。 最近Retrieval-Augmented Generation(RAG)に関する情報を見ていると、ドキュメントデータの格納場所としてVectorDBではなくKnowledge-Graphを使う手法を目にすることが多くなりました。Knowledge-Graphを用いることで、VectorDBによるRAGでは回答が難しい質問にも答えることが出来る場合があります。 今回はRAGにおけるKnowledge-Graphの活用方法から、そもそもKnowledge-Graphとはどのような概念なのか、そしてドキュメントからKnowledge-Graphをどうやって構築するのかについて色々な情報を元に調べてみたのでまとめてみたいと思います。 GraphRAG 最初に、Knowledge-GraphやRAGへの活用について興味を持ったきっか

    Knowledge-Graph, Ontologyについて調べてみました。 - CCCMKホールディングス TECH LABの Tech Blog
    sh19910711
    sh19910711 2024/06/13
    "Ontology: ある領域における概念やその概念の関係性を表現したもの + Knowledge-GraphはOntologyを具体化 / GraphRAGのブログの最後の方に"Creating LLM-generated knowledge graphs"というセクション / Knowledge-Graphの構築にLLMを使用している"
  • 【論文紹介】Unified Interpretation of Softmax Cross-Entropy and Negative Sampling: With Case Study for Knowledge Graph Embedding

    sh19910711
    sh19910711 2024/06/13
    "Negative Sampling: 「負例を賢く選ぶ手法」が与える効果はSCEにラベル平滑化のような正則化を導入する効果と理論的に等価 / Bregman Divergence: 様々な距離・ダイバージェンスの一般形" doi:10.18653/v1/2021.acl-long.429 2022
  • ベクトル検索の苦手を克服。ナレッジグラフでRAGを作る

    TL;DR ベクトル検索だと、複数のステップを踏まないと答えられない質問の検索がむずい 「TomにEmil Eifrém(Neo4jCEO)を紹介してくれる人は?」とかを検索むずい ナレッジグラフは構造化データと非構造化データをうまく扱えてベクトル検索の苦手を補える 課題はあるけどナレッジグラフは、Neo4jとLangchainで構築できるよ。 はじめに 今回はベクトル検索の苦手分野をどうしても補ってあげたいとおもっている筆者やまぐちが、ベクトル検索の苦手を補ってあげられるナレッジグラフに関してまとめていこうと思います。 少々長い記事ですが、ベクトル検索を労ってあげたいと思っている方はぜひ読んでください。 ベクトル検索の限界 以前の記事の最後にも少しだけ記載しましたが、ベクトル検索は以下の問題点があります。 必要な情報がTop Kのドキュメントには含まれていない可能性がある。 チャンクの

    ベクトル検索の苦手を克服。ナレッジグラフでRAGを作る
    sh19910711
    sh19910711 2024/06/12
    "ベクトル検索: 必要な情報がTop Kのドキュメントには含まれていない可能性 + 上記を解決するためのドキュメント数がわからない / Neo4j: ナレッジグラフで構造化データと非構造化データを扱うことができる"
  • PyG (PyTorch Geometric) で Graph Pooling Neural Network - Qiita

    グラフ構造を深層学習する PyG (PyTorch Geometric) を Google Colaboratory 上で使ってみました。今回は、Graph Pooling Neural Network を使うことがテーマです。題材として、化学情報学のメインテーマの1つである、分子構造から物性を予測する問題を解いてみます。 PyG (PyTorch Geometric) インストール PyG (PyTorch Geometric) のレポジトリは https://github.com/pyg-team/pytorch_geometric にあります。また、コードはチュートリアルドキュメント https://pytorch-geometric.readthedocs.io/en/latest/index.html を参考にしています。 import os import torch torch

    PyG (PyTorch Geometric) で Graph Pooling Neural Network - Qiita
    sh19910711
    sh19910711 2024/06/11
    "torch_geometric.transforms.ToDense を用いて transform することで、全ての大きさの分子グラフを max_nodes x max_nodes のサイズの隣接行列として表現 / Graph Pooling を使った GNN で、graph property を目的変数とした分類問題・回帰問題" 2022
  • Neo4jでベクトル検索する方法 - Qiita

    目次 0_前置き 1_ベクトルインデックスの作成 2_ノードの作成 3_ベクトル検索の実行 4_まとめ 0_前置き Neo4jでベクトル検索ができるようになりました。 Neo4jは言わずと知れたグラフデータベースです。ノードとリレーションシップにより、ナレッジグラフを作成することができます。 ChatGPTの登場で、ベクトルデータを効率的に保存するベクトルデータベースの利用が話題になりました。ベクトルデータベースを使えば、ベクトルの類似度等を用いて値を検索することができます。 そしてそんな中、2023年8月頃に、Neo4jもベクトル検索に対応しました。 Neo4jでベクトル検索を利用する Neo4jでは、ノードのプロパティにベクトルの値を格納することで、データベース内の特定のラベルに対して、ベクトル検索を行うことができます。 公式の記事に記されたコードでは、productsラベルを持つノー

    Neo4jでベクトル検索する方法 - Qiita
    sh19910711
    sh19910711 2024/06/08
    "Neo4j: ノードのプロパティにベクトルの値を格納することで、データベース内の特定のラベルに対して、ベクトル検索 / CALL db.index.vector.createNodeIndex / CALL db.index.vector.queryNodes"
  • Amazon Neptune ServerlessでグラフDBを構築し、最短経路問題を解いてみた | DevelopersIO

    データアナリティクス事業部のueharaです。 今回は、Neptune ServerlessでグラフDBを構築し、最短経路問題を解いてみたいと思います。 Neptuneとは Amazon NeptuneはフルマネージドなグラフDBサービスです。 Neptuneについては以下の記事で紹介されていますので、より詳しく知りたい方は以下をご参考ください。 Neptune Serverlessの構築 NeptuneはServerlessでも構築可能なので、今回はそちらを利用したいと思います。 AWSのマネージドコンソールからNeptuneを検索し、「Amazon Neptune を起動」を選択します。 以下のような画面が表示されますので、まずエンジンのタイプを Serverless で設定します。 バージョンは今回は Neptune 1.2.0.1.R2 を利用します。 DBクラスター識別子は任意

    Amazon Neptune ServerlessでグラフDBを構築し、最短経路問題を解いてみた | DevelopersIO
    sh19910711
    sh19910711 2024/06/06
    "NeptuneではGremlinやopenCypherなどを使ってクエリを実行 / Jupyter NotebookでGremlinによるクエリの実行は、先頭に%%gremlin / PythonからNeptuneにアクセスするためにはgremlinpythonモジュールを使用" 2023
  • 相互推薦システムの研究動向のサーベイ | Wantedly Engineer Blog

    こんにちは。ウォンテッドリーのデータサイエンティストの市村 (@chimuichimu1) です。ウォンテッドリーでは、テクノロジーの力で人と仕事の最適なマッチングを実現するために、推薦システムの開発に取り組んでいます。この記事では、Wantedly Visit で活用されている「相互推薦システム」という技術に注目し、その概要や近年の研究動向を紹介したいと思います。 相互推薦システムとは?相互推薦システムとは一言で言うと「サービス内のユーザーを互いに推薦し合う」システムのことです。一般的な推薦システムでは、ユーザーからアイテムへの嗜好に基づいて、ユーザーに対してアイテムを推薦します。一方で相互推薦システムでは、推薦されるユーザーと推薦を受け取るユーザーの両方の嗜好に基づき、ユーザーに対してユーザーを推薦します。 相互推薦システムのユースケースとしては、ジョブマッチングやオンラインのデーティ

    相互推薦システムの研究動向のサーベイ | Wantedly Engineer Blog
    sh19910711
    sh19910711 2024/06/04
    "Lai'24: 同じ知識グラフで表される関係であっても候補者側と募集側とでその情報の持つ意味が変わる / 損失関数に ~ 「候補者をスカウトしたが断られた」というような片方向の嗜好の情報を組み込む" doi:10.1609/aaai.v38i8.28708