Разработка модели обнаружения факта мошенничества с банковскими картами

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

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 18.07.2020
Размер файла 1,1 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

feature_set['days_since_last_receiver_transaction'].fillna(264, inplace=True)

feature_set['days_since_last_receiver_transaction'] = \

feature_set['days_since_last_receiver_transaction'].astype('int32')

#####

# транзакции за последнюю неделю без учета текущего дня в hits

last_week_hist = hist[ hist.date_time.iloc[-1] - hist.date_time < dt.timedelta(days=7) ].copy()

##### индикатор наличия в недельной истории отправителя/получателя транзакции в тот же день, что и перевод

last_week_hist['weekday'] = last_week_hist.date_time.apply(lambda x: x.weekday() + 1)

hits['weekday'] = hits.date_time.apply(lambda x: x.weekday() + 1)

user_weekday_transaction_counts = \

pd.DataFrame(last_week_hist.groupby(by=['user_id','weekday']).count()['event_id'])

user_weekday_transaction_counts.columns = ['count']

user_weekday_transaction_counts.reset_index(level='weekday', inplace=True)

user_weekday_transaction_counts.reset_index(level='user_id', inplace=True)

hits = hits.merge(user_weekday_transaction_counts, 'left', ['user_id', 'weekday'])

hits['has_sender_transaction_on_this_day_last_week'] = \

hits['count'].apply(lambda x: 1 if x > 0 else 0)

hits.drop(columns='count', inplace=True)

hits['has_sender_transaction_on_this_day_last_week'] = \

hits['has_sender_transaction_on_this_day_last_week'].astype('int8')

feature_set['has_sender_transaction_on_this_day_last_week'] = \

hits['has_sender_transaction_on_this_day_last_week']

user_weekday_transaction_counts.rename(columns={'user_id':'rec_user_id'}, inplace=True)

hits = hits.merge(user_weekday_transaction_counts, 'left', ['rec_user_id', 'weekday'])

hits['has_rec_transaction_on_this_day_last_week'] = hits['count'].apply(lambda x: 1 if x > 0 else 0)

hits.drop(columns='count', inplace=True)

hits['has_rec_transaction_on_this_day_last_week'] = \

hits['has_rec_transaction_on_this_day_last_week'].astype('int8')

feature_set['has_rec_transaction_on_this_day_last_week'] = \

hits['has_rec_transaction_on_this_day_last_week']

#####

##### число транзакций в истории отправителя/получателя за последнюю неделю

user_transaction_counts = pd.DataFrame(last_week_hist.groupby(by=['user_id']).count()['event_id'])

user_transaction_counts.columns = ['sender_last_week_transaction_count']

user_transaction_counts.reset_index(level='user_id', inplace=True)

hits = hits.merge(user_transaction_counts, 'left', 'user_id')

hits['sender_last_week_transaction_count'].fillna(0, inplace=True)

user_transaction_counts.rename(columns={

'sender_last_week_transaction_count':'rec_last_week_transaction_count',

'user_id':'rec_user_id'}, inplace=True)

hits = hits.merge(user_transaction_counts, 'left', 'rec_user_id')

hits['rec_last_week_transaction_count'].fillna(0, inplace=True)

hits['sender_last_week_transaction_count'] = hits['sender_last_week_transaction_count'].astype('int32')

hits['rec_last_week_transaction_count'] = hits['rec_last_week_transaction_count'].astype('int32')

feature_set['sender_last_week_transaction_count'] = hits['sender_last_week_transaction_count']

feature_set['rec_last_week_transaction_count'] = hits['rec_last_week_transaction_count']

#####

##### максимальная стоимость транзакции в истории отправителя/получателя за последнюю неделю

last_week_user_max_amounts = pd.DataFrame(last_week_hist.groupby(by='user_id').amount.max())

last_week_user_max_amounts.index.name = 'user_id'

last_week_user_max_amounts.columns = ['sender_last_week_max_amount']

last_week_user_max_amounts.reset_index(level='user_id', inplace=True)

hits = hits.merge(last_week_user_max_amounts, 'left', 'user_id')

last_week_user_max_amounts.rename(columns={

'user_id':'rec_user_id',

'sender_last_week_max_amount':'rec_last_week_max_amount'}, inplace=True)

hits = hits.merge(last_week_user_max_amounts, 'left', 'rec_user_id')

hits['sender_last_week_max_amount'].fillna(0, inplace=True)

hits['rec_last_week_max_amount'].fillna(0, inplace=True)

feature_set['sender_last_week_max_amount'] = hits['sender_last_week_max_amount']

feature_set['rec_last_week_max_amount'] = hits['rec_last_week_max_amount']

#####

##### доля транзакций в выходные дни для обеих сторон

last_week_hist['is_weekend'] = last_week_hist['weekday'].apply(lambda x: 1 if x > 5 else 0)

weekend_transactions_count = pd.DataFrame(last_week_hist.groupby(by='user_id').is_weekend.sum())

weekend_transactions_count.columns = ['last_week_weekend_transactions_count']

hits = hits.merge(weekend_transactions_count, 'left', 'user_id')

all_transactions_count = pd.DataFrame(last_week_hist.groupby(by='user_id').is_weekend.count())

all_transactions_count.columns = ['last_week_transactions_count']

hits = hits.merge(all_transactions_count, 'left', 'user_id')

weekend_transactions_count.columns = ['weekend_sender_transactions_fraction']

all_transactions_count.columns = ['weekend_sender_transactions_fraction']

weekend_transactions_fraction = weekend_transactions_count / all_transactions_count

hits = hits.merge(weekend_transactions_fraction, 'left', 'user_id')

hits['last_week_weekend_transactions_count'].fillna(0, inplace=True)

hits['last_week_transactions_count'].fillna(0, inplace=True)

hits['weekend_sender_transactions_fraction'].fillna(0, inplace=True)

feature_set['weekend_sender_transactions_fraction'] = hits['weekend_sender_transactions_fraction']

#####

##### доли различных event_type во всей истории получателя

agg_event_type = hist['event_type']

agg_event_type = agg_event_type.apply(

lambda x: x if x not in ['VIEW_STATEMENT', 'CLIENT_DEFINED', 'UPDATE_USER', 'CARD_PIN_CHANGE']

else 'OTHER')

hist['agg_event_type'] = agg_event_type

user_event_type_counts = pd.DataFrame(hist.groupby(by=['user_id', 'agg_event_type']).agg_event_type.count())

user_event_type_counts.columns = ['count']

all_user_transaction_counts = pd.DataFrame(hist.groupby(by=['user_id']).count()['event_id'])

all_user_transaction_counts.columns = ['count']

user_agg_event_type_fractions = user_event_type_counts['count'] / all_user_transaction_counts['count']

user_agg_event_type_fractions = pd.DataFrame(user_agg_event_type_fractions)

user_agg_event_type_fractions.columns = ['agg_event_type_fraction']

user_agg_event_type_fractions.reset_index(level='agg_event_type', inplace=True)

deposit_fractions = user_agg_event_type_fractions[ user_agg_event_type_fractions.agg_event_type == 'DEPOSIT' ]\

.agg_event_type_fraction

deposit_fractions = pd.DataFrame(deposit_fractions)

deposit_fractions.columns = ['rec_deposit_fraction']

payment_fractions = user_agg_event_type_fractions[ user_agg_event_type_fractions.agg_event_type == 'PAYMENT' ]\

.agg_event_type_fraction

payment_fractions = pd.DataFrame(payment_fractions)

payment_fractions.columns = ['rec_payment_fraction']

withdraw_fractions = user_agg_event_type_fractions[ user_agg_event_type_fractions.agg_event_type == 'WITHDRAW' ]\

.agg_event_type_fraction

withdraw_fractions = pd.DataFrame(withdraw_fractions)

withdraw_fractions.columns = ['rec_withdraw_fraction']

other_fractions = user_agg_event_type_fractions[ user_agg_event_type_fractions.agg_event_type == 'OTHER' ]\

.agg_event_type_fraction

other_fractions = pd.DataFrame(other_fractions)

other_fractions.columns = ['rec_other_fraction']

agg_event_type_fractions = pd.concat([deposit_fractions, payment_fractions, withdraw_fractions, other_fractions],

axis=1, sort=True)

agg_event_type_fractions.index.name = 'rec_user_id'

hits = hits.merge(agg_event_type_fractions, 'left', 'rec_user_id')

hits['rec_deposit_fraction'].fillna(0, inplace=True)

hits['rec_payment_fraction'].fillna(0, inplace=True)

hits['rec_withdraw_fraction'].fillna(0, inplace=True)

hits['rec_other_fraction'].fillna(0, inplace=True)

feature_set['rec_deposit_fraction'] = hits['rec_deposit_fraction']

feature_set['rec_payment_fraction'] = hits['rec_payment_fraction']

feature_set['rec_withdraw_fraction'] = hits['rec_withdraw_fraction']

feature_set['rec_other_fraction'] = hits['rec_other_fraction']

#####

##### доли транзакций различных mcc_group для отправителя для всей истории

user_mcc_group_counts = pd.DataFrame(hist.groupby(by=['user_id','mcc_group']).count()['event_id'])

user_mcc_group_counts.columns = ['count']

user_mcc_group_fractions = pd.DataFrame(user_mcc_group_counts['count'] / all_user_transaction_counts['count'])

user_mcc_group_fractions.columns = ['mcc_group_fraction']

user_mcc_group_fractions.reset_index(level='mcc_group', inplace=True)

user_mcc_group_fractions.reset_index(level='user_id', inplace=True)

zca_fractions = user_mcc_group_fractions[ user_mcc_group_fractions.mcc_group.isin(['Z','C','A']) ]\

.groupby(by='user_id').sum()

zca_fractions.columns = ['sender_zca_fraction']

uf_fractions = user_mcc_group_fractions[ user_mcc_group_fractions.mcc_group.isin(['U','F']) ]\

.groupby(by='user_id').sum()

uf_fractions.columns = ['sender_uf_fraction']

ones = user_mcc_group_fractions.groupby(by='user_id').sum()

ones.columns = ['one']

mcc_groups_counts = pd.concat([zca_fractions, uf_fractions, ones], axis=1, sort=True)

mcc_groups_counts.drop(columns=['one'], inplace=True)

mcc_groups_counts.index.name = 'user_id'

hits = hits.merge(mcc_groups_counts, 'left', 'user_id')

hits['sender_zca_fraction'].fillna(0, inplace=True)

hits['sender_uf_fraction'].fillna(0, inplace=True)

feature_set['sender_zca_fraction'] = hits['sender_zca_fraction']

feature_set['sender_uf_fraction'] = hits['sender_uf_fraction']

#####

##### доли транзакций различных atm_mcc для отправителя для всей истории

user_atm_mcc_counts = pd.DataFrame(hist.groupby(by=['user_id','atm_mcc']).count()['event_id'])

user_atm_mcc_counts.columns = ['count']

user_atm_mcc_fractions = pd.DataFrame(user_atm_mcc_counts['count'] / all_user_transaction_counts['count'])

user_atm_mcc_fractions.columns = ['atm_mcc_fraction']

user_atm_mcc_fractions.reset_index(level='atm_mcc', inplace=True)

user_atm_mcc_fractions.reset_index(level='user_id', inplace=True)

frequent_genuine_transaction_mcc_fractions = pd.DataFrame(

user_atm_mcc_fractions[ user_atm_mcc_fractions.atm_mcc.isin([4814, 4829, 5411, 5814, 5499]) ].

groupby(by='user_id').sum()['atm_mcc_fraction']

)

frequent_genuine_transaction_mcc_fractions.columns = ['frequent_genuine_sender_transaction_mcc_fraction']

frequent_fraud_transaction_mcc_fractions = pd.DataFrame(

user_atm_mcc_fractions[ user_atm_mcc_fractions.atm_mcc.isin([6536, 7512, 6011, 6010, 6012]) ].

groupby(by='user_id').sum()['atm_mcc_fraction']

)

frequent_fraud_transaction_mcc_fractions.columns = ['frequent_fraud_sender_transaction_mcc_fraction']

frequent_atm_mcc_counts = pd.concat([frequent_genuine_transaction_mcc_fractions,

frequent_fraud_transaction_mcc_fractions,

ones], axis=1, sort=True)

frequent_atm_mcc_counts['frequent_genuine_sender_transaction_mcc_fraction'].fillna(0, inplace=True)

frequent_atm_mcc_counts['frequent_fraud_sender_transaction_mcc_fraction'].fillna(0, inplace=True)

frequent_atm_mcc_counts.drop(columns=['one'], inplace=True)

frequent_atm_mcc_counts.index.name = 'user_id'

hits = hits.merge(frequent_atm_mcc_counts, 'left', 'user_id')

hits['frequent_genuine_sender_transaction_mcc_fraction'].fillna(0, inplace=True)

hits['frequent_fraud_sender_transaction_mcc_fraction'].fillna(0, inplace=True)

feature_set['frequent_genuine_sender_transaction_mcc_fraction'] =\

hits['frequent_genuine_sender_transaction_mcc_fraction']

feature_set['frequent_fraud_sender_transaction_mcc_fraction'] =\

hits['frequent_fraud_sender_transaction_mcc_fraction']

#####

##### индикатор наличия в истории получателя транзакции с MCC из тех,

##### которые чаще всего встречаются в истории отправителя легального перевода

user_atm_mcc_counts.reset_index(level='atm_mcc', inplace=True)

user_atm_mcc_counts.reset_index(level='user_id', inplace=True)

user_atm_mcc_counts.drop(columns='count', inplace=True)

users_with_genuine_only_atm_mcc = user_atm_mcc_counts[ user_atm_mcc_counts.atm_mcc.isin(

[4111, 4511, 4812, 5200, 5211, 5311, 5651, 5661, 5691, 5732, 5816,

5941, 5945, 5995, 7311, 7832, 8999, 9311, 9399]) ].user_id.unique()

feature_set['if_rec_user_has_genuine_atm_mcc'] = hits['rec_user_id'].apply(

lambda x: 1 if x in users_with_genuine_only_atm_mcc else 0

).astype('int8')

#####

##### индикатор наличия в истории получателя транзакции с atm_group == F, U

users_with_f_mcc_group = hist[ hist.mcc_group.isin(['F']) ].user_id.unique()

users_with_u_mcc_group = hist[ hist.mcc_group.isin(['U']) ].user_id.unique()

feature_set['if_rec_user_has_f_mcc_group'] = hits['rec_user_id'].apply(

lambda x: 1 if x in users_with_f_mcc_group else 0

).astype('int8')

feature_set['if_rec_user_has_u_mcc_group'] = hits['rec_user_id'].apply(

lambda x: 1 if x in users_with_u_mcc_group else 0

).astype('int8')

feature_set['if_rec_user_has_f_and_u_mcc_groups'] = hits['rec_user_id'].apply(

lambda x: 1 if (x in users_with_f_mcc_group and x in users_with_u_mcc_group) else 0

).astype('int8')

#####

##### индикатор наличия в истории отправителя транзакции с atm_group == Z

users_with_z_mcc_group = hist[ hist.mcc_group.isin(['Z']) ].user_id.unique()

feature_set['if_user_has_z_mcc_group'] = hits['user_id'].apply(

lambda x: 1 if x in users_with_z_mcc_group else 0

).astype('int8')

#####

##### индикатор наличия в истории отправителя/получателя транзакции через SBOL

users_with_sbol_transactions = hist[ hist.atm_merchant_name == 'SBOL' ].user_id.unique()

feature_set['if_user_has_sbol'] = hits.user_id.apply(

lambda x: 1 if x in users_with_sbol_transactions else 0

).astype('int8')

feature_set['if_rec_user_has_sbol'] = hits.rec_user_id.apply(

lambda x: 1 if x in users_with_sbol_transactions else 0

).astype('int8')

#####

##### индикатор наличия в истории отправителя/получателя транзакции,

##### `atm_merchant_name` которой содержит слово `spravka`

hist['atm_merchant_name'].fillna('', inplace=True)

if_spravka = hist.atm_merchant_name.apply(lambda x: False if x.find('spravka') == -1 else True)

users_with_spravka = hist[ if_spravka ].user_id.unique()

feature_set['if_user_has_spravka'] = hits['user_id'].apply(

lambda x: 1 if x in users_with_spravka else 0

).astype('int8')

feature_set['if_rec_user_has_spravka'] = hits['rec_user_id'].apply(

lambda x: 1 if x in users_with_spravka else 0

).astype('int8')

#####

##### индикатор наличия в истории отправителя транзакции,

##### `atm_merchant_name` которой содержит слово `TAXI` (`taxi`)

if_taxi = hist.atm_merchant_name.apply(

lambda x: False if (x.find('TAXI') == -1 and x.find('taxi') == -1) else True)

users_with_taxi = hist[ if_taxi ].user_id.unique()

feature_set['if_user_has_taxi'] = hits['user_id'].apply(

lambda x: 1 if x in users_with_taxi else 0

).astype('int8')

#####

##### индикатор наличия в истории получателя транзакции с atm_merchant_name == 'P2P ROSBANK'

if_rosbank = hist.atm_merchant_name.apply(

lambda x: True if x == 'P2P ROSBANK' else False)

users_with_rosbank = hist[ if_rosbank ].user_id.unique()

feature_set['if_rec_user_has_rosbank'] = hits['rec_user_id'].apply(

lambda x: 1 if x in users_with_rosbank else 0

).astype('int8')

#####

##### индикатор наличия в истории получателя транзакции с atm_merchant_name, содержащим 'QIWI' ('qiwi')

if_qiwi = hist.atm_merchant_name.apply(

lambda x: False if (x.find('QIWI') == -1 and x.find('qiwi') == -1) else True)

users_with_qiwi = hist[ if_qiwi ].user_id.unique()

feature_set['if_rec_user_has_qiwi'] = hits['rec_user_id'].apply(

lambda x: 1 if x in users_with_qiwi else 0

).astype('int8')

#####

##### индикатор наличия в истории отправителя/получателя транзакции по смене PIN-кода

if_card_pin_change = hist.event_type.apply(

lambda x: True if x == 'CARD_PIN_CHANGE' else False)

users_with_card_pin_change = hist[ if_card_pin_change ].user_id.unique()

if_user_has_card_pin_change = \

pd.DataFrame(hits.user_id.apply(

lambda x: True if x in users_with_card_pin_change else False).astype('int8'))

if_user_has_card_pin_change.columns = ['if_user_has_card_pin_change']

if_rec_user_has_card_pin_change = \

pd.DataFrame(hits.rec_user_id.apply(

lambda x: True if x in users_with_card_pin_change else False).astype('int8'))

if_rec_user_has_card_pin_change.columns = ['if_rec_user_has_card_pin_change']

feature_set['if_user_or_rec_user_has_card_pin_change'] = \

pd.DataFrame((if_user_has_card_pin_change['if_user_has_card_pin_change'] == 1) | \

(if_rec_user_has_card_pin_change['if_rec_user_has_card_pin_change'] == 1)).astype('int8')

#####

##### индикатор того, что история отправителя и получателя пуста

hist_users = hist.user_id.unique()

feature_set['if_history_empty'] = ((hits['user_id'].apply(

lambda x: 0 if x in hist_users else 1

)) & (hits['rec_user_id'].apply(

lambda x: 0 if x in hist_users else 1

))).astype('int8')

#####

##### сумма стоимости транзакций

sum_amounts = pd.DataFrame(round(hist.groupby(by='user_id').sum()['amount'])).reset_index(level='user_id')

sum_amounts.columns = ['user_id', 'user_sum_amount']

hits = hits.merge(sum_amounts, 'left', 'user_id')

sum_amounts.columns = ['rec_user_id', 'rec_user_sum_amount']

hits = hits.merge(sum_amounts, 'left', 'rec_user_id')

hits.fillna(0, inplace=True)

hits['rec_div_sender_sum_amount'] = hits['rec_user_sum_amount'] / hits['user_sum_amount']

hits.fillna(1, inplace=True)

feature_set['user_sum_amount'] = hits['user_sum_amount']

feature_set['rec_user_sum_amount'] = hits['rec_user_sum_amount']

#####

##### средняя стоимость транзакций

mean_amounts = pd.DataFrame(round(hist.groupby(by='user_id').mean()['amount'])).reset_index(level='user_id')

mean_amounts.columns = ['user_id', 'user_mean_amount']

hits = hits.merge(mean_amounts, 'left', 'user_id')

mean_amounts.columns = ['rec_user_id', 'rec_user_mean_amount']

hits = hits.merge(mean_amounts, 'left', 'rec_user_id')

hits.fillna(0, inplace=True)

feature_set['user_mean_amount'] = hits['user_mean_amount']

feature_set['rec_user_mean_amount'] = hits['rec_user_mean_amount']

#####

feature_set['resolution'] = hits['resolution'].apply(lambda x: 0 if x == 'G' else 1).astype('int8')

return feature_set

Размещено на Allbest.ru

...

Подобные документы

  • Методы решения задач линейного программирования: планирования производства, составления рациона, задачи о раскрое материалов и транспортной. Разработка экономико-математической модели и решение задачи с использованием компьютерного моделирования.

    курсовая работа [607,2 K], добавлен 13.03.2015

  • Виды машинного обучения, его основные задачи и методы. Подходы к классификации: логистическая регрессия, наивный байесовский классификатор, стохастический градиентный спуск, K-ближайший сосед, дерево решений, случайный лес, метод опорных векторов.

    курсовая работа [436,9 K], добавлен 14.12.2022

  • Краткий обзор решения транспортных задач. Экономическая интерпретация поставленной задачи. Разработка и описание алгоритма решения задачи. Построение математической модели. Решение задачи вручную и с помощью ЭВМ. Анализ модели на чувствительность.

    курсовая работа [844,3 K], добавлен 16.06.2011

  • Построения математической модели с целью получения максимальной прибыли предприятия, графическое решение задачи. Решение задачи с помощью надстройки SOLVER. Анализ изменений запасов ресурсов. Определение пределов изменения коэффициентов целевой функции.

    курсовая работа [2,4 M], добавлен 17.12.2014

  • Построение математической модели. Выбор, обоснование и описание метода решений прямой задачи линейного программирования симплекс-методом, с использованием симплексной таблицы. Составление и решение двойственной задачи. Анализ модели на чувствительность.

    курсовая работа [100,0 K], добавлен 31.10.2014

  • Использование классификаторов машинного обучения для анализа данных. Создание модели, которая на основании параметров, влияющих на течение диабета, выявляет показатель возвращения больного в ухудшенное состояния после оказанного лечения (реадмиссию).

    дипломная работа [625,2 K], добавлен 10.06.2017

  • Расчеты по таблице перевозок грузов между отдельными регионами. Решение задачи управления процессами перевозок в среде Pascal. Решение задачи средствами MS Excel. Исходные данные и итоги по строкам и столбцам. Решение задачи средствами MATHCAD.

    курсовая работа [1,8 M], добавлен 25.03.2015

  • Искусственные нейронные сети как одна из широко известных и используемых моделей машинного обучения. Знакомство с особенностями разработки системы распознавания изображений на основе аппарата искусственных нейронных сетей. Анализ типов машинного обучения.

    дипломная работа [1,8 M], добавлен 08.02.2017

  • Решение в среде Microsoft Excel с помощью программной модели "Поиск решения" транспортной задачи, системы нелинейных уравнений, задачи о назначениях. Составление уравнения регрессии по заданным значениям. Математические и алгоритмические модели.

    лабораторная работа [866,6 K], добавлен 23.07.2012

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

    курсовая работа [511,9 K], добавлен 20.07.2012

  • Виды алгоритмов как логико-математических средств, характеристика свойств. Корректный вывод алгоритма при решении вычислительной задачи. Механизм реализации алгоритма, его описание. Решение задачи Майхилла при помощи автоматной модели поведения стрелка.

    курсовая работа [53,6 K], добавлен 17.07.2014

  • Краткие сведения об электронных таблицах MS Excel. Решение задачи линейного программирования. Решение с помощью средств Microsoft Excel экономической оптимизационной задачи, на примере "транспортной задачи". Особенности оформления документа MS Word.

    курсовая работа [1,1 M], добавлен 27.08.2012

  • Сущность симплекс-метода. Общая характеристика задачи о смесях. Разработка основных алгоритмов решения задачи. Решение задачи в среде визуального программирования Delphi. Проектирование интерфейса пользователя. Разработка форм ввода-вывода информации.

    курсовая работа [476,6 K], добавлен 22.05.2012

  • Создание системы предобработки данных; разработка системы классификации на базе методов и алгоритмов машинного обучения, их реализация в программной системе. Предобработка информации, инструкция пользователя, система классификации, машинный эксперимент.

    дипломная работа [917,1 K], добавлен 31.01.2015

  • Історія машинного перекладу як науково-прикладного напряму. Теорія машинного перекладу. Особливості використання систем, орієнтованих на персональні комп’ютери. Напрямки розвитку та застосування машинного перекладу. Приклади систем машинного перекладу.

    реферат [21,5 K], добавлен 19.02.2011

  • Восстановление математической модели задачи нелинейного программирования. Решение уравнений прямых. Метод линеаризации: понятие, особенности применения при решении задач. Нахождение точки максимума заданной функции. Решение задачи графическим методом.

    задача [472,9 K], добавлен 01.06.2013

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

    контрольная работа [191,1 K], добавлен 05.04.2016

  • Математические основы оптимизации. Постановка задачи оптимизации. Методы оптимизации. Решение задачи классическим симплекс методом. Графический метод. Решение задач с помощью Excel. Коэффициенты целевой функции. Линейное программирование, метод, задачи.

    реферат [157,5 K], добавлен 21.08.2008

  • Общее понятие, поддержка и основные свойства транзакций. Модели плоских транзакций и их хроники. Модель вложенных транзакций: сущность и примеры. Модель многоуровневых транзакций и рабочих потоков. Классификация различных систем обработки транзакций.

    курсовая работа [1,2 M], добавлен 08.02.2011

  • Расчет начисления заработной платы по профессиям и в целом по заводу путем накопления начисленных сумм заработной платы для каждого работника. Выполнение информационной модели задачи. Описание алгоритма решения задачи. Решение задачи средствами MS Access.

    лабораторная работа [4,2 M], добавлен 27.10.2009

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.