Penguraian otomatis teks kutipan dalam referensi akademik

18

Apakah ada perangkat lunak (atau kode semu) yang dapat secara otomatis memindai bagian teks (baik disisipkan ke dalam alat, atau membaca dari .doc / .pdf) dan mengidentifikasi data kutipan menggunakan format standar? Data kemudian akan dipecah menjadi bidang konstituennya dan diekspor dalam format XML, CSV, atau format data terstruktur lainnya. Saya telah melihat cb2Bib tetapi hanya mampu mengekstraksi tahun dari referensi gaya Harvard, yang tidak mencukupi.

Alistair Knock
sumber
Apakah Anda ingin memindai teks itu sendiri atau hanya bagian referensi?
innaM
Hanya referensi - itu kemungkinan merupakan dokumen yang berisi publikasi pribadi.
Alistair Knock
Saya tidak yakin apakah ini yang Anda butuhkan tetapi Anda dapat mencoba refhive.com
Mostafa Elmoghazi

Jawaban:

4

Lihatlah daftar Parser Kutipan yang dapat menghasilkan XML dari teks input:

http://freecite.library.brown.edu
http://paracite.eprints.org
http://aye.comp.nus.edu.sg/parsCit (dalam mode pemeliharaan per 1 Agustus 2012)
http: // opcit.eprints.org
http://search.cpan.org/~mjewell/Biblio-Citation-Parser-1.10

Dengan freecite, Anda dapat menggunakan curlperintah untuk mengirim kutipan sebagai berikut (dalam PHP):

$cmd = "curl -H 'Accept: text/xml' -d \"" . $myinput . "\" http://freecite.library.brown.edu/citations/create";
$xmloutput = exec( $cmd );
TONG
sumber
Opsi lain adalah github.com/inspirehep/refextract . Itu tidak didasarkan pada ML tetapi bekerja dengan sangat baik pada tes saya.
Josir
3

Saat ini (2017) proyek Open-Source paling aktif yang mengimplementasikan ini tampaknya adalah Anystyle Parser (versi terakhir 07-2016). Itu dapat digunakan melalui antarmuka web, API, atau diunduh sebagai RubyGem.

Mereka secara eksplisit menyebutkan di situs web mereka bahwa implementasinya terinspirasi oleh ParsCit (versi terakhir 2013?) Dan FreeCite (komitmen terakhir 2009).

Juga bentuk situs web mereka:

AnyStyle Parser menggunakan heuristik pembelajaran mesin yang kuat berdasarkan Conditional Random Fields yang dapat dilatih oleh semua orang menggunakan editor bawaan kami.

Itu adalah fitur yang benar-benar keren, yang menjadikan ini implementasi yang paling menarik (imho). Pelatihan tampaknya cukup mudah, seperti yang dijelaskan dalam dokumentasi API . Anda hanya memberikan beberapa hasil yang dikoreksi secara manual, dan dan jalankan Anystyle.parser.trainperintah. Saya tidak yakin apakah ParsCit dan FreeCite juga mendukung ini, tetapi jika tidak, sepertinya ini adalah perbedaan fitur yang sangat besar bagi saya.

Wouter
sumber
Dengan pengecualian Anystyle Parser, mereka semua disebutkan dalam jawaban dengan suara tertinggi saat ini. Apa yang sebenarnya membuat mereka menonjol? Apa kelebihan atau kekurangan yang diberikan pertanyaan aslinya?
Seth
Ah, memang. Saya akan mengedit dan meningkatkan jawaban saya. Terima kasih untuk menunjukkan itu.
Wouter
Sepertinya sudah mati sekarang.
ahli
1
@Brandon: Saya telah mengirim HOWTO di sini: github.com/inukshuk/wapiti-ruby/issues/3
Wouter
1
Itu terlihat hebat, terima kasih! Sebagai seseorang yang belum pernah menyentuh ruby, itu akan sangat membantu.
Brandon
2

Cobalah alat seperti Regex Buddy atau Expresso .

Jika Anda bukan seorang programmer, Ekspresi Reguler mungkin agak menakutkan, tetapi sebenarnya tidak terlalu sulit, terutama dengan alat yang layak seperti salah satu di atas.

Berikut adalah contoh seseorang yang menggunakan Ekspresi Reguler untuk mengekstraksi kutipan:

Kutipan parsing ekspresi reguler

Abu
sumber
1

Mendeley seharusnya bisa melakukan ini. Itu dapat mengimpor PDF dan kemudian mengekspor metadata ke BibTeX, RIS dan EndNote XML. Ini gratis untuk diunduh dan bersifat lintas platform.

Sunting: Saya menguji ini pada beberapa dokumen. Impor PDF tampaknya berfungsi dengan baik untuk referensi yang diformat dengan benar. Untuk dokumen yang saya buat menggunakan LaTeX, semua referensi dengan penulis dalam bentuk "Smith, J." atau "J. Smith", dll., diimpor dengan baik. Jika penulisnya adalah perusahaan (satu kata), atau rujukannya tidak lengkap, itu tidak berfungsi juga. Referensi yang diekstraksi dapat dengan mudah diedit dan diekspor ke BibTeX, dll.

sblair
sumber
2
"Fitur ini telah dihapus di Mendeley 0.9.7 karena menghabiskan banyak sumber daya (sisi klien dan server) tanpa memberikan nilai yang cukup. Kami berencana untuk memperkenalkannya kembali dalam bentuk yang ditingkatkan di masa mendatang." ...... feedback.mendeley.com/forums/4941-mendeley-feedback/suggestions/…
iceman
1

Saya telah melihat program Westlaw melakukan itu untuk kutipan hukum, tapi itu mungkin bukan yang Anda cari. Manajer Referensi mungkin melakukan sesuatu seperti itu untuk format akademik, tetapi saya tidak pernah menggunakannya.

Kaypro II
sumber
0

Zotero adalah plugin untuk firefox yang melakukan ini untuk konten web. Tidak yakin apakah ada alat serupa untuk dokumen / pdf

Abhinav
sumber
1
Saya tahu bahwa ini bukan apa yang dirancang Zotero untuk dilakukan, tetapi jika Anda mengarahkan Firefox ke file teks atau file html dengan data yang relevan, Zotero mungkin mengenali referensi dan kemudian Anda bisa menambahkannya ke perpustakaan Zotero dan mengekspor seluruh pustaka ke dalam format apa pun yang Anda suka (saya tahu Zotero mendukung banyak format). Ini akan menyakitkan untuk sejumlah besar file.
nedned
Saya tidak melihat bagaimana Zotero melakukan apa yang diminta OP. Saya telah menginstalnya, tetapi sepertinya tidak ada pilihan untuk mem-parsing referensi.
Rikki
Zotero mem-parsing kutipan dari situs web kode khusus, bukan dari teks biasa.
Ochado
0

Ini mungkin milik lebih sebagai komentar untuk @Abhinav, tetapi zotero pasti hanya menangani data terstruktur, seperti yang Anda temukan dijelaskan di sini:

http://www.zotero.org/support/getting_stuff_into_your_library#importing_records_from_other_reference_tools

Peretasan yang menarik mungkin dengan mencoba menulis sebuah program yang menggunakan setiap kutipan sebagai permintaan pencarian di database favorit Anda, kemudian menggunakan sesuatu seperti zotero untuk menghasilkan informasi referensi. Anda juga dapat mengunduh informasi terstruktur dari layanan seperti citeUlike. Beri tahu saya jika Anda akhirnya melakukan hal seperti itu! (pasang di github jika Anda melakukannya;).

Dav Clark
sumber