Главная > Документ


1.5. Стиль и технология в информатике

Информатика определяется как технология анализа имеющегося знания и синтеза нового знания на основе известного. Такая формулировка является общей и вытекающей из определения информатики. Однако, информатика является также и прежде всего деятельностью по выработке нового знания с помощью ВМ, деятельностью, которая предполагает технические и технологические процессы обработки знания. Разнообразие процессов предполагает широкий спектр стилей и конкретных технологий. Поскольку технология обработки знаний происходит из технологии программирования [Красилов86а], следует считать, что стили и технологии в информатике аналогичны известным в программировании технологиям (и стилям). Более того, технологии и стили в информатике происходят и аналогичны технологиям и стилям в любой науке и в любой деятельности, поскольку каждая наука и деятельность занимаются добычей нового знания.

Прежде всего стиль в информатике основан на рассудительности, образности в обработке знаний с применением творческих приемов, обусловленности и единстве определения информатики и ее содержания и выразительности ЕЯ. О каждом методе информатики можно говорить как стилевом, если он применяется точно и регулярно. Стиль нельзя отождествлять с методом. Только сущность применения метода формирует стиль. Стиль можно отнести к отдельному человеку, решающему задачи.

Рассудительность лежит в основе представления знаний, ЯПП является прежде всего рассудительным языком. Его командная часть незначительна, поскольку записи алгоритмов требует малого числа примитивов: соединение выражений, метки выражений и перехода по метке. Остальные конструкции (цикл или условный оператор) являются «следствием» кванторных выражений («для всякого» и «найти»). Представление знаний органически требует определенного стиля во всех работах со знаниями: поиск, отбор, ввод в память ВМ, отладка и анализ результатов логического вывода.

Образность в обработке знаний также обязательна, поскольку нет знаний вообще, они всегда связаны с реальными или воображаемыми предметами, явлениями или процессами, а представление знаний является их образом. В обработке знаний всегда участвует творческое начало. Уже поиск следующего шага в обработке требует изобретательности. С другой стороны, малейший шаг для отклонения от правила или метода обработки приводит к появлению ошибок. Разрешение такого противоречия и создает творческое начало.

Выразительность ЕЯ, который воплощен в ЯПП, переносит еще одну стилевую характеристику в информатику. Каждый ЯПП формирует стиль в общении с Интеллсист. Стиль играет большую роль в представлении знаний.

1.6. Искусство в технологии обработки знаний

Указанные в заглавии два понятия достаточно тесно переплетаются. Искусство связано с умением применять методы обработки знаний так, чтобы получить эффект от их применения. Поскольку эффективность применения того или иного метода заведомо неизвестна, то необходимо обладать некоторым искусством для выбора метода. На рынке компьютерной литературы существует множество книг, предназначенных для обучения основным алгоритмам, используемых при программировании. Они в значительной степени конкурируют между собой. Особой книгой следует считать [Кнут00] - трехтомник, который стоит вне всякой конкуренции, входит в золотой фонд мировой литературы по информатике и является настольной книгой практически для всех, кто связан с программированием. Она предназначена для обучения «искусству» программирования и предлагает массу рецептов усовершенствования программ.

Вот несколько цитат из указанного трехтомника с незначительными перефразировками. Процесс обработки знания - это очень увлекательное занятие. И дело не только в том, что оно оправдывает себя с экономической и научной точек зрения; оно может вызвать также эстетические переживания, подобные тем, которые испытывают творческие личности при написании музыки или стихов. Цель книги - дать читателю разнообразные знания и умения, из которых и состоит ремесло программиста. Этот трехтомник предназначен для всех, кто серьезно интересуется компьютерами, а не только для профессионалов. В сущности, одна из главных целей состояла в том, чтобы сделать методы программирования более доступными для специалистов из других областей. Как правило, эти специалисты получают большие преимущества, используя компьютеры, но не могут позволить себе тратить время на поиски необходимой информации, крупицы которой разбросаны по множеству технических журналов.

