Обсуждение MachineLearning:Публикации и библиографии

Материал из MachineLearning.

Перейти к: навигация, поиск

Содержание

Почти идеальный способ разметки мог бы быть таким

{{Монография
   |автор = Hastie, T.
   |автор2 = Tibshirani, R.
   |автор3 = Friedman, J.
   |название = The Elements of Statistical Learning
   |издатель = Springer
   |год = 2001
   |ISBN = 0-387-95284-5
   |PageName = Публикация:Hastie 2001 The Elements of Statistical Learning
   |BibtexKey = hastie01elements
}}<includeonly>{{П-ссылка}}</includeonly><noinclude>{{П-шапка}}

== Аннотация ==
Классический университетский учебник по статистическому (машинному) обучению, 
написанный тремя профессорами Стэнфордского университета.

== Ссылки ==
*[http://www.amazon.com/Elements-Statistical-Learning-T-Hastie/dp/0387952845 Amazon.com]
*[http://www-stat.stanford.edu/~tibs/ElemStatLearn/ Страница этой книги]
[[Категория:Учебники|Hastie]]
[[Категория:Машинное обучение (публикации)|Hastie]]
</noinclude>

Здесь шаблон {{Монография}} не генерирует текст, а только запоминает переданные параметры во внутренних переменных. Собственно генерация текста осуществляется шаблонами {{П-ссылка}} и {{П-шапка}}. Это можно реализовать с помощью расширения VariablesExtension, которое позволяет определять на странице переменные, заносить в них любой текст и далее их использовать.

Пример: {{#vardefine:myvar|value}} {{#var:myvar}} {{#var:myvar}} {{#var:myvar}}

К сожалению, реализация этого расширения неэффективна и не рекомендуется в Wiki-проектах.


Далее идёт устаревшее обсуждение


Основные требования к организации библиографий в MachineLearning.Ru

  • Для каждой публикации отводится отдельная страница публикации. Это обычная страница, за исключением того, что с ней связана библиографическая запись, текст которой автоматически генерируется по набору полей.
  • Поля библиографической записи:
    • авторы;
    • название публикации;
    • название периодического издания, сборника или конференции;
    • том и номер журнала;
    • диапазон страниц (для статей) или количество страниц (для книг, диссертаций, отчётов);
    • год издания;
    • редакторы издания;
    • город и название издательства;
    • ссылка на исходный текст: URL или загруженный документ;
    • язык публикации;
    • ISBN или ISSN;
    • добавочный текст.
  • Типы публикаций:
    • книга;
    • статья (в журнале, сборнике статей, сборнике трудов конференции);
    • диссертация;
    • отчёт;
    • электронный документ (загруженный сюда, размещённый в Интернете, URL);
    • другое.
  • Текст библиографической записи с правильным оформлением, максимально приближенным к ГОСТ 7.80-2000, должен генерироваться автоматически по набору полей.
  • Должна быть возможность на любой странице в списке литературы указать только название страницы публикации, и генерируемый текст библиографической записи будет вставлен в этом месте автоматически.
  • Должна быть возможность автоматически сгенерировать на странице публикации описание библиографической записи в формате BibTeX.
  • Типичная структура страницы публикации:
    • форма ввода полей библиографической записи; желательно предусмотреть возможность ввода описания библиографической записи целиком в формате BibTeX;
    • генерируемое описание библиографической записи в формате BibTeX;
    • аннотация — необязательный раздел;
    • реферат — необязательный раздел;
    • перевод (возможно, только некоторых фрагментов) — необязательный раздел;
    • ссылки — необязательный раздел;
    • категории.
  • Категоризация публикаций производится с помощью стандартного механизма категорий. Предполагается, что названия категорий будут совпадать с названиями основных тематических категорий Ресурса, но к ним в конце будет приписываться (публикация).
  • Должны быть предусмотрены следующие виды категоризации:
    • по тематике;
    • по авторам;
    • по годам;
    • по типам публикации;
    • по изданиям (журналам);
  • Категории по авторам предлагается именовать Фамилия И. О. (публикации).
  • При категоризации по авторам необходимо решить проблему неоднозначности. Участники наверняка будут вводить одного и того же автора по-разному (Knuth D. или Donald Knuth или D.E.Knuth). Даже если предусмотреть стандартный формат ввода (допустим, Фамилия И. О.), останется неоднозначность с переводом (кто бы мог подумать, что Siegel, Сиджел и Зигель — один и тот же человек). Почти идеальное решение: чтобы в поле автора по мере ввода фамилии показывался выпадающий список с вариантами выбора; если нужного варианта ещё нет, участник может ввести свой. Нужно ли запоминать полные имена или всегда ограничиваться инициалами (в BibTeX’е предусмотрены оба варианта)? Если будет такой список, то выбор редактора издания должен производиться из этого же списка. Проблема: если всё же предусматривать ввод полных имён (Фамилия, Имя1 Имя2), то участник, первым вводящий фамилию данного автора, может знать только инициалы. Потом автора придётся переименовывать… Кошмар!

К. В. Воронцов 02:50, 23 марта 2008 (MSK)

Подходят ли для этого стандартные механизмы шаблонов и категорий?

Это, конечно, попытка использовать инструмент не по назначению… и всё же:

Допустим, что страница публикации реализована как шаблон без параметров. Что это даёт:

  • Чтобы сослаться на публикацию из любой статьи, достаточно ввести в списке литературы (или в любом месте)
{{Публикация:Название публикации}}
  • Участник сам придумывает Название публикации как заголовок страницы при её создании. Это по-своему неплохо. Вид заголовков публикаций можно стандартизовать, например, так: 'Фамилия первого автора. Год. Название публикации.'. Это очень распространённая нотация при именовании электронных публикаций. Задаёт статью почти однозначно. Если неоднозначно (что бывает редко), можно приписать в конце что угодно: аббревиатуру журнала, конференции, техрепорта.
  • В описание публикации (шаблона!) вставляем шаблон {{книга|...}}. Всё остальное содержимое страницы с аннотациями, рефератами и проч. обрамляем тагами noinclude, аналогично комментариям и докоментациям к обычным шаблонам. Можно создать подстраницу как в случае с {{doc}}, но это может оказаться сложновато, и участники нас не поймут.
  • Для категоризации публикаций вручную добавляем категории по тематике, авторам, годам, конференциям, изданиям. Не забываем к именам всех этих категорий приписывать слово (публикации).

ENJOY! Почти вся функциональность реализована без утомительного засти… программирования.

Преимущества:

  • Почти нет трудозатрат. Это можно сделать сразу, а не через год.
  • Очень уж руки чешутся поскорее начать работу с библиографиями.

Недостатки:

  • Много неавтоматизированной ручной работы, появятся публикации вне категорий, дубликаты авторов и журналов, искажённые названия статей в заголовках. Но если делать автоматизированную систему поддержки публикаций, эти же проблемы останутся, просто для них придётся искать сложные навороченные решения.

Проблемы:

  • Слово Шаблон: категорически не подходит как начало заголовка. Можно ли создать ещё одни namespace, по функциональности эквивалентный шаблонам (кстати, без параметров — может, это облегчит задачу?), но называемый Публикация:?
  • Страницы Публикация: должны или не должны рассматриваться как статьи, то есть увеличивать счётчик, попадать в список новых статей, и т. д.?
  • Шаблон {{книга|...}} надо существенно доработать, в идеале приблизив по функциональности к BibTeX’овским записям. Если переименовать поля (в author, title, year, и т. д.) и сделать так, чтобы параметры шаблона принимались в кавычках, будет почти полная совместимость с бибтехом.

Простые решения — красивые решения! — К. В. Воронцов 16:23, 29 марта 2008 (MSK)

Начнем с конца, чтобы охладить пыл: Для любой самой сложной задачи всегда существует простое неправильное решение :). Дальше. Шаблоны здесь не причем. Заводим неймспейс Публикация. Все страницы в этом неймспейсе имеют стандартизованный вид — как записи в базе данных. Пример (правда из другой области) можно посмотреть здесь [1]. Сейчас с Андреем думаем как это реализовать.
Кроме того, надо сделать скрипты-конверторы для перевода наборов статей из неймспейса Публикации в списки в нужных форматах. С именованием статей в принципе согласен. В статистике проблем нет — будем учитывать отдельной строкой. Шаблон {{Книга}} — временное решение, которое применяется для оформления. --Yury Chekhovich 00:25, 30 марта 2008 (MSK)

Нужна ли автоматическая генерация списков?

Имеются в виду списки по тематике, авторам, годам, изданиям/конференциям, типам публикации (книга/статья/тезисы/диссер/отчёт).

Трудности такие:

  • Унификация имён авторов. Участник может ввести автора как угодно: с полным именем, с инициалами, без инициалов; поставив инициалы спереди или сзади; наконец, просто чего-то напутав. У некоторых авторов трудно понять, где имя, а где фамилия. В общем случае невозможно автоматически сгенерировать правильный идентификатор автора, который определит имя категории (или списка) публикаций данного автора. Вывод: всё равно придётся вручную вводить идентификатор автора.
  • Унификация названий журналов и конференций. Примерно та же ситуация, что и с авторами.
  • Отслеживание тематик. Названия тематик публикаций должны повторять таматики в основых категориях, с припиской (публикации). Эта ручная работа.

Общий вывод: категоризация публикаций — неизбежно ручная работа.

Единственное преимущество форм — возможность вводить правильные имена авторов, журналов и тематик из выпадающих списков, а не выискивать их по куче заранее открытых страниц со списками.

Недостаток форм — придётся предусмотреть альтернативную форму ввода библиографической записи целиком. Это крайне полезная фича, т.к.:

  • часто приходится вводить пачками публикации одного автора или из одной конференции
  • часто приходится вводить записи о публикациях копи-пастом из бибтеховского формата (на FRC таких записей 80%)

Пример библиографической статьи в бибтехе:

@inproceedings{bartlett04local,
    author = "Peter L. Bartlett and Shahar Mendelson and Petra Philips",
    title = "Local Complexities for Empirical Risk Minimization",
    booktitle = "{COLT}: 17th Annual Conference on Learning Theory",
    publisher = "Springer-Verlag",
    editor = "John Shawe-Taylor and Yoram Singer",
    year = "2004",
    pages = "270-284"
}

Теперь её эквивалент у нас:

{{@inproceedings
    |author = "Peter L. Bartlett, Shahar Mendelson, Petra Philips",
    |title = "Local Complexities for Empirical Risk Minimization",
    |booktitle = "COLT: 17th Annual Conference on Learning Theory",
    |publisher = "Springer-Verlag",
    |editor = "John Shawe-Taylor and Yoram Singer",
    |year = "2004",
    |pages = "270-284"
}}
<noinclude>
== Аннотация ==
== Ссылки ==
[[Категория:Bartlett P. L. (публикации)]]
[[Категория:Mendelson S. (публикации)]]
[[Категория:Philips P. (публикации)]]
[[Категория:COLT-2004 (публикации)]]
[[Категория:2004 (публикации)]]
[[Категория:Springer-Verlag (публикации)]]
[[Категория:Теория вычислительного обучения (публикации)]]
[[Категория:Сложность выборки (публикации)]]
</noinclude>

Вопросы:

  • Можно ли при передаче параметров автоматически убирать кавычки и запятые в конце?
  • Можно ли автоматически заменять and на запятые в списке авторов?
  • Можно ли вставлять бибтеховскую запись целиком как один параметр шаблона, даже не расставляя символы "|", а потом её парсить?

К.В.Воронцов 15:49, 31 марта 2008 (MSD)

Личные инструменты