Нейронні мережі для задачі класифікації зображень
Застосування штучного інтелекту в області класифікації зображень. Переваги, недоліки та потенційні ризики використання штучного інтелекту. Розробка програмного продукту для тестування та запуску нейромережевої моделі, яка використовує певний набір даних.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | статья |
Язык | украинский |
Дата добавления | 08.06.2024 |
Размер файла | 1,5 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.Allbest.Ru/
Миколаївський національний аграрний університет
Кафедра економічної кібернетики, комп'ютерних наук та інформаційних технологій
Нейронні мережі для задачі класифікації зображень
Тищенко С.І., к.п.н., доцент
Кузнецов Є.С., асистент
м. Миколаїв
Анотація
У статті розглянуто поняття та риси класифікації зображень за допомогою нейронних мереж. Досліджено проблемні питання щодо вибору набору даних, в якому б певна кількість зображень класифікувалася за певними параметрами. Наведено розв'язання двох задач: задачу класифікації зображень за допомогою нейронних мереж та навчання моделі з використанням набору даних.
Задача класифікації зображень за допомогою нейронних мереж розв'язується на основі задачі введення зображення в нейронну мережу та присвоєння будь-якої мітки для цього зображення. Навчання моделі з використанням набору даних розв'язується на основі самого набору даних та ефективності навчання моделі з урахуванням часу.
Встановлено, що на прикладі задачі класифікації зображень за допомогою нейронних мереж розглядається весь процес класифікування зображень за певними параметрами та ознаками в сучасному світі, досліджуються особливості кожного зображення, будується структура створення та навчання моделі, яка використовує певний набір даних, визначаються кількість зображень з набору даних, які будуть класифікуватися за певними критеріями, уточнюючи часові параметри для навчання моделі, а також інші параметри та критерії для візуалізації, завдяки котрій можна буде дізнатися про результати класифікування зображень, а також навчання моделі, яка використовувала б набір даних і визначала її ефективність. Доведено, що ефективність нейронної мережі залежить від розміру та якості набору даних, на яких вона навчалася.
Досліджено переваги функціональних можливостей та вимог до можливостей інтеграції у програмний застосунок, де визначено одними з найкращих рішення TensorFlow та Keras, і відповідно мову програмування Python. Ключові слова: штучний інтелект; нейронні мережі; навчання моделі; класифікація зображень; машинний інтелект.
Abstract
Neural networks for the problem of image classification
Tyshchenko S.I., PhD, Ass. Professor; Kuznetsov E.S., Assistant of the Department of Economic Cybernetics, Computer Sciences and Information Technologies, Mykolayiv National Agrarian University, Mykolayiv
The article discusses the concepts and features of image classification using neural networks. Problematic questions regarding the selection of a data set, in which a certain number of images would be classified according to certain parameters, were investigated. The solution of two problems is presented: the problem of image classification using neural networks and model training using a data set.
The problem of image classification using neural networks is solved based on the problem of entering an image into the neural network and assigning any label to this image. Training a model using a data set is solved based on the data set itself and the effectiveness of model training over time.
It has been established that the entire process of image classification by certain parameters and features in the modern world is considered using the example of the task of image classification using neural networks. The peculiarities of each image are studied, the structure of creating and training a model that uses a certain data set is built, the number of images from the data set that will be classified according to certain criteria is determined, specifying the time parameters for training the model, as well as other parameters and criteria for visualization, thanks to which you can learn about the results of image classification, as well as training a model that would use a data set and determine its effectiveness. It has been proven that the effectiveness of a neural network depends on the size and quality of the data set on which it was trained. The advantages of functional capabilities and requirements for integration capabilities in a software application have been studied, where TensorFlow and Keras, and accordingly the Python programming language, have been identified as some of the best solutions.
Keywords: artificial intelligence; neural networks; model training; classification of images; machine intelligence.
Постановка проблеми
Задача розпізнавання зображень полягає в тому, щоб ввести зображення в нейронну мережу і призначити йому певну мітку [1]. Мітка, яку генерує мережа, відповідає класу, визначеному заздалегідь. Можливе призначення декількох або лише одного класу. Якщо призначений лише один клас, це зазвичай називають “розпізнаванням”, тоді як розпізнавання декількох класів зазвичай відносять до “класифікації”. Підкатегорія класифікації зображень - це визначення об'єктів, коли окремі екземпляри об'єктів ідентифікуються як належні до певного класу, наприклад, тварин, автомобілів або людей. Для виконання розпізнавання або класифікації зображень, нейронна мережа має витягнути характеристики. Характеристики - це елементи даних, які представляють найбільший інтерес і які будуть передаватися через нейромережу.
У даному контексті розпізнавання зображень включає аналіз груп пікселів, таких як лінії та точки, для виявлення шаблонів.
Аналіз останніх досліджень і публікацій. Важливі аспекти використання нейронних мереж висвітлюються такими ученими як С. Гадетська, С. Гороховатський, О. Летичевський А. Мальцев. Однак процеси використання нейронних мереж для задачі класифікації зображень поки що не систематизовані і розроблені не в повному обсязі.
Мета статті - виокремлення напрямків застосування штучного інтелекту в області класифікації зображень; дослідження переваг, недоліків та потенційних ризиків використання штучного інтелекту.
Виклад основного матеріалу
Виявлення або вилучення ознак - це процес витягування відповідних ознак з вхідного зображення для подальшого аналізу. Багато зображень містять анотації або метадані, які допомагають нейронній мережі виявляти відповідні ознаки. Перший шар нейронної мережі обробляє всі пікселі зображення. Після того, як всі дані введено в мережу, до зображення застосовуються різноманітні фільтри, які допомагають зрозуміти різні частини зображення. Це створює "карти ознак" через процес витягування ознак. Цей процес витягування ознак з зображення відбувається за допомогою "згорткового шару", і згортка просто формує представлення частини зображення.
Ця концепція згортки лежить в основі "Згорткової нейронної мережі" (Convolutional Neural Network) - це тип нейронної мережі, який часто використовується для класифікації та розпізнавання зображень. Розмір фільтра визначає, скільки пікселів переглядається одночасно. Зазвичай CNN використовує фільтр розміром 3, який охоплює висоту і ширину, тому він перевіряє область 3 x 3 пікселів. Хоча розмір фільтра враховує висоту і ширину, глибина фільтра також важлива. Цифрові зображення представлені у вигляді висоти, ширини та значення RGB, яке визначає колір пікселя, тому "глибина", яку слід відслідкувати, - це кількість кольорових каналів у зображенні. Зазвичай для CNN використовується крок розміром 2. Всі ці розрахунки призводять до створення карти ознак. Цей процес зазвичай виконується з декількома фільтрами, що допомагають зберегти складність зображення.
Штучні нейронні мережі (ШНМ) представляють собою математичну модель, що імітує функціонування біологічних нейромереж, які є мережами нервових клітин. В штучних мережах, подібно до їх біологічних аналогів, основними елементами є нейрони, які з'єднуються між собою і формують шари. Кількість цих шарів може варіюватися в залежності від складності нейромережі та її цілей. На думку авторів [3,4,6], найбільш поширеним завданням для нейромереж є розпізнавання візуальних образів. Нині створюються мережі, в яких машини можуть успішно розпізнавати символи на папері та банківських картках, підписи на офіційних документах, прогнозування, розпізнавання образів, машинний переклад, розпізнавання аудіо, детектування об'єктів і т.д. Зазвичай нейронну мережу, в якій кожен вузол є входом і виходом, формуючи прихований шар нейронів, і кожен нейрон наступного шару з'єднаний з усіма нейронами попереднього, називають повнозв'язною. Входи подаються через ваги, які налаштовуються в процесі навчання і не змінюються після цього.
Нейромережа згорткового типу має спеціальну структуру, яка оптимально підходить для розпізнавання образів. Основна концепція цієї нейромережі полягає у чергуванні шарів згорток і підсемплінгу, забезпечуючи односпрямовану структуру. Назва такої нейромережі походить від операції згортки, де кожен фрагмент зображення множиться на ядро згортки поелементно, а результат сумується та записується в аналогічну позицію вихідного зображення. Такий підхід забезпечує незмінність в розпізнаванні щодо зсуву об'єкта, розширюючи область огляду з кожним шаром згортки та виявляючи все більші структури та патерни в зображенні. Робота з зображеннями має велике значення у сфері застосування технологій глибокого навчання. Всі світлини з усіх камер світу утворюють велику бібліотеку неструктурованих даних. Використовуючи нейромережі, машинне навчання та штучний інтелект, ці дані можуть бути структуровані та використовані для вирішення різноманітних завдань: від повсякденних до соціальних, професійних та державних, включаючи заходи безпеки.
У всіх системах відеоспостереження ключовою складовою є аналіз, першим етапом якого є розпізнавання зображень (об'єктів). Потім штучний інтелект, використовуючи машинне навчання, визначає дії та класифікує їх. Для розпізнавання зображень нейронна мережа повинна бути попередньо навчена на відповідних даних. Набір даних можна отримати з відкритих джерел або зібрати самостійно. Практично це означає, що збільшення кількості прихованих шарів у нейронній мережі зазвичай підвищує точність розпізнавання зображень до певної межі. Як це здійснюється? Зображення розбивається на малі фрагменти, кожен з яких представляється вхідним нейроном. Сигнали передаються від одного шару до іншого через синапси. Під час цього процесу сотні тисяч нейронів з мільйонами параметрів порівнюють отримані сигнали з вже обробленими даними.
Використання нейронних мереж для розпізнавання зображень є, безсумнівно, одним з найпоширеніших способів їх застосування. Незалежно від конкретних завдань, мережа працює за етапами. Вона може розпізнавати різноманітні об'єкти, такі як зображення, рукописний або друкований текст, звуки та інше. Під час навчання мережі надаються різноманітні приклади з відповідними мітками для категоризації. В якості прикладів використовуються вектори ознак, а збірка ознак повинна чітко визначити клас об'єктів, з якими працює мережа. Важливо навчити мережу визначати достатню кількість та значення ознак для досягнення високої точності на нових зображеннях, уникнувши перенавчання. Після успішного навчання мережа повинна впевнено впізнавати образи, з якими вона зустрічалася під час процесу навчання. Важливо також, щоб вихідні дані для нейромережі були однозначними та безсуперечними, щоб уникнути ситуацій, коли мережа надає високі ймовірності належності одного об'єкта до декількох класів.
В зазначений ряд входять різноманітні архітектури штучних нейронних мереж, у тому числі нейромереж для розпізнавання зображень [5]:
1. Багатошаровий перцептрон
2. Згорткова
3. Рекурсивна
4. Рекурентна
5. Перцептрон Розенблатта
6. Мережа Джордана
7. Мережа Елмана
8. Мережа Хеммінгу
9. Мережа Ворда
10. Мережа Хопфілда
Використання нейронних мереж для ідентифікації зображень вимагає спеціалізованого процесу навчання, який зосереджений на регулюванні параметрів НМ. Існує декілька методів навчання нейромереж. Під час навчання НМ для ідентифікації зображень за допомогою вчителя використовується вибірка з вірними відповідями на питання про те, що зображено на картинці - це мітки класів. Нейромережі отримують ці зображення на вхід, після чого розраховується помилка, яка порівнює вихідні значення з реальними мітками класів. В залежності від ступеня та характеру розбіжності прогнозу НМ, її ваги коригуються, відповіді НМ налаштовуються на реальні відповіді, доки помилка не стане мінімальною.
У процесі навчання без вчителя, нейронна мережа стикається з викликом виявити невідомі відповіді, оскільки навчальна вибірка не містить міток класів. Нейромережа сама намагається виявити патерни в даних, витягуючи корисні характеристики та аналізуючи їх. Навчання з підкріпленням працює за принципом отримання зворотного зв'язку - винагороди за певні дії.
Нейронні мережі відкривають широкі можливості застосування, не обмежуючись лише розпізнаванням зображень та текстів, але й проникаючи в багато інших областей. Завдяки здатності до навчання, НМ можуть бути оптимізовані для максимізації їх функціональності. Дослідження в області НМ є одним з найбільш перспективних напрямків сьогодні, оскільки в майбутньому вони будуть широко використовуватися в різних галузях науки та техніки, значно полегшуючи роботу і навіть забезпечуючи безпеку людей.
Машинне навчання - це інструмент, який дозволяє витягувати знання, закономірності та шаблони з даних. Основна мета машинного навчання полягає в автоматизації та оптимізації вирішення складних рутинних завдань у найрізноманітніших областях. Сьогодні існує декілька нейромережевих технологій, які можна обрати для вирішення завдання, але перед цим необхідно як слід врахувати особливості, плюси та мінуси всіх платформ машинного навчання (табл. 1).
Таблиця 1
Наявні нейромережеві технології
Платформа або бібліотека |
Мови |
Переваги |
Недоліки |
|
TensorFlow |
Python, C++ |
Гнучка архітектура, яка може бути розгорнута для роботи CPU або GPU; |
Складність у розумінні роботи системи |
|
Keras |
Python, C++ |
Простий у використанні з високою швидкістю розгортання |
Проблеми в низькорівневому API; Потрібні покращення деяких особливостей |
Джерело: складено автором на основі [7,8]
Враховуючи функціональні можливості та вимоги до можливості інтеграції у програмний застосунок найкращими рішеннями є TensorFlow та Keras. Звертаючи увагу на завдання, сформовані вимоги до функціоналу програмного забезпечення і бібліотеки для машинного навчання оптимальними інструментами розробки, на нашу думку, є бібліотеки TensorFlow та Keras і відповідно мова програмування Python.
У даному дослідженні програмний застосунок для задачі класифікації зображень за допомогою нейронних мереж був написаний на мові програмування Python в програмному компіляторі PyCharm Community Edition. Розробка застосунку була розпочата з імпорту бібліотеки TensorFlow [7] та інших бібліотек, які будуть використовуватись для навчання нейромережевої моделі для задачі класифікації зображень. Нижче наведений фрагмент коду, який відповідає за імпорт бібліотек:
import matplotlib.pyplot as plt import numpy as np import PIL
import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import layers
from tensorflow.keras.models import Sequential
Після того, як потрібні бібліотеки були імпортовані, виникає необхідність завантажити набір даних, який буде використовуватися навчальною моделлю для класифікації зображень.
Рис. 1. Завантаження набору даних
Коли набір даних завантажений, його треба налаштувати та створити певні параметри для завантажувача, щоб ще раз завантажити набір даних за допомогою бібліотеки Keras.
Рис. 2. Результат повторного завантаження набору даних
Після повторного завантаження набору даних за допомогою бібліотеки Keras, його необхідно налаштувати для підвищення продуктивності. Фрагмент коду налаштування набору даних наведений нижче:
AUTOTUNE = tf.dataAUTOTUNE
trainds = train_ds.cacheQ.shuffle(1000).prefetch(buffer_size=AUTOTUNE)
valds = val_ds.cache().prefetch(buffer_size=AUTOTUNE)
Після налаштування набору даних, їх потрібно стандартизувати для того, щоб вхідні значення були невеликими. Фрагмент коду нижче:
normalization_layer = layers.Rescaling(1./255)
normalized_ds = train_ds.map(lambda x, y: (normalization_layer(x), y))
image_batch, labels_batch = next(iter(normalized_ds)) first_image =
image_batch [0]
# Notice the pixel values are now in '[0,1]'. print(np.min(first_image),
np.max(first_image))
Створення моделі полягає в тому, що послідовна модель складається з трьох блоків згортки (tf.keras.layers.Conv2D) з максимальним пулінговим шаром (tf.keras.layers.MaxPooling2D) у кожному з них. Там повністю підключений шар (tf.keras.layers.Dense) з 128 одиниць на верхній частині його, яка активується за допомогою функції активації РЕЛУ ('relu'). Фрагмент коду створення навчальної моделі для класифікації зображень наведений нижче:
model = Sequential([
layers.Rescaling(1./255, input_shape=(img_height, img_width, 3)),
layers.Conv2D(16, 3, padding='same', activation='relu'),
layers.MaxPooling2D(),
layers.Conv2D(32, 3, padding='same', activation='relu'),
layers.MaxPooling2D(),
layers.Conv2D(64, 3, padding='same', activation='relu'),
layers.MaxPooling2D(),
layers.Flatten(),
layers.Dense(128, activation='relu'), layers. Dense(numclasses)
])
Дізнатися про всі шари мережі за допомогою моделі можна за допомогою методу Model.summary:
Нижче запропонований результат моделі в першому етапі навчання (рис. 4)
програмний штучний інтелект нейромережевий зображення
Рис. 3. Короткий опис моделі
Рис. 4. Результат моделі в першому етапі навчання
Після того, як був отриманий короткий опис моделі, починається перший етап навчання моделі для класифікації зображень. Код для першого етапу навчання моделі має вигляд:
epochs=10 history = model.fit( trainds,
validation_data=val_ds,
epochs=epochs
)
На рисунку 5 представлено результат першого етапу навчання моделі
Після отримання результату першого етапу навчання моделі для класифікації зображень, необхідно створити графіки втрат та точності на наборах для навчання та перевірки для першого етапу навчання моделі.
Рис. 5. Результат першого етапу навчання моделі
Рис. 6. Графіки втрат та точності на наборах для навчання та перевірки для першого етапу навчання моделі
Графіки показують, що точність навчання і точність перевірки невеликі, і модель досягла близько 60% точності на наборі перевірки. На графіках вище точність навчання лінійно збільшується з часом, тоді як точність перевірки у процесі навчання становить близько 60%. Крім того, різниця в точності між підготовкою та точністю перевірки існує. Коли є невелика кількість навчальних прикладів, модель іноді вчиться на шумі або небажаних деталях навчальних прикладів - настільки, що це негативно впливає на продуктивність моделі на нових прикладах. Це явище відоме як переоснащення. Це означає, що моделі буде складно узагальнити на новому наборі. Тому, щоб покращити точність перевірки, необхідно підвищити кількість епох, а також кількість даних в другому етапі навчання моделі для того, щоб найкраще розкрити модель більшій кількості аспектів даних і краще узагальнити. Збільшення даних здійснюється за допомогою використання наступних Keras Preprocessing шарів: tf.keras.layers.RandomFlip, tf.keras.lay ers.RandomRotation та tf.keras.layers.RandomZoom.
Код для збільшення даних має вигляд:
dataaugmentation = keras.Sequential([
layers.RandomFlip("horizontal",
inputshape=(imgheight, img_width,
3)),
layers.RandomRotation(0.1), layers.RandomZoom(0.1),
При повторному створенні моделі в другому етапі навчання моделі майже теж саме, але кількість епох збільшена з 10 на 15, а також повторна модель була створена за допомогою tf.keras.layers.Dropout. Далі розглянемо модель «sequential_2»:
Рис. 7. Короткий опис моделі в другому етапі навчання моделі
Нижче запропонований результат моделі в другому етапі навчання (рис. 8)
Рис. 8. Результат моделі в другому етапі навчання
Після отримання короткого опису моделі, доцільно почати другий етап навчання моделі для класифікації зображень. Код для другого етапу навчання моделі описується так:
epochs = 15 history = model.fit( trainds,
validation_data=val_ds,
epochs=epochs
)
На рисунку 9 приведено результат другого етапу навчання моделі.
Рис. 9. Результат другого етапу навчання моделі
Після збільшення даних і повторного створення моделі за допомогою tf.keras.layers.Dropout, стало менше перенавчання, ніж раніше, і навчання та точність перевірки будуть максимально вирівняні.
Рис. 10. Графіки втрат та точності на наборах для навчання та перевірки для другого етапу навчання моделі
Фінальним кроком, після створення і навчання нейромережевої моделі, є перевірка роботи програмного продукту шляхом тестування та запуском моделі для класифікації зображень. Щоб побачити результат тестування моделі для класифікації, необхідно візуалізувати дані з набору даних, які використовуються моделлю для класифікування зображень. Код для візуалізування результату класифікації зображень має вигляд:
plt.figure(figsize=(10, 10)) for images, labels in train_ds.take(1):
for i in range(9): ax = plt.subplot(3, 3, i + 1) plt.imshow
(images[i].numpy().astype ("uint8"))
plt. title(class_names[labels[i]]) plt.axis("off)
for image batch, labels_batch in train ds:
print(imagebatch.shape) print(labelsbatch.shape) break
Після прописання коду для візуалізування результату класифікації зображень, надається результат класифікації зображень (рис. 11)
Рис. 11 Результат класифікації зображень
Також необхідно візуалізація вигляду кількох доповнених прикладів, застосовуючи збільшення даних одному й тому ж зображенню кілька разів під час другого етапу навчання моделі. Код для візуалізування результату класифікації зображень під час другого етапу навчання моделі наведений нижче:
plt.figurefigsize=(10, 10))
for images, _ in train_ds.take(1): for i in range(9):
augmentedimages = dataaugmentation(images) ax = plt.subplot(3, 3, i + 1)
plt.imshow (augmented_images[0].numpy() .astype ("uint8")) plt.axis("off)
Після прописання коду для візуалізування результату класифікації зображень під час другого етапу навчання моделі, надається результат класифікації зображень під час даного етапу (рис. 12)
Рис. 12 Результат класифікації зображень під час другого етапу навчання моделі
Слід зазначити, що сучасний розвиток нейромережевих технологій сприяє появі різноманітних типів штучних нейромереж, які використовуються в різних сферах, які пов'язані не тільки з комп'ютерними та інформаційними технологіями, але із іншими, такі як продовольча, медична, авіаційна, цивільна, а також в таких областях, як робототехніка, обробка даних тощо.
Висновки
Дослідження класифікації зображень за допомогою нейронних мереж сприяло розробці програмного продукту для тестування та запуску нейромережевої моделі, котра класифікувала зображення за певними параметрами та ознаками, при цьому використовуючи певний набір даних та також її навчання. У результаті проведеної роботи по розробці програмного продукту, були вирішені такі задачі, як класифікація зображень за допомогою нейронних мереж; навчання моделі з використанням набору даних.
Література
1. Гадетська С., Гороховатський С. Застосування статистичних мір релевантності для векторних структурних описів об'єктів у задачі класифікації зображень. Системи управління, навігації та зв'язку. 2018. Т. 4, №50. С. 62-68.
2. Дослідження алгоритмів навчання нейронної мережі для класифікації зображень / Р. Захарченко та ін. Problems of information technologies. 2020. №27. С. 44-53.
3. Летичевський О. Методи штучного інтелекту в сучасному світі та технологіях. Світогляд. 2022. №3 (101).
4. Мальцев А. Методи машинного навчання нейронної мережі для передбачення великих зашумлених даних за допомогою сучасних мов програмування. Information technology: computer science, software engineering and cyber security. 2022. №1. С. 39-43.
5. Романюк О.Н., Пасічнюк В.А. Основні типи нейронних мереж. Молодь в науці: дослідження, проблеми, перспективи: матеріали Всеукраїнської науково-практичної інтернет-конференції студентів аспірантів та молодих науковців. Вінниця: ВНТУ, 2023.
6. Тищенко В. С. Аналіз методів навчання та інструментів нейромереж для виявлення фейків. Кібербезпека: освіта, наука, техніка. 2023. Вип. 4 (20). С. 20-34.
7. Image classification. TensorFlow Core. 2023.
References
1. Gadetska S., Horokhovatskyi S. (2018). Application of statistical measures of relevance for vector structural descriptions of objects in the problem of image classification. Control, navigation and communication systems. 2Vol. 4, No. 50. P. 62-68 [in Ukrainian].
2. Research of learning algorithms of neural network for image classification / R. Zakharchenko et al. Problems of information technologies (2020). No. 27. P. 44-53 [in Ukrainian].
3. Letychevsky O. (2022). Methods of artificial intelligence in the modern world and technologies. Svitogliad No. 3 (101). [in Ukrainian].
4. Maltsev A. (2022). Neural network machine learning methods for predicting large noisy data using modern programming languages. Information technology: computer science, software engineering and cyber security No. 1. P. 39-43. [in Ukrainian].
5. O.N. Romanyuk, V.A. Pasichniuk (2023). Basic types of neural networks. Youth in science: research, problems, prospects: materials of the All-Ukrainian scientific and practical internet conference of graduate students and young scientists. Vinnytsia: VNTU, [in Ukrainian].
6. V.S. Tyshchenko (2023). Analysis of learning methods and neural network tools for detecting fakes. Cyber security: education, science, technology. Issue 4 (20). P. 20-34.
7. Image classification. TensorFlow Core. (2023).
8. The Python Tutorial. (2023).
Размещено на Allbest.Ru
...Подобные документы
Поняття штучного інтелекту, його порівняння з природним. Коротка характеристика особливостей використання штучного інтелекту в медицині, військовій справі та комп'ютерних іграх. Проблема взаємодії носіїв універсального штучного інтелекту та суспільства.
контрольная работа [29,6 K], добавлен 07.01.2014Логічний, структурний, еволюційний та імітаційний підходи до побудови системи штучного інтелекту. Використання формально-логічних структур, що обумовлено їх алгоритмічним характером. Методи реалізації системи штучного інтелекту, інтелектуальні програми.
реферат [34,5 K], добавлен 14.04.2014Інтуїтивне розуміння поняття "інтелект". Основні проблемні середовища штучного інтелекту. Проблема неточних і неповних знань. Тест Тьюринга і фатичний діалог. Метод комп’ютерної реалізації фатичного діалогу. Принцип віртуальної семантичної сітки.
курсовая работа [560,0 K], добавлен 27.12.2007Визначення та застосування фракталів. Огляд предметної області, вибір засобів розробки програмного забезпеченя. Побудова діаграми варіантів використання, послідовності дій, класів та компонентів, математичної моделі. Тестування програмного продукту.
дипломная работа [1,9 M], добавлен 24.05.2015Характеристика об’єкта автоматизації, вимоги до системи, склад та зміст системи. Розробка функціональної схеми програмного продукту. Тестування підпрограми програмного продукту. Розробка бази даних та налаштування ECO компонент в Borland Developer Studio.
практическая работа [1,8 M], добавлен 05.06.2014Створення програмного продукту на мові Object Pascal в середовищі візуального програмування Delphi 7.0, що дозволяє отримати необхідну інформацію про штучний інтелект та переглянути відео з теми. Пошук інформації, її отримання з ресурсів мережі Інтернет.
курсовая работа [5,4 M], добавлен 24.09.2013Основні теоретичні відомості алгоритмів стиснення зображень: класи зображень та їх представлення в пам'яті, алгоритми та принципи групового кодування. Огляд та аналіз сучасних програмних засобів конвертування. Тестування, опис роботи програмного засобу.
курсовая работа [2,9 M], добавлен 15.03.2014Розробка, дослідження та реалізація методів вирішення завдань аналізу, розпізнавання і оцінювання зображень як один із провідних напрямків інформатики. Класифікація та аналіз існуючих методів розпізнавання образів, переваги та недоліки їх застосування.
статья [525,8 K], добавлен 19.09.2017Підходи до розуміння проблеми штучного інтелекту. Тест Тьюринга і інтуїтивний підхід, символьний та логічний, агентно-орієнтований і гібридній. Машинний інтелект: загальна характеристика та головні сфери застосування на сьогодні, науковий напрямок.
курсовая работа [203,1 K], добавлен 09.04.2013Розробка бази даних для меблевої фірми. Обстеження і аналіз предметної області та побудова концептуальної, логічної та фізичної моделі цієї бази даних. Використання мови програмування Visual Basic при написанні програмного коду, що обслуговує базу даних.
курсовая работа [1,4 M], добавлен 24.10.2010Растрові формати зображень tiff, bmp, pcx, gif, jpeg, png, опис растрової графічної інформації. Зручність та недоліки векторних форматів. Зберігання і обробка зображень, що складаються з ліній, або можуть бути розкладені на прості геометричні об'єкти.
контрольная работа [2,5 M], добавлен 19.09.2009Cтвopення веб-дoдатку для визначення pівня інтелекту людини (кoефіцієнта інтелекту) на мові пpoгpамування PHP з викopиcтанням JаvаScrіpt та cиcтеми кеpування базами даних MySQL. Функціoнальні частини програми: клієнтcька чаcтина і заcoби адміністрування.
дипломная работа [614,8 K], добавлен 08.10.2010Функції обліку зайнятості аудиторії. Створення програмного модуля, який виконуватиме формування електронного реєстру та презентацію вільних та зайнятих аудиторій. Призначення та область застосування програмного продукту. Опис інтерфейсу, тестування.
курсовая работа [460,5 K], добавлен 21.05.2016Використання баз даних та інформаційних систем. Поняття реляційної моделі даних. Ключові особливості мови SQL. Агрегатні функції і угрупування даних. Загальний опис бази даних. Застосування технології систем управління базами даних в мережі Інтернет.
курсовая работа [633,3 K], добавлен 11.07.2015Основні завдання синоптичної метеорології. Призначення та область застосування програмного продукту "Статистика метеоспостережень", функціональні вимоги до нього. Інформаційне забезпечення, структура, опис інтерфейсу. Тестування програмного продукту.
курсовая работа [3,6 M], добавлен 30.04.2016Області застосування методів цифрової обробки зображень. Динамічний діапазон фотоматеріалу. Графік характеристичної кривої фотоплівки. Загальне поняття про High Dynamic Range Imaging. Тональна компресія та відображення. Головні стегано-графічні методи.
контрольная работа [1,6 M], добавлен 10.04.2014Розробка структури бази даних. ER-моделі предметної області. Проектування нормалізованих відношень. Розробка форм, запитів, звітів бази даних "Автосалон". Тестування роботи бази даних. Демонстрація коректної роботи форми "Додавання даних про покупців".
курсовая работа [4,0 M], добавлен 02.12.2014Вибір методів та засобів створення інформаційної системи для обліку і перегляду продукції на складі. Розробка моделі даних для реляційної бази даних, прикладного програмного забезпечення. Тестування програмного додатку, виявлення можливих проблем.
курсовая работа [1,1 M], добавлен 22.09.2015Опис та криптоаналіз шифрів простої заміни, перестановки та багатоалфавітних шифрів. Стандарт DЕS. Мережі Фейстеля. Криптосистеми з відкритим ключем. Структура системи RSA. Означення та принципи організації криптографічних протоколів. Кодування алфавіта.
дипломная работа [782,5 K], добавлен 29.01.2013Розкриття вмісту теорії стискування і опис класифікаційних характеристик методів компресії з втратами і без втрат. Оцінка втрат якості зображень при їх стискуванні за допомогою програм-кодеків. Розрахунок математичної моделі кодера стискання зображень.
дипломная работа [1,1 M], добавлен 25.11.2012