RDFlib은 RDF 데이터를 처리하기 위한 파이썬 라이브러리다. 간단한 예제를 통해 그래프를 만들고, SPARQL 쿼리를 수행한 후 데이터를 pandas.DataFrame으로 변환하는 과정을 소개합니다.1. RDFlib 설치pip install rdflib2. 그래프 불러오기 또는 그래프 생성하기참고: RDFlib 공식 문서 - 그래프 파싱2-1. 그래프 데이터 불러오기Turtle(.ttl), XML/RDF(.rdf) 형식의 데이터가 있다면, .parse() 메서드를 사용한다.예시 파일: sample.ttlimport rdflibfrom rdflib import Graph# 파일 불러오기g = Graph()g.parse("sample.ttl", format="ttl")2-2. 그래프 데이터 생성하기RD..
지식그래프는 주어-술어-목적어로 구성되어 데이터의 엔티티를 의미적인 관계로 표현함최근 LLM에 사실정보를 추가하기 위한 방안으로 KG를 사용하면서 '지식그래프 임베딩 (Knowledge Graph Embedding, KGE)' 기법에 대한 글, 논문이 생겨나고 있음 관련 프로젝트를 진행해야해서 참고할만한 글을 스크랩하려고 한다.대부분 medium의 메일링을 통해서 얻는 정보이고, 종종 논문에 대한 것도 함께 있다. Knowledge Graph Embeddings: Unraveling the What, Why, and How Knowledge Graph Embeddings: Unraveling the What, Why, and HowKGEs map knowledge graphs into vectors, p..
RAG+KG와 관련된 글, 논문, 영상을 최근 자주 접하고 있다.스크랩용으로 링크와 짧게 어떤 내용인지 AI요약으로 정리하고, 추후 천천히 볼 예정 지식그래프와 LLM에 대한 글을 찾아보면 체감상 90%는 neo4j의 데이터베이스를 사용한 경우라 property graph위주로 보인다. 실제로 neo4j가 공격적으로 KG+LLM 연구를 진행하고 있다고 봄 Neo4j가 Going Meta라는 프로그램을 유튜브에서 공개하는데 오늘(2024-05-20)기준으로 27개 영상이 있는데, 기본적인 지식그래프, 온톨로지 지식이 있다면 필요한 부분만 들어도 될 것 같다. 아래는 들으면 좋을 것 같은 영상 몇개를 골라봄 Going meta - Ep 7: Generating natural language from your..
rdflib은 파이썬을 사용해 RDF 데이터를 구축할 수 있는 라이브러리다. 기존에 많이 사용하는 DCTERMS, RDF, RDFS, SKOS 등은 이미 네임스페이스, 즉, URI체계가 내부에 정의되어 있어서 라이브러리를 통해 불러와주면 사용할 수 있다. DCTERMS는 dct, dcterms 등 prefix를 다양하게 쓰는 경우가 있어, 임의로 prefix를 수정하려면 'bind'를 사용하면 된다. from rdflib import Namespace, Literal, URIRef from rdflib.graph import Graph from rdflib.namespace import DCTERMS # RDF 그래프 생성 g = Graph() # DCTERMS 네임스페이스의 접두사를 수정하여 'mydc..
type이 여러개인 개체를 출력할 때, 한 행으로 합쳤더니 prefix없이 URI가 모두 들어가서 읽기 어려운 상태가 되었다. 원래 계획은 prefix를 붙여서 출력하고 싶었지만, 그러려면 prefix를 모두 알고 있는 상태에서 변환하는 작업이기때문에 포기하고 다른 방법을 찾았다. http://www.w3.org/2000/01/rdf-schema#Class 이러한 URI가 있을 때, 마지막 '/'를 기준으로 가장 뒤에 있는 문자열만 출력하게 하고 싶어서 찾아본 결과 정규식을 사용한 예시를 참고하였다. - BIND (REPLACE(STR(?type), "^.*/([^/]*)$", "$1") as ?typeName) PREFIX skos: PREFIX rdfs: PREFIX owl: SELECT ?URI (..
예시로 type이 여러개인 개체가 있을 때, SPARQL 쿼리를 출력하면 중복으로 출력됨 PREFIX rdfs: PREFIX skos: SELECT ?URI ?type ?label ?definition WHERE { ?URI a ?type ; rdfs:label ?label ; skos:definition ?definition . } 1 fibo-fnd-plc-adr:Address rdfs:Class "address"@en "index to a location to which communications may be delivered" 2 fibo-fnd-plc-adr:Address owl:Class "address"@en "index to a location to which communications m..
SELECT ?graph (COUNT(*) AS ?tripleCount) WHERE { GRAPH ?graph { ?subject ?predicate ?object . } } GROUP BY ?graph virtuoso는 데이터 업로드 할 때, named graph URI를 global.graph라는 파일과 같이 업로드하게 되어있습니다. 종종 named graph 별로 트리플 현황을 알고 싶을때 사용하는 쿼리입니다
목표 목표는 이미 virtuoso가 설치되어있는 컴퓨터에 하나 더 설치해서 다른 포트로 새로운 버투소를 운영하고 싶었다.. 그래서 막연하게 다른 경로에 버투소를 설치하면 될 줄 알았지만 ㅜㅜ 소스코드 내에서 1111,8890을 이미 설정해놓았고 설치 후에 포트 변경은 가능하지만, 설치 진행할 때도 1111,8890을 체크하더라.. 그래서 설치 도중 에러가 나서 이것저것 다 해보다가 소스코드로 설치하는 것은 포기함! 도커로 virtuoso 설치하고 포트 변경하기 새롭게 생각한 방법은 도커로 설치하기! https://hub.docker.com/r/openlink/virtuoso-opensource-7/ # docker image 가져오기 $ docker pull openlink/virtuoso-opensou..
7 버전 설치 ubuntu 20.04 기준 Install Virtuoso 7 on Ubuntu 20.04 LTS 오류가 있었음 (install-info 어쩌고 안된다고) 그래서 스택오버플로우에서 찾은 방법 dpkg: error processing package install-info sudo mv /var/lib/dpkg/info/install-info.postinst /var/lib/dpkg/info/install-info.postinst.bad sudo apt-get install libtool sudo apt-get install dpkg-dev build-essential sudo apt update sudo apt-get install autoconf automake bison checkinst..
- Total
- Today
- Yesterday
- deepseek
- 키워드추출
- PostgreSQL
- LLM
- python
- vervel
- rdflib
- MongoDB
- 지식그래프
- SPARQL
- geospy
- knowledgegraph
- Vue3
- python'
- Postgis
- vscode
- polars
- pandas
- cursorai
- 지식그래프임베딩
- pdfmathtranslate
- TextRank
- writerow
- Claude
- Encoding
- ChatGPT
- hadoop
- psycopg
- rdffox
- PEFT
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |