|
|
|
Синонимы и антонимы в базе
|
|||
|---|---|---|---|
|
#18+
Не могу придумать струкуту базы. Работаю на MS Access 2007. Есть таблица слов и их значений. Некоторые слова вступают в синонимические и антонимические ряды. Поэтому нужны прицеленные запросы, которые бы делали выборку и составляли список синонимов (для конкретных слов) и список антонимов (для конкретных слов). Подводные камни: - выборка синонимов не должна включать в себя термин-запрос; - в один синонимический ряд (слова со схожим значением) равно как в один антонимический ряд (слова с противоположным значением) может вступать от двух до семи слов; - любое слово в синонимическом ряду - синоним к любому другому: S1 = S2, S2 = S3, S1 = S3. - если в антонимическом ряду более двух слов, то ряд из слов может быть синонимами по отношению друг к другу S1 <-> S2, S1 <-> S3, S2 = S3. - в антонимическом ряду может быть несколько рядов синонимов... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2009, 19:47 |
|
||
|
Синонимы и антонимы в базе
|
|||
|---|---|---|---|
|
#18+
Persio- в один синонимический ряд (слова со схожим значением) равно как в один антонимический ряд (слова с противоположным значением) может вступать от двух до семи слов; Я бы сказал: синонимов у слова может быть сколько угодно. У слова могут быть антоним - один или несколько. Если антонимов несколько, то они синонимы между собой. Верно? Persio- если в антонимическом ряду более двух слов, то ряд из слов может быть синонимами по отношению друг к другу S1 <-> S2, S1 <-> S3, S2 = S3. Что значит - может быть? А что, может и не быть? Persio- в антонимическом ряду может быть несколько рядов синонимов... Не понятно. Пример? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2009, 09:58 |
|
||
|
Синонимы и антонимы в базе
|
|||
|---|---|---|---|
|
#18+
Cane Cat FisherЯ бы сказал: синонимов у слова может быть сколько угодно. Мне нравится эта корректировка. Cane Cat FisherУ слова могут быть антоним - один или несколько. Если антонимов несколько, то они синонимы между собой. Верно? Да, об этом варианте я думал, но думаю, что все еще более интересно (это и к вопросу о нескольких рядах). Вот примеры: - черный и белый - 2 слова в ряду, антонимы; - монолог , диалог (разговор двух людей), полилог (разговор более 3х людей) - каждое из слов имеет антонимами два оставшиеся, ни одно из слов не является синонимом какому-либо другому слову из ряда; - (1) материнский язык, родной язык, первый язык ; (2) иностранный язык, неродной язык, второй язык - первые три слова и последние три слова составляют два синонимических ряда, противопоставленных друг другу. Вооот... Есть таблица синонимов, в которой обозначен номер ряда и номер слова в ряду. То есть, по идее, можно делать выборку из таблицы антонимов, исключая слова на основе таблицы синонимов. Идея есть, но вот как воплотить - ума не приложу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2009, 10:36 |
|
||
|
Синонимы и антонимы в базе
|
|||
|---|---|---|---|
|
#18+
Cane Cat FisherУ слова могут быть антоним - один или несколько. Если антонимов несколько, то они синонимы между собой. Верно?Нет. Слово - "сладкий". Антонимы - "горький", "соленый", "противный" не являются синонимами друг другу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2009, 15:58 |
|
||
|
Синонимы и антонимы в базе
|
|||
|---|---|---|---|
|
#18+
Persioнужны прицеленные запросы, которые бы делали выборку и составляли список синонимов (для конкретных слов) и список антонимов (для конкретных слов). Так нужно просто для одного конкретного слова получить либо: а) список синонимов из имеющихся в словаре слов? б) список антонимов из имеющихся в словаре слов? Если так, то мне кажется, все перечисленные подводные камни ни к чему и только сбивают с толку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2009, 17:54 |
|
||
|
Синонимы и антонимы в базе
|
|||
|---|---|---|---|
|
#18+
Persio- любое слово в синонимическом ряду - синоним к любому другому: S1 = S2, S2 = S3, S1 = S3.Так не бывает. В синонимическом ряду должна быть доминанта, от которой все строится. Кстати, как вы ее определять собираетесь - исходное слово? За Аксесс сочувствую, будет сложно. В большинстве нормальных СУБД есть рекурсивные запросы, вот там длиной рядов рулить очень просто. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.05.2009, 18:17 |
|
||
|
Синонимы и антонимы в базе
|
|||
|---|---|---|---|
|
#18+
Ennor Tiegael В синонимическом ряду должна быть доминанта, от которой все строится. Продолжаем уточнение. А зачем доминанта? разве в синонимическом ряду слова не равнозначны? Разве может быть так, что А синоним Б, и А синоним С, но В и С - не синонимы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2009, 09:35 |
|
||
|
Синонимы и антонимы в базе
|
|||
|---|---|---|---|
|
#18+
Cane Cat Fisher, Да я, собственно, всего лишь исходил из определения:http://www.lingvotech.com/synrowВ составе синонимического ряда выделяется какое-то одно слово, семантически максимально емкое и стилистически нейтральное (не имеющее дополнительных стилистических характеристик). Оно становится основным, стержневым, опорным, нередко называемым доминантой. В приводимом выше ряду таким будет слово возбуждать. Остальные слова, кроме основного значения «приводить в состояние нервного напряжения, подъема», выражают дополнительные семантико-стилистические оттенки основного значения, выражаемого доминантой.Кроме того, чисто логически: если два слова имеют совершенно идентичное значение, то одно из них вскорости исчезнет из употребления, за ненадобностью. Если же синонимы существуют длительное время, значит, их смысл все-таки не совсем идентичен друг другу. Реально, конечно, все зависит исключительно от того, насколько глубоко топикстартер готов копать предметную область... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2009, 11:23 |
|
||
|
Синонимы и антонимы в базе
|
|||
|---|---|---|---|
|
#18+
Мда. Красная девица - синоним "Красивая". Красная Армия - ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2009, 12:12 |
|
||
|
Синонимы и антонимы в базе
|
|||
|---|---|---|---|
|
#18+
Короче говоря: Код: plaintext 1. 2. Код: plaintext 1. 2. Код: plaintext 1. 2. Синонимами и антонимами являются только те пары слов, которые указаны явно. Единственное надежное предположение, за которое я пока еще цепляюсь - если А синоним В, то В - синоним А. Если А антоним В, то В - антоним А. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2009, 12:19 |
|
||
|
Синонимы и антонимы в базе
|
|||
|---|---|---|---|
|
#18+
Cane Cat FisherРазве может быть так, что А синоним Б, и А синоним С, но В и С - не синонимы?Может. Поскольку синонимы это разные слова со сходным, но необязательно на 100% идентичым значением. Те же "красная" и "красивая". Синоним слова "красный" - "бордовый". Вряд ли девица обрадуется, если назвать ее "бордовой". ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2009, 12:29 |
|
||
|
Синонимы и антонимы в базе
|
|||
|---|---|---|---|
|
#18+
Друзья, спасибо за уточнения. Попробую их снять некоторые возражения/уточнения/сомнения. Насчет Access - это просто данность, думаю, и в рамках этой программы задачу решить можно. DeColo®esТе же "красная" и "красивая". Синоним слова "красный" - "бордовый". Вряд ли девица обрадуется, если назвать ее "бордовой". ;) Вопрос о "красный", "красивый" и "бордовый" снимается просто: в рамках слова выделяются значения, соответственно один ряд будет красный/красивый , другой - красный/бордовый . 474Так нужно просто для одного конкретного слова получить либо: а) список синонимов из имеющихся в словаре слов? б) список антонимов из имеющихся в словаре слов? Да. Список синонимов/антонимов для конкретного слова. Само слово в этот список входить не должно. Ennor TiegaelТак не бывает. В синонимическом ряду должна быть доминанта, от которой все строится. Кстати, как вы ее определять собираетесь - исходное слово? Доминанта в синонимическом ряду есть, и это важно при построении словаря синонимов. В моем случае степень выраженности общего признака не столь важна. Она снимается комментрариями внутри соответствующих статей и пометами. Мне важны список схожих по значению слов и список противоположных по значению слов. Cane Cat FisherЕдинственное надежное предположение, за которое я пока еще цепляюсь - если А синоним В, то В - синоним А. Если А антоним В, то В - антоним А. Да, это надежное предположение. И в этой связи вопрос о таблицах Words, Synonyms и Antonyms. Правильно я понимаю, что в последних двух таблицах для ID слова приводятся IDы соответстующих синонимов и антонимов? Если так, то данные надо многократно перепроверять на предмет добавления новых слов в соответствующие ряды. Мне кажется можно сделать так: Word, SynonymsRowId, SynonymId в таблице синонимов и Word, AntonymsRowId, AntonymId в таблице антонимов. Word - это слово. SynonymsRowId и AntonymsRowId - это номер синонимического/атонимического ряда. SynonymId и AntonymId - это номера слов в соответствующих рядах. Добавление нового слова приводит лишь к тому, что ряд расширяется (не нужно вносить данные о нем в записи уже имеющихся в базе слов). И тогда возникает вопрос, как привязать таблицы Synonyms и Antonyms к таблице Word? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2009, 14:03 |
|
||
|
Синонимы и антонимы в базе
|
|||
|---|---|---|---|
|
#18+
Persio, Тогда давайте моделировать ряды. Код: plaintext 1. 2. Код: plaintext 1. 2. С Код: plaintext 1. 2. 3. аналогично ряды антоннимов. Пример заполнения: Words1 Красный2 Красивый3 Привлекательный4 Советский5 Социалистический6 Большевистский SynonymRows1 По красоте2 По политическому признаку SynonymRowWords:SynonymRow_ID Word_ID_Main Word_ID_Synonym выборка1 1 2 Красный=Красивый (По красоте)1 1 3 Красный=Привлекательный (По красоте)2 1 4 Красный=Советский (По политическому признаку)2 1 5 Красный=Социалистический (По политическому признаку)2 1 6 Красный=Большевистский (По политическому признаку) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2009, 14:50 |
|
||
|
Синонимы и антонимы в базе
|
|||
|---|---|---|---|
|
#18+
Давайте моделировать, да. Мысль с тремя таблицами мне нравится, более чем. Только одно в ней смущает: Word_ID_Main и Word_ID_Synonym - по сути перевеннутые данные содержат. В Вашем примере Красивый, Привлекательный, Советский, Социалистический, Большевистский будут иметь для колонки Word_ID_Main номера от 2 до 6 (соответственно), а Word_ID_Synonym будет равен 1. Или же не будет дублирования? Тогда вопрос, как быть с поиском синонимов для всех слов кроме красный . Как результат запроса на выборку мне третья таблица нравится. Думаю, так оно и должно быть. Но вот до конца склеить не могу :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2009, 15:42 |
|
||
|
Синонимы и антонимы в базе
|
|||
|---|---|---|---|
|
#18+
Persio, Мы выяснили ранее, что единственное твердое допущение в отношении синонимов = это симметричность пар: если Красный=Большевистский, то Большевистский=Красный (По политическому признаку). Но если Красный = Советский и Красный=Социалистический, то Советский вовсе не синоним Социалистическому - это разные вещи - орган правления (советы народных депутатов) и общественный строй (социализм). То есть отношение синонимичности нетранзитивно. Это и выражает структура таблиц. Для поиска синонимов любому слову по этим таблицам нужно использовать условие WHERE SynonymRowWords.Word_ID_Main = %Word_ID% OR SynonymRowWords.Word_ID_Synonym = %Word_ID%, то есть запись в SynonymRowWords представляет собой симметричную пару, и все равно, где упомянуто слово - в Main или Synonym. Для слова "Красный" таким запросом будут найдены все перечисленные слова, а для слова "Социалистический" - только "Красный". Такое поведение ожидалось? Давайте типовые запросы, которые нужно получить, будем смотреть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.05.2009, 18:04 |
|
||
|
Синонимы и антонимы в базе
|
|||
|---|---|---|---|
|
#18+
Cane Cat Fisher, спасибо большущее за вариант построения базы. Отчасти, опираясь на нее, сделал-таки выборку синонинов. С антонимами - буду думать. Что сделал я: Во-первых, для каждого значения слова был создан маркер - %article-name% (типа красныйII2в ). Во-вторых, создана таблица синонимов, в которой каждому %synonyms% присваивался %row-id% (id синономического ряда). В-третьих, сделан запрос, в котором %article-name% из первой таблицы связывалось с %row-id% из второй. В-четвертых, сделан запрос, в котором %article-name% (из запроса) связывалось с %synonyms% из второй таблицы, при этом запрос на выборку запрещал совпадение двух полей. В итоге: привязав второй запрос к таблице значений как подтаблицу, я получил то, что хотел: списки синонимов для конкреных слов. Этот вариант представляется мне более гибким, поскольку в нем список слов в синонимическом ряду может быть бесконечно большим. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2009, 09:18 |
|
||
|
Синонимы и антонимы в базе
|
|||
|---|---|---|---|
|
#18+
А я вот вчера за ужином подумал, что даже симметричность синонимов в общем случае под сомнением. Вот, к примеру, была Красная Армия, а стала Советская Армия. Если кто-то скажет, что в годы Гражданской войны "Советская Армия" сделала то-то и то-то, это будет грубый ляп - тогда армия называлась Красной, про Советскую не слыхивали. Но в то же время, если современное войско назвать "герои-красноармейцы", то может быть это и не будет юридически точно, но как художественно-публицистическое высказывание вполне покатит. Так что "Красная=Советская" синонимично только в одну сторону. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2009, 09:37 |
|
||
|
Синонимы и антонимы в базе
|
|||
|---|---|---|---|
|
#18+
Persioдля каждого значения слова был создан маркер - %article-name% (типа красныйII2в ) Надеюсь, Вы все же не слепили слово и обозначение варианта значения в одном поле. Гибкость гибкостью, а первую нормальную форму нарушать нельзя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2009, 09:39 |
|
||
|
Синонимы и антонимы в базе
|
|||
|---|---|---|---|
|
#18+
Cane Cat Fisher, синоним не может быть однонаправленным. Синонимия - это отношения двух и более значений слов, не вектор. Т.е. когда Вы говорите о случае с "Красной Армией" и "Советской Армией" - вы говорите об одном из значений слова красный . Иными словами, связка идет не прямо слова со словом, а значения со значением. У меня эти компоненты лежат отдельно, да. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2009, 11:23 |
|
||
|
Синонимы и антонимы в базе
|
|||
|---|---|---|---|
|
#18+
Persio синоним не может быть однонаправленным Я тоже так думаю. Вместо бегемота всегда можно подставить гиппотомама, а вместо гиппотомама - бегемота. Но вот вместо Советской армии можно сказать Красная, а вместо Красной-Советская - не всегда. Впрочем, похоже, дело в том, что понятие "можно подставить вместо" не обязательно означает синонимичность. Вот, например, вместо "сосновый" всегда можно сказать "деревянный", а вместо "деревянный" - "сосновый" - нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2009, 14:31 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=35995103&tid=1543238]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
168ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
| others: | 248ms |
| total: | 516ms |

| 0 / 0 |
