Разработка модели обнаружения факта мошенничества с банковскими картами
Решение задачи классификации переводов клиентов банка на легальные и мошеннические с использованием средств машинного обучения. Обнаружение мошеннических транзакций средствами машинного обучения. Решение задачи построения ансамбля классификаторов.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | дипломная работа |
Язык | русский |
Дата добавления | 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