Всякое искусство предполагает знание самых простых методов, таких как организация циклов (повторное выполнение некоторого набора команд), а также использование подпрограмм и переменных с индексами, знание распространенных компьютерных терминов, например «память», «регистры», «биты», «плавающая точка», «переполнение», «программное обеспечение»; большинство терминов, которые не определены в тексте, поясняются в алфавитном указателе в конце каждого тома. (Этим завершено неявное «цитирование».) Выбор метода связан с выбором языка представления знаний и запросов на решение задачи.

Генетические алгоритмы. Скажем, если нам надо выбрать совокупность фиксированного числа параметров рынка, наиболее выражено влияющих на его динамику, это будет набор имен этих параметров. Об этом наборе можно говорить как о совокупности хромосом, определяющих качества индивида - данного решения поставленной задачи. Значения параметров, определяющих решение, будут тогда называться генами. Поиск оптимального решения при этом похож на эволюцию популяции индивидов, представленных их наборами хромосом. В этой эволюции действуют три механизма: во-первых, отбор сильнейших - наборов хромосом, которым соответствуют наиболее оптимальные решения; во-вторых, скрещивание - производство новых индивидов при помощи смешивания хромосомных наборов отобранных индивидов; и, в-третьих, мутации - случайные изменения генов у некоторых индивидов популяции. В результате смены поколений в конце концов вырабатывается такое решение поставленной задачи, которое уже не может быть далее улучшено.

С точки зрения нашего анализа генетические алгоритмы имеют два слабых места. Во-первых, сама постановка задачи в их терминах не дает возможности проанализировать статистическую значимость получаемого с их помощью решения и, во-вторых, эффективно сформулировать задачу, определить критерий отбора хромосом под силу только специалисту. В силу этих факторов сегодня генетические алгоритмы надо рассматривать скорее как инструмент научного исследования, чем как средство анализа данных для практического применения в бизнесе и финансах. Сейчас в России доступен только один продукт этого типа - система GeneHunter фирмы Ward Systems Group. Его стоимость - около 1000 долл.

Эволюционное программирование. Сегодня это самая молодая и наиболее перспективная ветвь data mining, реализованная, в частности, в системе PolyAnalyst. Суть метода в том, что гипотезы о виде зависимости целевой переменной от других переменных формулируются системой в виде программ на некотором внутреннем языке программирования. Если это универсальный язык, то теоретически на нем можно выразить зависимость любого вида. Процесс построения этих программ строится как эволюция в мире программ (этим метод немного похож на генетические алгоритмы). Когда система находит программу, достаточно точно выражающую искомую зависимость, она начинает вносить в нее небольшие модификации и отбирает среди построенных таким образом дочерних программ те, которые повышают точность. Таким образом система «выращивает» несколько генетических линий программ, которые конкурируют между собой в точности выражения искомой зависимости. Специальный транслирующий модуль системы PolyAnalyst переводит найденные зависимости с внутреннего языка системы на понятный пользователю язык (математические формулы, таблицы и пр.), делая их легкодоступными. Для того чтобы сделать полученные результаты еще понятнее для пользователя-нематематика, имеется богатый арсенал разнообразных средств визуализации обнаруживаемых зависимостей. Для контроля статистической значимости выводимых зависимостей применяется набор современных методов, например рандомизированное тестирование. Все эти меры приводят к тому, что PolyAnalyst показывает в задачах анализа российских финансовых рынков весьма высокие показатели.

1.7. Интеллект в информатике

Интеллект символов, текстов, программ, графики и картинок известен всем. Он определяется многими факторами, среди которых отметим семь, относя их более всего к программам и знаниям вообще. Факторы интеллекта квалифицируются как номинации, поскольку отсутствуют точные количественные оценки для подсчета конечного рейтинга интеллекта исследуемого объекта. Так обычно поступают и при оценке деятельности или выступления человека. Интеллектуальность разработанной человеком программы оценивается по следующим семи номинациям:

1. наглядность или внешняя интеллектуальность,

2. осмысленность или внутренняя интеллектуальность, оснащенность языками,

3. концептуальность или базовые основы программного комплекса,

4. использование БД, взаимосвязь данных, их целостность и защищенность,

5. наличие логического вывода или вывод ответов на запросы пользователей,

6. программная пригодность или настраиваемость и адаптируемость программы,

7. системная пригодность или общественная жизнь программного комплекса.

Каждая номинация расшифровывается чуть подробнее в т.7..Главный вывод, который можно заключить из подробных обсуждений состоит в том, что Интеллсист является наиболее интеллектуальной по сравнению с имеющимися программами ИИ. Инструментарий ИП будет непрерывно улучшаться в смысле интеллектуальности по мере развития его версий, по завершении временно замороженных работ и подработ.

Интеллект в информатике является главным атрибутом любой программы, поскольку она ориентирована на прямого пользователя. Интеллект в информатике будет развиваться по мере развития средств СВТ. Чем более работа программы приравнивается к поведению и деятельности человека, тем выше программа будет оцениваться положительно и квалифицировано по всем факторам и номинациям интеллектуальности.

Глава 2. Инженерия знаний (знаниеведение)

Прежде всего (первое) перед каждым пользователем стоят цели решения задач или заданий информатическими средствами. Каждая работа, связанная с достижением такой цели, требует знаний и умений. Второе - каждое задание может относиться к одному из классов заданий. Их классификация может быть осуществлена по различным признакам, например так, как сделано ранее. Здесь принято рассматривать семь видов знаний, семь классов задач и семь координат классификационного пространства Интеллсист. Обработкой знаний занимаются все. ВМ используется для ускорения процессов обработки знаний. Любая обработка основана на знаниях. Отсюда следует, что важным делом информатики является знание о знании. Практическая часть информатики состоит в создании автоматизированных или автоматических методов обработки знаний. Всякая деятельность в этом направлении именуется в информатике инженерией знания. В главе рассматриваются начальные основы инженерии знаний. В т.7 кратко рассматриваются проблемы знаниелогии.

Деятельность человека в информатике в помощь прямому пользователю ВМ именуется знаниеведением. Роль и деятельность знаниеведа рассматривается также в т.7. Здесь же создаются предпосылки для подхода к описанию такой деятельности.

2.1. Отладка знаний

Отладка знаний являет новую парадигму в информатике. ЭС во многом проигрывает только из-за того, что в таких системах отсутствуют средства отладки знаний. Доверие к ЭС в последнее время резко упало. Как только знаниеориентированная система приобретет свойства автоматического обнаружения ошибок в представлениях знаний, она будет популярна в применениях. Интеллсист обладает такими свойствами. Вначале рассмотрим понятие отладки знаний.

Источники ошибок бывают самые разнообразные. Причины большинства ошибок известны. Примерами причин появления ошибок могут быть такие: пропуск или подмена знаков, описки, которые чаще всего бывают случайными, теоретические «заблуждения», разрушения или искажения представлений знания, порождение новых ошибок при неправильном исправлении ранее обнаруженных ошибок.

Поиск, локализация, квалификация и исправление ошибок в представлениях знаний всегда были важной работой, она определяет процедуру отладки знаний. Обычно выделяют ошибки следующих 13 классов: 8 классов учитываются во многих программных системах (к ним относятся синтаксические, лингвистические, концептуальные, семантические, прагматические, формульные, системные и предметные), новыми для автоматизации являются 5 классов ошибок (к ним относятся смысловые, локальные противоречия, глобальные противоречия, независимость и полнота знаний). Чтобы знания были осмысливаемы, необходимо обнаруживать смысловые ошибки, вызванные нарушением правил СеГ или СиГ. Каждый человек говорит истинами независимо от того, что само высказывание может содержать модальности или отдельные ложные утверждения. Например, истинными будут высказывания: «возможно пойдет дождь» или «он говорит неправду». Важно, чтобы в контексте БЗ или запроса были обнаружены противоречия. Локальные противоречия могут оказаться менее ответственными, они могут «подчищать» знания, реже они могут оказываться существенными, что потребует тщательного разбора всех сведений, которые рождают локальные противоречия. Самыми существенными являются глобальные противоречия. При их наличии разрешение запроса невозможно. Поиск противоречий является сложным делом. Поэтому надо иметь аппарат автоматического обнаружения противоречий. Независимость знаний, наличие явных или завуалированных «повторов» частей текстов, должна обеспечить сокращение знакового и текстового объема знаний. Исключение избыточности в текстах не менее важно, чем обнаружение других классов ошибок, оно также должно быть автоматическим. Зависимость знаний более всего характеризует их источник. Наконец, обнаружение полноты знаний является важным для гарантии получения окончательных результатов, состоящих из новых фактов.

Смысловые ошибки во многом аналогичны синтаксическим, лингвистическим, концептуальным, семантическим, прагматическим и формульным ошибкам в совокупности. Отличия состоят в том, что правила формирования текстов знаний и запросов не фиксированы, они определяются самими записями знаний и запросов. По технике автоматизации поиска смысловых ошибок имеется значительная, а иногда и полная, аналогия с перечисленными выше ошибками. Заметим, что первые 8 классов ошибок не рассматриваются подробно в силу их большой известности. О них кратко уже упоминалось ранее. По тем же причинам не рассматриваются и смысловые ошибки. Если текст правильно передает смысл, то в нем не содержатся смысловые ошибки. Результатом такой отладки знаний будет грамматически корректный текст с точки зрения правил СеГ.

Локальные противоречия выявляются тогда, когда часть текста противоречит части знаний в базе. Простой пример с локальным противоречием выглядит так: «я пойду в кино или в театр и одновременно я пойду в кино или не пойду в театр». В результате логического вывода получится ответ: «я пойду в кино». Локальные противоречия обнаруживаются в результате внутреннего логического анализа текстов, осуществляемого в процессе логического вывода при вводе знаний или при разрешении запроса. Практические примеры могут и не содержать такие простые и явные противоречия. При этом после логического вывода объем БЗ уменьшится. Для Интеллсист уменьшение объема БЗ будет сигналом для появления локального противоречия. Результатом такой отладки знаний будет «чистый» текст.

Глобальные противоречия выявляются тогда, когда вводимый абзац полностью противоречит знаниям из БЗ. В Интеллсист такие ошибки (хотя и редко) обнаружатся в результате обнуления размера БЗ. В результате Интеллсист выдаст сообщение о том, что результат ложен. Глобальные противоречия обнаруживаются при полном логическом анализе всех текстов, осуществляемого также в процессе логического вывода при вводе знаний или при разрешении запроса. Результатом такой отладки знаний будут получены корректная БЗ или корректный запрос.

Независимость знаний обнаруживается при наличии локальных или глобальных повторов в текстах по смыслу или при непосредственном совпадении фрагментов текста. Независимость знаний есть результат логического сопоставления смыслов двух предложений или абзацев. Результатом такой отладки знаний будет «очищенный» от явных или неявных повторов текст.

Полнота знания выявляется при разрешении запросов тогда, когда результат логического вывода не состоит из фактов, а из выражение, смысл которых не всегда ясен. Полнота знания выявляется после реализации логического вывода как результат применения метода решения логического уравнения. Знание в БЗ и запросе будет полным, если в результате получаются только альтернативы совместных новых фактов. При этом надо заметить, что получение единственного решения, а не альтернативных решений, характеризует знания как абсолютно полными. Получение альтернативных решений может оцениваться положительно. Все зависит от требований к заданию. В математике высоко ценится факт единственности решения. Здесь требуется абсолютная полнота. Практические задачи могут предполагать альтернативные ответы Интеллсист, так как выбор окончательного решения зависит от человека. Знание не полно, если в ответе содержатся утверждения о фактах. Такие результаты могут быть полезными при производстве аналитических выкладок и выявлении характеристик нового понятия. Такие результаты получаются на ранних стадиях проектирования. Наконец, такие результаты полезны при автоматическом создании программ. Полнота знаний выявится после ввода исходных данных и получения итоговых результатов счета по синтезированной программе.

Таким образом, под отладкой знаний понимаются процессы поиска, локализации, квалификации и исправления ошибок 13 классов. В этих процессах сложным является квалификация ошибки в условиях их автоматического обнаружения. Чаще всего Интеллсист помогает выполнению этих процессов. Первую обнаруживаемую ошибку следует исследовать сразу после обнаружения. Если пропустить первую ошибку, то последующие могут оказаться порожденными, идентификация которых будет почти невозможной. Ошибки следует разбирать непосредственно после ее появления.

Работа по отладке знаний относится к инженерии знаний. Она является весьма ответственной и выполняться в первую очередь. Процесс отладки знаний лучше всего осуществлять по мере накопления знаний. Автоматический поиск ошибок (даже незначительных) не требует больших затрат по времени. При этом необходимо помнить крылатую оценку, что позднее обнаружение ошибки или обнаружение их на этапах сопровождения знаний стоит в несколько сот раз дороже, чем обнаружение ошибок на этапах проектирования [Боэм85].

2.2. Этапы создания объекта

Здесь увеличивается число этапов создания любого объекта по сравнению с тем, что предлагается в монографии [Боэм85]. Имеются и другие предложения по членению процесса создания некоторого изделия на этапы. Хорошим критерием правильности членения процесса на этапы является равномерность распределения относительных затрат на выполнение этапа. Примерное распределение затрат на производство программного изделия по этапам представлено в таблице. Большие затраты на сопровождение связаны с внесением изменений из-за ошибок и развитием, маркетингом, рекламой и др.

Этап работ

Доля затрат в %

Проектирование программного изделия

10

Разработка программного изделия

40

Сопровождение программного изделия

50

В связи с внедрением ВМ доли затрат переливаются из нижних рядов таблицы в верхние.

Этап является средством постановки промежуточных целей для эффективного достижения общей цели создания изделия. ИП меняет состав этапов, они должны учитывать процессы формирования исходных идей. В обработках знаний необходимо рассматривать следующие этапы: изобретание, проектирование, разработка и сопровождение. Три этапа создания программного изделия расширяются до четырех этапов создания любого изделия. Всегда уделялось мало времени и материальных затрат на выработку идей и эксперименты в связи с новыми идеями. При создании материальных объектов изобретание связано с затратами, на которые трудно пойти. Если исследования идей ведется с помощью информатики, то затраты существенно сокращаются. Этот факт установлен после реализации первых программных моделей и проведения исследований с их помощью. Остальные этапы не вызывают сомнений. В современной информатике следует рассматривать новое разделение процессов обработки знаний с другими оценками долей затрат. Оно представлено в таблице.

Этап работ

Доля затрат в %

Изобретание изделия

10

Проектирование изделия

30

Разработка изделия

30

Сопровождение изделия

30

Затраты на разработку и сопровождение БЗ сокращается существенно, поскольку БЗ подвергаются всесторонней автоматической отладке. По сравнению с программами БЗ не является кодом, который требует больших затрат на поиск ошибок и модернизацию.

Совокупность этапов образует жизненный цикл изделия или объекта. Этапы могут подразделяться на составные части. Жизненный цикл любого изделия можно представить графически в виде зависимости числа изделий от времени его полного существования. Примеры таких графиков представлены ниже. Если конечным продуктом является знание, то к процессам разработки инструментария ИП, Интеллсист, БЗ или запросов следует применять членение жизненного цикла на четыре этапа.

Имеется общий закон вещей. Он состоит в том, что число каждой вещи изменяется в соответствии с графиками. Рассмотрим систему координат, вдоль оси абсцисс которой располагается масштаб времени (например, года), а вдоль оси ординат - количество данной вещи или числа потребителей (N). Вначале данной вещи не было. Некоторой дате соответствует N=0. Начинается развитие вещи: конечно, возникает идея о вещи, строятся экспериментальный образец (N=1) и опытное производство. Затем наступает бум (если имеется спрос на эту вещь): налаживается серийное производство и общее потребление. Вот здесь для N наблюдается экспоненциальный рост (в этом месте работает первый закон информатики, см. т.7, для каждой конкретной единицы измерения объема знаний). Средняя часть графика с названием «насыщение вещью» подразумевает общее потребление, осмысление вещи (или фактическая оценка ценности вещи) и появление новых идей. Значения N стабилизируются, начиная постепенное падение (уменьшение) значения N. Наконец, последняя часть графика

Рис. Жизненный цикл изделия.

(самая продолжительная по времени) именуется «старением» и включает последовательные шаги: падение спроса, переоценку вещи и появление музейного экспоната. В зависимости от назначения вещи «хвост» графика либо спадает до нуля, либо останавливается на уровне пропорциональности численности потребителей (со спадом за пределами графика). График 1 представляет появление идеи, которая не нашла своего воплощения в жизни, график 2 является характерным для подавляющего числа объектов, а график 3 - относится к объектам, которые не могут в обозримом будущем исчезнуть из употребления (к таким объектам относятся, например, ложки, посуда, одежда). Знание не является исторической вещью, поэтому спад объема знаний может быть только при замене одного способа хранения другим. Бум для знаний приводит к новым методам сжатия представлений знания. Знание особая вещь, его объем выражается в различные годы различными единицами. Развитие средств познания способствует смене единицы измерения такой «вещи» как знание.



Скачать документ

Похожие документы:

  1. Моу «якутский городской лицей» п у б л и ч н ы й о т ч ё т 2009-2010 г г

    Документ
    ... ПОЛНЫЕ СЕМЬИ НЕПОЛНЫЕ СЕМЬИ ОПЕКУНЫ МНОГОДЕТНЫЕ СЕМЬИ 487 ... Гин А. - исследовательские методы в обучении - технология внутриклассной ... Е.Н., учитель информатики Жиркова М.М., учитель информатики Замятина А.В., ... программы ЯГЛ, в том числе и в процессах ...
  2. Образовательная программа (61)

    Основная образовательная программа
    ... (в том числе ЕГЭ ... малообеспеченных семей, для ... и проектный методы, игровые методики ... 3 3 литература 2 2 2 2 2 2 иностранный язык 3 3 3 3 3 3 математика 5 5 5 5 5 5 информатика и ИКТ 1 1 1 1 2 1 история 2 2 2 2 2 2 обществознание 1 1 1 1 1 1 география 2 ...
  3. «создание единого информационного пространства»

    Программа
    ... информатики 1 13 1 1 1 Кабинет информатики 2 13 1 1 1 Кабинет информатики 3 13 1 1 1 Кабинет информатики 4 13 1 1 1 Кабинет информатики 5 11 1 1 1 Кабинет информатики ... исследовательские методы обучения ... незащищенных семей и ... курсов, в том числе с ...
  4. За 2011-2012 учебный год (7)

    Анализ
    ... Информатика 9 82 % Ветрова Т.А. Информатика 8 Б 93 % Ветрова Т.А. Информатика 10 А 100 % Ветрова Т.А. Информатика 10 Б 92 % Ветрова Т.А. Информатика ... методы, используемые для диагностики и определения категорий учащихся и их семей ... благодаря тому ...
  5. А а красилов информатика в семи томах том 1 основы информатики

    Книга
    ... ИНФОРМАТИКА В СЕМИТОМАХТом 1. Основы информатики (Введение в информатику) Москва 1997 - 2003 ИНФОРМАТИКАТом 1. Основы информатики (Введение в информатику) Том 2. Информатика смысла (Машинная лингвистика) Том ...

Другие похожие документы..